JP5475979B2 - プロジェクト開発環境を与える方法及び装置並びにプロジェクト開発システム(プロジェクト開発環境を与える方法及び装置並びにプロジェクト開発システム) - Google Patents

プロジェクト開発環境を与える方法及び装置並びにプロジェクト開発システム(プロジェクト開発環境を与える方法及び装置並びにプロジェクト開発システム) Download PDF

Info

Publication number
JP5475979B2
JP5475979B2 JP2008283691A JP2008283691A JP5475979B2 JP 5475979 B2 JP5475979 B2 JP 5475979B2 JP 2008283691 A JP2008283691 A JP 2008283691A JP 2008283691 A JP2008283691 A JP 2008283691A JP 5475979 B2 JP5475979 B2 JP 5475979B2
Authority
JP
Japan
Prior art keywords
product
project
developer
accessed
artifact
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
JP2008283691A
Other languages
English (en)
Other versions
JP2009116875A (ja
Inventor
エイ・リュウ
シャオチャン・リー
ウェイ・チャオ
シャン・シェ
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
International Business Machines Corp
Original Assignee
International Business Machines Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by International Business Machines Corp filed Critical International Business Machines Corp
Publication of JP2009116875A publication Critical patent/JP2009116875A/ja
Application granted granted Critical
Publication of JP5475979B2 publication Critical patent/JP5475979B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/20Software design

Description

本発明は、コンピュータ技術に関し、更に具体的にいうと、ソフトウエア・プロジェクトの開発プロセス中にある開発者のためのプロジェクト開発環境を与える技術に関する。
現在、ソフトウエア・プロジェクト開発は、複数の開発者を必要とし、更に、異なる分野からの複数の開発者が協力することを必要とし、ここで各開発者はプロジェクトの一部分を開発する。
ソフトウエア・プロジェクトの今日の開発プロセスにおいては、プロジェクト管理ツール(PMT)がプロジェクトを分割するために、即ちプロジェクトを多数のサブ・プロジェクトに分割するために使用され、次いで、統合開発環境(IDE)が各サブ・プロジェクトを開発するために使用され、例えば、ソース・ファイルが生成されそして修正され、同時に、バージョン・コントロール・システム(VCS)が、開発プロセスの間に生成された製作物(artifacts)のバージョンを管理する、例えばソース・ファイルのバージョンを更新するために使用される。例えば、並行バージョン・システム(CVS),ClearCase及び構成管理バージョン・コントロール(CMVC)等の多くの製品は、例えばチェック・イン、チェック・アウトの動作等のユーザに対するバージョン管理に対して強力な能力を与える。
統合開発環境(IDE)及びバージョン・コントロール・システム(VCS)を使用することによりプロジェクトを開発及び管理するプロセスにおいて、各開発者は、開発環境のもとでプロジェクト全体から割り当てられたサブ・プロジェクトを開発する。しかしながら、この作業モードは、特別な要求を伴う幾つかのプロジェクトの開発には適応しない。例えば、次の2つの条件のもとでは問題が生じる。
(1) プロジェクトが、高い機密性を保つという要求を有し、そして複数の開発者が一緒に開発することを必要とする。この場合、プロジェクト・マネージャは、如何なる開発者といえども彼が全体のプロジェクトに係わることを望まず、従って、各開発者が、全体のプロジェクトの内容を取得し得ないようにすることを確実にすることが重要な問題である。
(2) プロジェクトが非常に複雑で、そして異なる複数の開発者相互間の作業関係も又非常に複雑である。一般的に、他の開発者の作業との関連で生じる開発環境の問題を解決するには、開発者は多くの時間を必要とする。
上述の状況に対する幾つかの可能な現存する解決策は、異なる開発環境を人手により用意して各開発者に割り当て、そして、全体のプロジェクトを多数の異なるサブ・プロジェクトに人手により分割し、次いで、各サブ・プロジェクトが独立的に開発され、そしてこれらのサブ・プロジェクト相互間に関係がないようにすることを含む。この方法は、各開発者が全体のプロジェクトの内容を確実に知り得ないようにするけれども、もしも全体のプロジェクトが修正されると、以前に分割されたサブ・プロジェクトはこの全体のプロジェクトから再び人手により分割される必要がある。この分割の修正は、ソフトウエア・プロジェクトでは非常に通常的なものであり、従って、人手による方法は、多量の人手により繰り返される努力を避けることが困難である。従ってこの方法は、時間を浪費しそして誤りを生じやすい。更に、最も重要なことは、モジュールの設計及びテストが人手による方法では互いに独立していることである。モジュールが互いに従属しているソフトウエアの場合には、或る開発者が、他の開発者により開発されているモジュールに従属している彼(彼女)のモジュールをテストするときには非常に不便である。従って、一般的な場合には、開発環境の純粋に人手による割り当ては、小さなスケールのソフトウエア・プロジェクトの開発プロセスに採用されるにすぎない。
異なる複数の開発者により開発されるサブ・プロジェクトは、VCSを使用するアクセス権利に従って、管理され得る。例えば、プロジェクトAは、サブ・プロジェクトA−1,サブ・プロジェクトA−2及びサブ・プロジェクトA−3に分割される。サブ・プロジェクトA−1を開発している開発者は、このサブ・プロジェクトを全体的に管理する(例えば、読み取り、修正しそして新たなバージョンを提出する)ことができ、このサブ・プロジェクトA−1が従属しているサブ・プロジェクトA−2を読む権利を有するが、このサブ・プロジェクトA−1が従属していないサブ・プロジェクトA−3をアクセスする権利を有しない。しかしながら、もしもサブ・プロジェクトA−1の開発者が、他の開発者により開発されているサブ・プロジェクトA−2の詳細の全てを読むことができるならば、この解決法は、サブ・プロジェクトA−2に対する機密性の要求を達成することができない。全ての開発者が、彼自身又は彼女自身が開発していないどのサブ・プロジェクトの内容をも取得できないようにし、そして機密性の要求を確実に達成するためには、彼自身又は彼女自身により開発されていないプロジェクトを読む権利を制限することが必要である。しかしながら、読むことの権利が完全に制限される場合には、コンパイル・エラーが生じる。これの理由は、或る開発者がアクセスできないが必要としているプロジェクトの内容が、アクセス管理機構に基づくこのプロジェクト開発環境では、開発者に与えられないからである。しかしながら、従属している他のサブ・プロジェクトの内容は、コンパイルの間にこの開発者が必要とする。コンパイラが従属するコードを見いだせないならば、エラーが生じる。
更に、プロジェクト分割方法は、名称が“engineering system for distributeddevelopment and development by a number of users”である米国公開特許第2006/0168556A1に開示され、ここで、全体的に独立的なサブ・プロジェクトは、全体のプロジェクトから分割され、そして特定な開発者により開発される。しかしながら、ソフトウエアの実際の開発プロセスにおいては、1つのプロジェクトが、複数の完全に独立的はサブ・プロジェクトから構成されることはできない。しかしながら、サブ・プロジェクト相互間に独立性が存在することは排除できない。
かくして、知る必要のないコードを含まない全体的な開発コードを開発者に与える方法が必要である。即ち、この方法は、開発者が取得しうるどのようなサブ・プロジェクトも、この開発者により知られてはならない内容を含まないが、正しくコンパイルされそしてテストされ得ることを確実にするべきである。
米国公開特許第2006/0168556A1
従来技術により注目されてこなかった上述の問題点を解決するために、本発明は、開発者のためのプロジェクト開発環境を与える方法、開発者のためのプロジェクト開発環境を与える装置及びプロジェクト開発システムを提供する。
本発明の一つの態様に従うと、
或る開発者によりアクセスされ得る第1の製作物及び前記開発者によりアクセスされ得ないが前記開発者によりアクセスされ得る前記第1の製作物により従属される(第1の製作物が従属する)第2の製作物を、前記開発者の要求、プロジェクト割り当て情報及びプロジェクト製作物従属性に基づいて決定するステップと、
前記開発者によりアクセスされ得る前記第1の製作物に対する物理的製作物を与えるステップと、
前記開発者によりアクセスされ得ないが前記開発者によりアクセスされ得る前記第1の製作物により従属される第2の製作物に対する論理的製作物を発生するステップと、
前記物理的製作物及び前記論理的製作物を前記開発者に送るステップとを含む開発者のためのプロジェクト開発環境を与える方法が提供される。
本発明の他の態様に従うと、
或る開発者によりアクセスされ得る第1の製作物及び前記開発者によりアクセスされ得ないが前記開発者によりアクセスされ得る前記第1の製作物により従属される(第1の製作物が従属する)第2の製作物を、前記開発者の要求、プロジェクト割り当て情報及びプロジェクト製作物従属性に基づいて決定するように構成されたプロジェクト製作物フィルタ・ユニットと、
前記開発者によりアクセスされ得る前記第1の製作物に対する物理的製作物を与えるように構成された物理的製作物供給ユニットと、
前記開発者によりアクセスされ得ないが前記開発者によりアクセスされ得る前記第1の製作物により従属される第2の製作物に対する論理的製作物を発生するように構成された論理的製作物発生ユニットと、
前記物理的製作物及び前記論理的製作物を前記開発者に送る送出ユニットとを備える、開発者のためのプロジェクト開発環境を与える装置が提供される。
本発明の他の態様に従うと、
プロジェクトを割り当てそしてプロジェクト割り当て情報を与えるように構成されたプロジェクト管理ツール(PMT)と、
プロジェクト開発プロセスにおいて発生された製作物を管理しそして記憶するように構成されたバージョン・コントロール・システム(VCS)と、
開発者によりプロジェクトを開発させるように構成された統合開発環境(IDE)と、
開発者による要求、前記PMTにより与えられるプロジェクト割り当て情報及びプロジェクト製作物従属性に基づいて開発者のための論理的開発環境を与える上述の装置と備えるプロジェクト開発システムが提供される。
次に、図面を参照しながら本発明の良好な実施例を詳細に説明する。
開発者のためのプロジェクト開発環境を与える方法:
図1は、本発明に従う実施例の開発者のためのプロジェクト開発環境を与える方法を示すフローチャートである。図1に示すように、第1のステップ101において、或る開発者によりアクセスされ得る第1の製作物及び前記開発者によりアクセスされ得ないが前記開発者によりアクセスされ得る前記第1の製作物により従属される(第1の製作物が従属する)第2の製作物が、前記開発者の要求、プロジェクト割り当て情報及びプロジェクト製作物従属性に基づいて決定される。特に、開発者の要求は、開発者の身元(ID,identity)又は開発者のIDを伴う製作物の名称を含み、ここで、製作物の名称は、例えば、インターフェース、コンポーネント/モジュール及びデータ・タイプ等のような開発されているエンティティ(entity)の名称である。開発者のIDは、開発者のユーザ名又はインターネット・プロトコル(IP)アドレスに基づいて同定されることができ、そして本発明は、開発者のIDが同定されうる限り、これに限定しない。
ステップ101において、もしも開発者の要求がこの開発者のIDを含むならば、開発者は、この開発者によりアクセスされ得る全ての製作物及びこの製作物により従属される(この製作物が従属する)他の全ての製作物を取得することを希望している。もしも要求が、この開発者のIDを伴う製作物の名称であるならば、この開発者は、この開発者によりアクセスされ得る特定な製作物及びこの特定な製作物により従属される他の製作物を取得することを希望しているにすぎない。
この実施例において、製作物は、例えば、インターフェース、コンポーネント/モジュール及びデータ等のようにプロジェクト開発のプロセスにおいて生成される任意のエンティティであり得る。インターフェースは、コンポーネントに実装(インプリメント)される通信当事者相互間の通信のために規定されたプロトコルである。コンポーネント/モジュールは、幾つかの機能を達成するためのアプリケーション・ロジックを含むソース・コードである。データは、コンポーネントにより使用されるデータのことである。図3は、FoodOrder_Interface_FoodServiceのインターフェースを示す、本発明の実施例に従うプロジェクト製作物の例である。図3において、“check”及び“notifyCollector”は、このインターフェースの2つのメソッドであり、そして、”check”のメソッドの機能は、“timeIntervalIBO”の所定の時間間隔に“food order”を行う必要があるか否かを調べることである。“notifyCollector”のメソッドは、用意された“メッセージ”を、food order(食物注文)管理者に送り、彼又は彼女が“food order”を行えるようにすることである。
図4は、TimeIntervalIBOのデータの内容を示す本発明の実施例に従うプロジェクト製作物の他の例である。図4において、TimeIntervalIBOは、開始時刻及び終了時刻を含む時間間隔(期間)のデータ・タイプであり、例えば、開始時刻は10/26/2007 1:00:00PMでありそして終了時刻は10/26/2007 1:30:00PMである。
本明細書中で示しそして列挙する製作物の例は、説明のためのものであり、本発明はこれに限定されず、そして製作物は、プロジェクト開発のプロセスにおいて生成される如何なるエンティティでもよいことを理解されたい。
この実施例において、プロジェクト割り当て情報は、プロジェクトの分割及びプロジェクト開発についての状況の情報である。プロジェクトの開発前に、プロジェクトの管理者は、プロジェクトを、異なる複数の開発者又は異なる複数の開発者グループにより開発される複数のサブ・プロジェクトに分割する必要がある、プロジェクト開発のプロセスにおいて、或る開発された製作物はある開発者に対応する。従って、プロジェクト割り当て情報は、以下に示す表1のようにすることができ、この表1は、開発者と製作物の間のマッピング関係を示す。
Figure 0005475979
表1から、開発者アリスは、サブプロジェクト“FoodProductManagement_Interface_FoodProductChange”及び“FoodProductManagement_Interface_FoodproductDelete”を開発する責務を有し、そして開発者ボブは、サブ・プロジェクト“FoodProductManagement_Interface_FoodproductGet”を開発する責務を有することが明らかである。
この実施例において、プロジェクト製作物従属性は、プロジェクト開発のプロセスにおいて生成される製作物相互間の従属性、例えば、これら製作物相互間の参照関係である。図2は、本発明の実施例に従うプロジェクト製作物従属性の1つの例である。図2は、インターフェース、コンポーネント及びデータの間の従属性を示し、例えば、コンポーネントCは、インターフェースIを実装(インプリメント)し、インターフェースI及びIを参照し、そしてデータD及びDを使用する。図2は、プロジェクト製作物相互間の例示的な従属性を示しているにすぎず、本発明はこれに制限されることはなく、例えば、データ及びデータの間の従属性又はインターフェース及びデータとの間の従属性等を更に含むことができることが当業者により理解されるであろう。或る製作物により直接的に従属される製作物のサロゲート(surrogate=代理物)を発生することが必要であるが、製作物により間接的に従属される製作物に対するサロゲートを発生する必要がないことを理解されたい。その理由は、これが本発明の実装(インプリメンテーション)に影響を及ぼさないからである。
図1のステップ102において、開発者によりアクセスされ得る第1の製作物に対する物理的製作物を与えられる。特に、開発者によりアクセスされ得る製作物がプロジェクト保管手段(リポジトリ)において探索され(サーチされ)、ここで探し出された製作物は、物理的製作物として使用され、そして、この物理的製作物は、この開発者によりアクセスされ得る開発された製作物でありそしてプロジェクト保管手段内に対応する特定な物理的ファイルを有する。
この実施例においては、プロジェクト保管手段は、プロジェクト開発のプロセスにおいて生成されたどのような製作物をも収集的に記憶する中央記憶ユニットである。又、プロジェクト保管手段は、製作物それ自体ばかりではなく各製作物のバージョン情報及び変更した状況をも記憶する。物理的に、プロジェクト保管手段は、単一のサーバーにより実現されることができ、又、バージョン・コントロール・システム(VCS)のファイル管理システムにより実現されることができる。本発明は、製作物を記憶でき、そしてこれが必要とされるときに製作物を供給することができるならば、プロジェクト保管手段に対して何らの制限を課すものではない。
次に、図1のステップ103において、もしも開発者によりアクセスされ得る第1の製作物(図2のコンポーネントC)がこの開発者によりアクセスされることができない第2の製作物(例えば、図2のインターフェースI)に従属しているならば、この開発者によりアクセスされることができない第2の製作物(図2のインターフェースI)に対する論理的製作物が発生される。
特に、開発者によりアクセスされ得ないがこの開発者によりアクセスされ得る第1の製作物により従属される第2の製作物が、プロジェクト保管手段内で探索される。次いで、この探し出された製作物に対するサロゲートが発生され、ここで、このサロゲートが論理的製作物として使用される。
開発者により呼び出されることを必要とした製作物が探索された後、この探し出された製作物の実装(インプリメンテーション)の詳細は、ステップ103において発生されたサロゲート内に隠され、その結果、開発者はこの製作物の詳細を見ることはできないが、これを使用することができる。これは、他の製作物に従属する製作物の実行に影響を与えない。
特に、サロゲートを発生する方法は、例えば現存するJava Emitter Templates(JET)の方法により達成されることができ、そしてこれの詳細は、次のリンク〔1〕−〔2〕に示されている。
〔1〕
〔2〕
サロゲートを発生する方法は、これに限定されるものではなく、発生されるべき製作物の主要コードがサロゲートとして維持され、そして重要な情報の詳細が隠されるならば、当業者により知られている任意の方法が使用され得る。
この実施例のサロゲートを発生するプロセスを、図3に示すFoodOrder_Interface_FoodServiceのインターフェースの例を使用して詳細に説明する。
FoodOrder_Interface_FoodServiceのインターフェースを実装(インプリメント)するコードは次の通りである。
package com.dcm.foodsystem;
import com.dcm.foodsystem.FoodOrder_Interface_FoodService;
import com.ibm.websphere.sca.Ticket;
import commonj.sdo.DataObject;
import com.ibm.websphere.sca.ServiceManager;
public class FoodSystem1Impl {
/**
* Default constructor.
*/
publicFoodSystem1Impl() {
super();
}
/**
* Return a reference to the componentservice instance for this
* implementation class. This methodshould be used when passing this
* service to a partner reference or ifyou want to invoke this component
* service asynchronously.
*
* @generated (com.ibm.wbit.java)
*/
privateObject getMyService() {
return(Object) ServiceManager.INSTANCE.locateService("self");
}
/**
* This method is used to locate theservice for the reference named
*"FoodOrder_Interface_FoodServicePartner". This will return aninstance of
* {@linkFoodOrder_Interface_FoodService}. If you would like to use this
* service asynchronously then you willneed to cast the result to
* {@linkFoodOrder_Interface_FoodServiceAsync}.
*
* @generated (com.ibm.wbit.java)
*
* @return FoodOrder_Interface_FoodService
*/
publicFoodOrder_Interface_FoodServicelocateService_FoodOrder_Interface_FoodServicePartner() {
return(FoodOrder_Interface_FoodService) erviceManager.INSTANCE
.locateService("FoodOrder_Interface_FoodServicePartner");
}
/**
* Method generated to supportimplemention of operation "check" defined for
* WSDL port type named"interface.FoodOrder_Interface_FoodService".
*
* The presence of commonj.sdo.DataObjectas the return type and/or as a
* parameter type conveys that its acomplex type. Please refer to the WSDL
* Definition for more information on thetype of input, output and
* fault(s).
*/
publicBoolean check(DataObject timeIntervalBO) {
System.out.println(timeIntervalBO);
Booleanresult = locateService_FoodOrder_Interface_FoodServicePartner()
.check(timeIntervalBO);
System.out.println("result"+ result);
returnresult;
}
/**
* Method generated to supportimplemention of operation "notifyCollector"
* defined for WSDL port type named
*"interface.FoodOrder_Interface_FoodService".
*
* Please refer to the WSDL Definition formore information on the type of
* input, output and fault(s).
*/
publicString notifyCollector(String message) {
Stringresult = locateService_FoodOrder_Interface_FoodServicePartner()
.notifyCollector(message);
returnresult;
}
}
サロゲートを発生するプロセスにおいて、FoodOrder_Interface_FoodServiceのインターフェースのpublic Boolean check (DataObject timeIntervalBO)のインプリメンテーションの詳細は隠され、そして結果“トゥルー(true)”だけが戻される。本実施例においては、“トゥルー(true)”が“リターン結果(戻される結果)”として使用されるけれども、“トゥルー”又は“フォールス(false)”のいずれかが“リターン結果”として使用され得ることを理解されたい。実際の動作においては、開発者は、デフォルトのリターン結果を不規則(ランダム)にセットし、又はこのデフォルトのリターン結果を彼らのコードで修正することができ、そして修正された結果に基づいて彼ら自身により開発されたコードをテストすることができる。これは以下のものを省略する。
public Booleancheck(DataObject timeIntervalBO) {
System.out.println(timeIntervalBO);
Booleanresult=locateService_FoodOrder_Interface_FoodServicePartner()
.check(timeIntervalBO);
System.out.println("result"+ result);
return result;
}
as
public Booleancheck(DataObject timeIntervalBO) {
return true;
}
更に、FoodOrder_Interface_FoodServiceのインターフェース内のpublic Boolean check (DataObject timeIntervalBO)のインプリメンテーションの詳細が隠され、そして結果“ヌル(null)”だけが戻される。これは以下のものを省略する。
public StringnotifyCollector(String message) {
String result =locateService_FoodOrder_Interface_FoodServicePartner()
.notifyCollector(message);
return result;
}
as
public StringnotifyCollector(String message) {
returnnull;
}
従って、FoodOrder_Interface_FoodServiceのインターフェースに対して発生されたサロゲートのコードは、次の通りである。
package com.dcm.foodsystem;
import com.dcm.foodsystem.FoodOrder_Interface_FoodService;
import com.ibm.websphere.sca.Ticket;
import commonj.sdo.DataObject;
import com.ibm.websphere.sca.ServiceManager;
public class FoodSystem2Impl {
/**
* Default constructor.
*/
publicFoodSystem2Impl() {
super();
}
/**
* Return a reference to the componentservice instance for this
* implementation class. This methodshould be used when passing this
* service to a partner reference or ifyou want to invoke this component
* service asynchronously.
*
* @generated (com.ibm.wbit.java)
*/
privateObject getMyService() {
return(Object) ServiceManager.INSTANCE.locateService("self");
}
/**
* This method is used to locate theservice for the reference named
*"FoodOrder_Interface_FoodServicePartner". This will return aninstance of
* {@linkFoodOrder_Interface_FoodService}. If you would like to use this
* service asynchronously then you willneed to cast the result to
* {@linkFoodOrder_Interface_FoodServiceAsync}.
*
* @generated (com.ibm.wbit.java)
*
* @return FoodOrder_Interface_FoodService
*/
publicFoodOrder_Interface_FoodServicelocateService_FoodOrder_Interface_FoodServicePartner() {
return(FoodOrder_Interface_FoodService) ServiceManager.INSTANCE
.locateService("FoodOrder_Interface_FoodServicePartner");
}
/**
* Method generated to supportimplemention of operation "check" defined for
* WSDL port type named"interface.FoodOrder_Interface_FoodService".
*
* The presence of commonj.sdo.DataObjectas the return type and/or as a
* parameter type conveys that its acomplex type. Please refer to the WSDL
* Definition for more information on thetype of input, output and
* fault(s).
*/
publicBoolean check(DataObject timeIntervalBO) {
returntrue;
}
/**
* Method generated to support implementionof operation "notifyCollector"
* defined for WSDL port type named
*"interface.FoodOrder_Interface_FoodService".
*
* Please refer to the WSDL Definition formore information on the type of
* input, output and fault(s).
*/
publicString notifyCollector(String message) {
returnnull;
}
}
FoodOrder_Interface_FoodServiceのインターフェースにおいて、public Boolean check(DataObject timeIntervalBO)及びpublic Boolean public String notifyCollector(String message)は、このインターフェースの2つのメソッドであり、そして、全てのアプリケーション・ロジックはこれら2つのモジュール内にある。このインターフェース内の他のコードは、このインターフェースのインプリメンテーションが通常に動作することを確実にするための補助的なコードであり、これは他の異なるインターフェースのインプリメンテーションと同じである。更に、インプリメンテーションの詳細が隠されなければならないメソッドは、本発明の方法におけるインターフェースの定義に従って自動的に選択され、例えば、図3に示されているこのインターフェースのメソッド“check”及び“notifyCollector”は、自動的に選択されそして隠され、そして他の共通コードは維持される。
本実施例の製作物に対するサロゲートを発生するプロセスを、FoodOrder_Interface_FoodServiceのインターフェースの例について説明したが、このプロセスは例示的なものであり、本発明は、インターフェースのメソッドをインプレメントするコードが消去され、リターン(戻し)タイプで承認されたランダム(不規則)データが生成され、そして他のコードが維持される限り、上記の例に限定されない。
最後に、図1のステップ104において、物理的製作物及び論理的製作物の両方が開発者に送られる。
本実施例の開発者のためのプロジェクト開発環境を与える方法により、プロジェクト開発の機密性は、如何なる開発者もプロジェクトの全体の内容に触れることができないことを確実にするためにサロゲートを発生することにより改善される。同時に、完全な論理的開発環境が開発者に対して自動的に提供され、そして開発者は、従属される製作物を自由に呼び出すことができる。本発明は、人手による方法に比べて、開発の効率を著しく改善する。
開発者のためのプロジェクト開発環境を与える装置:
図5は、本発明の実施例に従う開発者のためのプロジェクト開発環境を与える装置のブロック図を示す。次にこの実施例を図5を参照して説明する。上述の実施例と同じ部分に対しては説明を適切に省略する。
図5に示すように、本実施例の開発者のためのプロジェクト開発環境を与える装置500は、
開発者によりアクセスされ得る第1の製作物及び前記開発者によりアクセスされ得ないが前記開発者によりアクセスされ得る前記第1の製作物により従属される第2の製作物を、前記開発者の要求、プロジェクト割り当て情報及びプロジェクト製作物従属性に基づいて決定するように構成されたプロジェクト製作物フィルタ・ユニット501と、
前記開発者によりアクセスされ得る前記第1の製作物に対する物理的製作物を与えるように構成された物理的製作物供給ユニット502と、
前記開発者によりアクセスされることができず、そして前記開発者によりアクセスされ得る前記第1の製作物により従属される第2の製作物に対する論理的製作物を発生するように構成された論理的製作物発生ユニット503と、
前記物理的製作物及び前記論理的製作物を共に前記開発者に送る送出ユニット504とを備える。
特に、開発者の要求は、開発者の身元(ID,identity)又は開発者のIDを伴う製作物の名称を含む。開発者のIDは、開発者のユーザ名又はインターネット・プロトコル(IP)アドレスに基づいて同定されることができ、そして本発明は、開発者のIDが同定されうる限り、これに対して制限しない。
本実施例において、もしも開発者の要求がこの開発者のIDを含むならば、開発者は、この開発者によりアクセスされ得る全ての製作物及びこの製作物により従属される他の全ての製作物を取得することを希望している。もしも要求が、この開発者のIDを伴う製作物の名称であるならば、この開発者は、この開発者によりアクセスされ得る特定な製作物及びこの特定な製作物により従属される他の製作物を取得することを希望しているにすぎない。
本実施例において、製作物は、例えば、インターフェース、コンポーネント/モジュール及びデータ等のようなプロジェクト開発のプロセスにおいて生成された任意のエンティティであり得る。インターフェースは、コンポーネントにより実装(インプリメント)される通信当事者相互間の通信のために規定されたプロトコルである。コンポーネントは、幾つかの機能を達成するためのアプリケーション・ロジックを含むソース・コードである。データは、コンポーネントにより使用されるデータのことである。図3は、FoodOrder_Interface_FoodServiceのインターフェースを示す本発明の実施例に従うプロジェクト製作物の1つの例である。図4は、timeIntervalIBOのデータを示す本発明の実施例に従うプロジェクト製作物の他の例である。
本明細書において示しそして列挙する製作物の例は、説明のためのものであり、本発明はこれに限定されず、そして製作物とは、プロジェクト開発のプロセスにおいて生成される任意のエンティティであり得る。
この実施例において、プロジェクト割り当て情報は、プロジェクトの分割及びプロジェクト開発についての情報である。プロジェクトの開発前に、プロジェクトの管理者は、プロジェクトを、異なる複数の開発者又は異なる複数の開発者グループによりそれぞれ開発される複数のサブ・プロジェクトに分割する必要がある。プロジェクト開発のプロセスにおいて、或る開発された製作物はある開発者に対応する。従って、プロジェクト割り当て情報は、どの開発者がどのサブ・プロジェクトを開発するか、即ち、開発者と製作物の間のマッピング関係を示す表において見出すことができる。
この実施例において、プロジェクト製作物従属性は、プロジェクト開発のプロセスにおいて生成される製作物相互間の従属性、即ち、1つの実行物に対する他の製作物の従属性である。図2は、本発明の実施例に従うプロジェクト製作物の例である。図2は、インターフェース、コンポーネント及びデータの間の従属性を示し、例えば、コンポーネントCは、インターフェースIを実装(インプリメント)し、インターフェースI及びIを呼び出し、そしてデータD及びDを使用する。図2は、プロジェクト製作物相互間の例示的な従属性を示しているにすぎず、本発明はこれに限定されない。
特に、開発者によりアクセスされ得る製作物は、プロジェクト保管手段内で、物理的製作物供給ユニット502により探索され、ここで、探し出された製作物は物理的製作物として使用される。
この特定な実施例においては、プロジェクト保管手段は、プロジェクト開発のプロセスにおいて生成されたどのような製作物をも収集的に記憶する中央記憶ユニットである。又、プロジェクト保管手段は、製作物それ自体ばかりではなく各製作物のバージョン情報及び変更した状況をも記憶する。物理的に、プロジェクト保管手段は、単一のサーバーにより実現されることができ、又、バージョン・コントロール・システム(VCS)のファイル管理システムにより実現されることができる。本発明は、製作物を記憶できそして必要に応じて製作物を供給することができるならば、プロジェクト保管手段に対して何らの限定を課すものではない。
特に、開発者によりアクセスされ得ないがこの開発者によりアクセスされ得る製作物により従属されている製作物が、プロジェクト保管手段内で、論理的製作物発生ユニット503により探索される。次いで、この探し出された製作物に対してサロゲートが発生され、ここで、このサロゲートは論理的製作物として使用される。
開発者により呼び出された製作物が探し出された後、この探し出された製作物のインプリメンテーションの詳細が、論理的製作物発生ユニット503により発生されたサロゲート内に隠され、その結果、開発者は、この製作物の詳細を見ることはできないが、これを使用することができる。これは、他の製作物に従属する製作物の実行に影響を与えない。
特に、例えば現存するJava Emitter Templates(JET)の技術が、論理的製作物発生ユニット503で使用されることができ、そしてこれの詳細は、次のリンク〔1〕−〔2〕に示されている。
[1]
[2]
本発明の論理的製作物発生ユニット503はこれに限定されるものではなく、そしてサロゲートとして発生される製作物の主要コードが維持され、そして重要な詳細が隠される限り、当業者により知られている任意の方法が使用され得る。
論理的製作物発生ユニット503のサロゲートを発生する特定なプロセスは、図3に示すFoodOrder_Interface_FoodServiceのインターフェースの例を使用して説明したサロゲートを発生するプロセスと同じであり、従って、簡略化のためにこれの詳細な説明を省略する。
本実施例の開発者のためのプロジェクト開発環境を与える装置500により、プロジェクトの機密性は、如何なる開発者もプロジェクトの全体の内容に触れることができないことを確実にするために論理的製作物発生ユニット503を使用して発生することにより改善される。同時に、完全な論理的開発環境が開発者に対して自動的に提供され、そして、人手による方法に比べて、開発の効率が著しく改善される。
プロジェクト開発システム:
上述と同じ発明の考えのもとで、図6は、本発明の実施例に従うプロジェクト開発システムのブロック図である。次のこの実施例を図5を参照して説明する。上述の実施例と同じものについては説明を省略する。
図6に示すように、本発明の実施例に従うプロジェクト開発システム600は、
プロジェクトを割り当てそしてプロジェクト割り当て情報を与えるように構成されたプロジェクト管理ツール(PMT)601と、
プロジェクト開発プロセスにおいて発生された製作物を管理しそして記憶するように構成されたバージョン・コントロール・システム(VCS)602と、
開発者によりプロジェクトを開発させるように構成された統合開発環境(IDE)603と、
開発者の要求、プロジェクト管理ツールにより与えられるプロジェクト割り当て情報及びプロジェクト製作物従属性に基づいて開発者のための論理的開発環境を与えるように構成された上述の装置500とを備える。
本実施例において、プロジェクト管理ツール(PMT)601は、プロジェクトが複数のサブ・プロジェクトに分割され、そしてプロジェクトがプロジェクト開発のプロセスにおいて管理され得る限り、当業者により知られている任意のプロジェクト管理ツールでもよい。バージョン・コントロール・システム(VCS)602は、例えばVCS,ClearCase及びCMVC等でよく、そして本発明は、プロジェクト開発のプロセスにおいて発生された製作物が管理されそして記憶される限り、これに限定されることはない。統合開発環境(IDE)603は、プロジェクトを開発するために開発者により使用されうるものであれば、当業者により知られている任意に開発環境でもよい。
本実施例のプロジェクト開発システム600により開発者のための統合開発環境を与えるプロセスは、前述の方法及び装置の実施例のものと同じであり、従ってこれの詳細な説明は省略する。
本実施例の開発者のためのプロジェクト開発環境を与えるシステム600により、プロジェクト開発の機密性は、如何なる開発者もプロジェクトの全体の内容に触れることができないことを確実にするためにサロゲートを発生することにより改善される。同時に、完全な論理的開発環境が開発者に対して自動的に提供され、そして、人手による方法に比べて、開発の効率を著しく改善する。
更に、プロジェクト管理ツール(PMT),バージョン・コントロール・システム(VCS)及び統合開発環境(IDE)は、本実施例のプロジェクト開発システム600に統合され、これにより、全体的に信頼性が高く且つ汎用性の開発環境がプロジェクト開発に対して提供され、そして、開発の効率が著しく改善される。
他に特に述べない限り、本発明の機能は、ハードウエアまたはソフトウエアあるいはその両方により実現されることができる。しかしながら良好な実施例では、他に特に述べない限り、これらの機能は、例えばコンピュータ・プログラムのコード化のように、コード化された集積回路を伴うコンピュータ又は電子データ・プロセッサのようなプロセッサにより達成されることができる。一般的に、本発明の実施例をインププリメントする方法は、オペレーティング・システムの一部、特定なアプリケーション・プログラム、プログラム、モジュール、オブジェクト又は命令のシーケンスであり得る。一般的に、本発明のソフトウエアは、ローカル・コンピュータによりコンピュータ読み取り可能な命令に変換されて実行可能な命令になる複数の命令を含む。更に、プログラムは、これに関連してローカルに維持され又はメモリ内で探索される変数及びデータ構造を含む。更に、これらのプログラムは、これらを本発明の特定な実施例に実装するためにアプリケーション・メソッドに基づいて同定され得る。本発明の機能をインプリメントするためのコンピュータ読み取り可能な命令が実行されると、信号坦持媒体は、本発明の実施例を示す。
本発明に従う、開発者のためのプロジェクト開発環境を与える方法、開発者のためのプロジェクト開発環境を与える装置及びプロジェクト開発システムが幾つかの例示的な実施例を使用して詳細に説明されたが、これらの実施例は本発明の全てを網羅するものではなく、本発明の精神及び範囲から逸脱することなく種々な変更及び修正が当業者によりなされ得ることが明らかである。従って、本発明はこれらの実施例に限定されない。
本発明の実施例に従う開発者のためのプロジェクト開発環境を提供する方法を示すフローチャートである。 本発明の実施例に従うプロジェクト製作物依存性の例を示す図である。 本発明の実施例に従うプロジェクト製作物の例を示す図である。 本発明の実施例に従うプロジェクト製作物の他の例を示す図である。 本発明の実施例に従う開発者のためのプロジェクト開発環境を提供する装置を示すブロック図である。 本発明の実施例に従うプロジェクト開発システムを示すブロック図である。
符号の説明
500 プロジェクト開発環境を与える装置
501 プロジェクト製作物フィルタ・ユニット
502 物理的製作物供給ユニット
503 論理的製作物発生ユニット
504 送出ユニット
600 プロジェクト開発システム
601 プロジェクト管理ツール
602 バージョン・コントロール・システム
603 統合開発環境

Claims (13)

  1. 開発者のためのプロジェクト開発環境を与える方法であって、装置が、
    開発者によりアクセスされ得る第1の製作物及び、前記開発者によりアクセスされ得ないが前記開発者によりアクセスされ得る前記第1の製作物により従属される第2の製作物を、開発者のID又は開発者のIDを伴う製作物の名称を含む、前記開発者の要求、プロジェクトの分割及びプロジェクト開発についての状況の情報であるプロジェクト割り当て情報及びプロジェクト開発のプロセスにおいて生成される製作物相互間の従属性であるプロジェクト製作物従属性に基づいて決定するステップと、
    前記開発者によりアクセスされ得る前記第1の製作物に対する物理的製作物を与えるステップと、
    前記開発者によりアクセスされ得ないが前記開発者によりアクセスされ得る前記第1の製作物により従属される第2の製作物に対する、製作物の主要コードが維持され、詳細が隠される論理的製作物を発生するステップと、
    前記物理的製作物及び前記論理的製作物を前記開発者に送るステップと
    を含み、
    前記論理的製作物を発生するステップが、
    前記開発者によりアクセスされ得ないが前記開発者によりアクセスされ得る前記第1の製作物により従属される第2の製作物プロジェクト保管手段内で探し出すステップと、
    前記探し出された前記第2の製作物に対する代理物を発生するステップであって、前記代理物が前記論理的製作物として使用され、前記論理的製作物が前記開発者によって使用されることができ、前記探し出された前記第2の製作物の実装の詳細が前記代理物内に隠され、前記詳細は前記開発者によって見られることができない、前記発生するステップ
    実行することを含む、前記方法。
  2. 前記物理的製作物を与えるステップが、前記開発者によりアクセスされ得る前記第1の製作物を前記プロジェクト保管手段内で探し出すステップを含み、前記探し出された第1の製作物が前記物理的製作物として使用される、請求項1に記載の方法。
  3. 前記第1及び第2の製作物が、プロジェクト開発プロセスにおいて発生された任意のエンティティからなる、請求項1又は2に記載の方法。
  4. 前記エンティティが、インターフェース、コンポーネント及びデータのうちの少なくとも1つである、請求項に記載の方法。
  5. 前記プロジェクト割り当て情報が、前記開発者及び前記プロジェクト製作物の間の関係をマッピングした情報である、請求項1又は2に記載の方法。
  6. 前記プロジェクト製作物従属性が、前記製作物相互間の参照関係である、請求項1又は2に記載の方法。
  7. 開発者のためのプロジェクト開発環境を与える装置であって、
    開発者によりアクセスされ得る第1の製作物及び、前記開発者によりアクセスされ得ないが前記開発者によりアクセスされ得る前記第1の製作物により従属される第2の製作物を、開発者のID又は開発者のIDを伴う製作物の名称を含む、前記開発者の要求、プロジェクトの分割及びプロジェクト開発についての状況の情報であるプロジェクト割り当て情報及びプロジェクト開発のプロセスにおいて生成される製作物相互間の従属性であるプロジェクト製作物従属性に基づいて決定するプロジェクト製作物フィルタ・ユニットと、
    前記開発者によりアクセスされ得る前記第1の製作物に対する物理的製作物を与える物理的製作物供給ユニットと、
    前記開発者によりアクセスされ得ないが前記開発者によりアクセスされ得る前記第1の製作物により従属される第2の製作物に対する、製作物の主要コードが維持され、詳細が隠される論理的製作物を発生する論理的製作物発生ユニットと、
    前記物理的製作物及び前記論理的製作物を前記開発者に送る送出ユニットと
    を備え、
    前記論理的製作物発生ユニットが、
    前記開発者によりアクセスされ得ないが前記開発者によりアクセスされ得る前記第1の製作物により従属される第2の製作物プロジェクト保管手段内で探し出す調査ユニットと、
    前記探し出された前記第2の製作物に対する代理物を発生する代理物発生ユニットであって、前記代理物が前記論理的製作物として使用され、前記論理的製作物が前記開発者によって使用されることができ、前記代理物発生ユニットが、前記調査ユニットにより探し出された前記第2の製作物の実装の詳細を前記代理物内に隠し、前記詳細は前記開発者によって見られることができない、前記代理物発生ユニット
    備えている、前記装置。
  8. 前記物理的製作物供給ユニットが、前記開発者によりアクセスされ得る前記第1の製作物を前記プロジェクト保管手段内で探し出す調査ユニットを有し、前記探し出された第1の製作物が前記物理的製作物として使用される、請求項に記載の装置。
  9. 前記第1及び第2の製作物が、プロジェクト開発プロセスにおいて発生された任意のエンティティからなる、請求項7又は8に記載の装置。
  10. 前記エンティティが、インターフェース、コンポーネント及びデータのうちの少なくとも1つである、請求項に記載の装置。
  11. 前記プロジェクト割り当て情報が、前記開発者及び前記プロジェクト製作物の間の関係をマッピングした情報である、請求項7又は8に記載の装置。
  12. 前記プロジェクト製作物従属性が、前記製作物相互間の参照関係である、請求項7又は8に記載の装置。
  13. プロジェクト開発システムであって、
    プロジェクトを割り当てそしてプロジェクト割り当て情報を与えるプロジェクト管理ツール(PMT)と、
    プロジェクト開発プロセスにおいて発生された製作物を管理しそして記憶するバージョン・コントロール・システム(VCS)と、
    開発者にプロジェクトを開発させる統合開発環境(IDE)と、
    開発者の要求、前記PMTにより与えられるプロジェクト割り当て情報及びプロジェクト製作物従属性に基づいて開発者のための論理的開発環境を与える請求項7〜12のいずれか一項に記載の装置と
    を備える、前記プロジェクト開発システム。
JP2008283691A 2007-11-05 2008-11-04 プロジェクト開発環境を与える方法及び装置並びにプロジェクト開発システム(プロジェクト開発環境を与える方法及び装置並びにプロジェクト開発システム) Active JP5475979B2 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN200710165836.7 2007-11-05
CN200710165836.7A CN101430643B (zh) 2007-11-05 2007-11-05 提供项目开发环境的方法和装置,以及项目开发系统

Publications (2)

Publication Number Publication Date
JP2009116875A JP2009116875A (ja) 2009-05-28
JP5475979B2 true JP5475979B2 (ja) 2014-04-16

Family

ID=40589434

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2008283691A Active JP5475979B2 (ja) 2007-11-05 2008-11-04 プロジェクト開発環境を与える方法及び装置並びにプロジェクト開発システム(プロジェクト開発環境を与える方法及び装置並びにプロジェクト開発システム)

Country Status (3)

Country Link
US (1) US8327317B2 (ja)
JP (1) JP5475979B2 (ja)
CN (1) CN101430643B (ja)

Families Citing this family (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101235330B1 (ko) * 2009-12-21 2013-02-19 한국전자통신연구원 임베디드 소프트웨어 개발 도구 통합 관리 장치 및 방법
US8650532B2 (en) 2010-05-11 2014-02-11 Microsoft Corporation Change notification and information update based on uncompiled software development project
CN102012816B (zh) * 2010-11-30 2014-06-11 深圳创维-Rgb电子有限公司 一种生成ide工程文件和解决方案文件的方法与装置
EP2503454A1 (en) * 2011-03-24 2012-09-26 Walter Schatz Method and a system for generating a software product
US9053442B2 (en) 2012-05-08 2015-06-09 International Business Machines Corporation Multiple project areas in a development environment
US8938708B2 (en) * 2012-08-14 2015-01-20 International Business Machines Corporation Determining project status in a development environment
US9128724B2 (en) 2012-08-28 2015-09-08 International Business Machines Corporation Configuring assembly of a system using supplied architectural artifacts
US9645807B2 (en) * 2012-08-28 2017-05-09 International Business Machines Corporation Automated deployment of a configured system into a computing environment
CN104375843A (zh) * 2014-12-11 2015-02-25 浪潮电子信息产业股份有限公司 一种基于权限控制自动生成页面的方法
US9612723B1 (en) * 2015-12-30 2017-04-04 Palantir Technologies Inc. Composite graphical interface with shareable data-objects
US11086640B2 (en) * 2015-12-30 2021-08-10 Palantir Technologies Inc. Composite graphical interface with shareable data-objects
US10521220B1 (en) 2018-12-18 2019-12-31 Palantir Technologies Inc. Systems and methods for coordinating the deployment of components to defined user groups
CN110531962B (zh) * 2019-08-06 2023-11-17 上海连尚网络科技有限公司 小程序的开发处理方法、设备及计算机可读存储介质
CN111061403A (zh) * 2019-11-15 2020-04-24 福士瑞精密工业(郑州)有限公司 刀具信息处理装置、处理方法、服务器及存储介质
CN111625221B (zh) * 2020-05-26 2023-09-29 艾普阳科技(深圳)有限公司 应用于集成开发环境的版本控制方法、装置及设备和介质
CN112558963A (zh) * 2020-12-16 2021-03-26 中国人寿保险股份有限公司 一种软件开发方法及装置

Family Cites Families (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5758351A (en) * 1995-03-01 1998-05-26 Sterling Software, Inc. System and method for the creation and use of surrogate information system objects
US7139999B2 (en) * 1999-08-31 2006-11-21 Accenture Llp Development architecture framework
US6757893B1 (en) * 1999-12-17 2004-06-29 Canon Kabushiki Kaisha Version control system for software code
US6748380B2 (en) * 2001-05-14 2004-06-08 International Business Machines Corporation Method, system, and program product for permission to access software
JP3673189B2 (ja) * 2001-05-21 2005-07-20 株式会社東芝 書き込み制御方法および構造化文書管理装置および構造化文書編集装置およびプログラム
US7698636B2 (en) * 2002-06-13 2010-04-13 Microsoft Corporation System and method for in-context editing of components
US7174348B1 (en) * 2002-11-26 2007-02-06 Unisys Corporation Computer program having an object module and a software development tool integration module which automatically interlink artifacts generated in different phases of a software project
JP2004287947A (ja) * 2003-03-24 2004-10-14 Sharp Corp データ管理装置およびデータ管理プログラム
CN100414538C (zh) * 2004-09-06 2008-08-27 英业达股份有限公司 系统程序资源开发管理系统以及方法
JP2006134214A (ja) 2004-11-09 2006-05-25 Hitachi Ltd ファイルのバージョン管理方法および計算機システム
EP1675044A1 (de) 2004-12-21 2006-06-28 Siemens Aktiengesellschaft Engineering-System für verteilte Entwicklung und Entwicklung durch mehrere Nutzer
JP5002975B2 (ja) * 2006-02-08 2012-08-15 富士電機株式会社 プログラム開発支援システム
US7739660B2 (en) * 2006-03-31 2010-06-15 Sap Ag Code management in a distributed software development environment
CN1869991A (zh) * 2006-06-30 2006-11-29 南京联创科技股份有限公司 基于动态代理的数据访问对象模式的实现方法
WO2008124038A1 (en) * 2007-04-03 2008-10-16 Ldra Technology, Inc. Automated management of software requirements verification
US8060855B2 (en) * 2007-10-09 2011-11-15 Microsoft Corporation Artifact sharing from a development environment

Also Published As

Publication number Publication date
US20090119638A1 (en) 2009-05-07
JP2009116875A (ja) 2009-05-28
CN101430643B (zh) 2012-06-27
US8327317B2 (en) 2012-12-04
CN101430643A (zh) 2009-05-13

Similar Documents

Publication Publication Date Title
JP5475979B2 (ja) プロジェクト開発環境を与える方法及び装置並びにプロジェクト開発システム(プロジェクト開発環境を与える方法及び装置並びにプロジェクト開発システム)
US20100313182A1 (en) Extensible user interface generation
JP2004272907A (ja) 分散コンピューティングシステムと、分散アプリケーションの自動化された設計、展開、および管理とのためのアーキテクチャ
US9189213B2 (en) Automatic configuration of project system from project capabilities
US20120227028A1 (en) Graphical programming object population user interface autogeneration
US20180081703A1 (en) Creating a tokenized process template for invoking one or more services by replacing service references with respective tokens
WO2005024631A2 (en) Creating and checking runtime data types
CN112769706B (zh) 组件化路由方法及系统
Verdickt et al. Automatic inclusion of middleware performance attributes into architectural UML software models
JPWO2011118003A1 (ja) ウェブアプリケーション構築システム、ウェブアプリケーション構築方法、ウェブアプリケーション構築プログラムおよびウェブアプリケーション構築プログラムを記録した記録媒体
US20130212598A1 (en) Dependency informer
Südholt A model of components with non-regular protocols
US9830204B2 (en) Facilitating communication between software components that use middleware
Stefanescu et al. Message choreography modeling: A domain-specific language for consistent enterprise service integration
JP7410269B2 (ja) テスト・ベクタを使用した高水準コンストラクトの最適化の自動検証
AU2014338988A1 (en) Facilitating communication between software components that use middleware
CN113495723A (zh) 一种调用功能组件的方法、装置及存储介质
Cook Towards computer-supported collaborative software engineering
CN112363700A (zh) 智能合约的协同创建方法、装置、计算机设备和存储介质
CN113032004A (zh) 在开发环境中管理开发作业的方法、设备和程序产品
US8543971B2 (en) Specifying on the fly sequential assembly in SOA environments
Bollin Coupling-based transformations of Z specifications into UML diagrams
Seiffert et al. Improving the runtime-processing of test cases for component adaptation
US10769183B2 (en) Identifying resources in user interfaces for feedback
EP2866139A1 (en) Method facilitating the communication between two software components that use two different middleware by automatically generating a communication layer between them

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20110906

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20130411

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20130507

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20130514

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20130820

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A821

Effective date: 20131108

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20131108

RD12 Notification of acceptance of power of sub attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7432

Effective date: 20131108

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A821

Effective date: 20131108

A911 Transfer to examiner for re-examination before appeal (zenchi)

Free format text: JAPANESE INTERMEDIATE CODE: A911

Effective date: 20131204

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20140121

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A821

Effective date: 20140121

RD14 Notification of resignation of power of sub attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7434

Effective date: 20140121

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20140207

R150 Certificate of patent or registration of utility model

Ref document number: 5475979

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150