JPH0744365A - ソフトウェア統合開発システムおよび異種caseツール間のソフトウェア変換方法 - Google Patents
ソフトウェア統合開発システムおよび異種caseツール間のソフトウェア変換方法Info
- Publication number
- JPH0744365A JPH0744365A JP5191442A JP19144293A JPH0744365A JP H0744365 A JPH0744365 A JP H0744365A JP 5191442 A JP5191442 A JP 5191442A JP 19144293 A JP19144293 A JP 19144293A JP H0744365 A JPH0744365 A JP H0744365A
- Authority
- JP
- Japan
- Prior art keywords
- tool
- agent
- software
- data
- case
- 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.)
- Pending
Links
Landscapes
- Devices For Executing Special Programs (AREA)
- Stored Programmes (AREA)
Abstract
(57)【要約】
【目的】 簡単なプログラム作業によって、異種CAS
Eツールで取り扱うデータの同一性を維持でき、CAS
Eツールの追加・変更にも柔軟に対応できるソフトウェ
ア統合開発システムと異種CASEツール間のソフトウ
ェア変換方法を提供する。 【構成】 入出力ポートと解釈部を備えたツールエージ
ェント1と統合エージェント3と通信エージェント2と
リポジトリエージェント4によってソフトウェア統合開
発システムを構成し、通信エージェント2を介して所定
のツールエージェントによるソフトウェアコンポーネン
トをリポジトリエージェント4に格納し、このソフトウ
ェアコンポーネントを統合エージェント3によって他の
ツールエージェント形式のソフトウェアコンポーネント
に変換し、この変換されたソフトウェアコンポーネント
を統合ツール3によって制御された変換先のツールエー
ジェントで処理するように、ツールエージェント1と統
合エージェント3と通信エージェント2とリポジトリエ
ージェント4を構成した。
Eツールで取り扱うデータの同一性を維持でき、CAS
Eツールの追加・変更にも柔軟に対応できるソフトウェ
ア統合開発システムと異種CASEツール間のソフトウ
ェア変換方法を提供する。 【構成】 入出力ポートと解釈部を備えたツールエージ
ェント1と統合エージェント3と通信エージェント2と
リポジトリエージェント4によってソフトウェア統合開
発システムを構成し、通信エージェント2を介して所定
のツールエージェントによるソフトウェアコンポーネン
トをリポジトリエージェント4に格納し、このソフトウ
ェアコンポーネントを統合エージェント3によって他の
ツールエージェント形式のソフトウェアコンポーネント
に変換し、この変換されたソフトウェアコンポーネント
を統合ツール3によって制御された変換先のツールエー
ジェントで処理するように、ツールエージェント1と統
合エージェント3と通信エージェント2とリポジトリエ
ージェント4を構成した。
Description
【0001】
【産業上の利用分野】本発明は、分散化型ソフトウェア
開発の統合開発システムに係り、特に複数の異なる種類
のCASEツールと通信ツールとCASEツール間の入
出力変換と制御を行う統合ツールとを有し、前記各ツー
ルを通信メッセージによって独立に作動するエージェン
トにすることによって、汎用性と開発データの整合性を
高くしたソフトウェア統合開発システムと、その異種間
のCASEツールのプログラムやデータの変換方法に関
する。
開発の統合開発システムに係り、特に複数の異なる種類
のCASEツールと通信ツールとCASEツール間の入
出力変換と制御を行う統合ツールとを有し、前記各ツー
ルを通信メッセージによって独立に作動するエージェン
トにすることによって、汎用性と開発データの整合性を
高くしたソフトウェア統合開発システムと、その異種間
のCASEツールのプログラムやデータの変換方法に関
する。
【0002】
【従来の技術】大規模のソフトウェアを開発する場合
は、複数の開発者が異なる装置上で作動する異なる種類
のCASEツールによって同一ソフトウェアを開発する
分散化型ソフトウェア開発が一般的に行われている。
は、複数の開発者が異なる装置上で作動する異なる種類
のCASEツールによって同一ソフトウェアを開発する
分散化型ソフトウェア開発が一般的に行われている。
【0003】この分散化型ソフトウェア開発では、各開
発者が共通のデータを取り扱うことが重要であるが、異
種CASEツール間では実質的に同一のデータも表現形
式やデータの属性等が異なるため、他のCASEツール
で開発したプログラムやデータをそのまま利用できな
い。このため、分散化型ソフトウェア開発において異種
CASEツール間のデータの互換性をいかに保つかが重
要な技術課題であった。
発者が共通のデータを取り扱うことが重要であるが、異
種CASEツール間では実質的に同一のデータも表現形
式やデータの属性等が異なるため、他のCASEツール
で開発したプログラムやデータをそのまま利用できな
い。このため、分散化型ソフトウェア開発において異種
CASEツール間のデータの互換性をいかに保つかが重
要な技術課題であった。
【0004】この異種CASEツール間のデータの互換
性を実現するために、従来ポーティングとカプセル化と
いう手法が知られていた。
性を実現するために、従来ポーティングとカプセル化と
いう手法が知られていた。
【0005】ポーティングとは、あるCASEツールが
他の特定のCASEツールのデータを直接利用できるよ
うに、そのCASEツールのソース・コードを一部書き
換えてデータの互換性を実現する方法である。
他の特定のCASEツールのデータを直接利用できるよ
うに、そのCASEツールのソース・コードを一部書き
換えてデータの互換性を実現する方法である。
【0006】一方、カプセル化とは、CASEツールそ
のものの書き換えを行わず、それぞれ固有のデータ入出
力インターフェースおよびマンマシン・インターフェー
スを持つCASEツールを、標準のインターフェースを
持つリポジトリ環境およびユーザーインターフェース環
境に適合するように、CASEツールをとり囲むアプリ
ケーションを開発して、このアプリケーション上で各C
ASEツールを作動させる方法である。
のものの書き換えを行わず、それぞれ固有のデータ入出
力インターフェースおよびマンマシン・インターフェー
スを持つCASEツールを、標準のインターフェースを
持つリポジトリ環境およびユーザーインターフェース環
境に適合するように、CASEツールをとり囲むアプリ
ケーションを開発して、このアプリケーション上で各C
ASEツールを作動させる方法である。
【0007】図9は、上記カプセル化の概念を示してい
る。一般にカプセル化を利用したソフトウェア統合開発
は、複数の異なる種類のCASEツール61と、各CA
SEツールで開発したプログラムの一部分やデータ(以
下これらを総称してソフトウェアコンポーネントとい
う)を格納する共通のリポジトリ62と、ユーザーとの
入出力を行うユーザインターフェース63とによってソ
フトウェア統合開発環境を構成している。
る。一般にカプセル化を利用したソフトウェア統合開発
は、複数の異なる種類のCASEツール61と、各CA
SEツールで開発したプログラムの一部分やデータ(以
下これらを総称してソフトウェアコンポーネントとい
う)を格納する共通のリポジトリ62と、ユーザーとの
入出力を行うユーザインターフェース63とによってソ
フトウェア統合開発環境を構成している。
【0008】リポジトリ62は、このソフトウェア統合
開発環境で標準のリポジトリ・CASEツールインター
フェース62aを有している。また、ユーザインターフ
ェース63は、このソフトウェア統合開発環境で標準の
ユーザインターフェース・CASEツールインターフェ
ース63aを有している。
開発環境で標準のリポジトリ・CASEツールインター
フェース62aを有している。また、ユーザインターフ
ェース63は、このソフトウェア統合開発環境で標準の
ユーザインターフェース・CASEツールインターフェ
ース63aを有している。
【0009】図においてCASEツール61aとCAS
Eツール61bは、このソフトウェア統合開発環境のた
めに特に開発したCASEツールを示しており、図に示
すように、その入出力インターフェース71a,72
a,71b,72bは、それぞれリポジトリ・CASE
ツールインターフェース62aとユーザインターフェー
ス・CASEツールインターフェース63aに適合した
入出力形式を有している。
Eツール61bは、このソフトウェア統合開発環境のた
めに特に開発したCASEツールを示しており、図に示
すように、その入出力インターフェース71a,72
a,71b,72bは、それぞれリポジトリ・CASE
ツールインターフェース62aとユーザインターフェー
ス・CASEツールインターフェース63aに適合した
入出力形式を有している。
【0010】一方、一般の市場で入手可能な既製のCA
SEツール61cとCASEツール61dは、それぞれ
独特の入出力インターフェースを有しており、そのまま
ではこの環境のリポジトリ・CASEツールインターフ
ェース62aとユーザインターフェース・CASEツー
ルインターフェース63aに適合させることができな
い。
SEツール61cとCASEツール61dは、それぞれ
独特の入出力インターフェースを有しており、そのまま
ではこの環境のリポジトリ・CASEツールインターフ
ェース62aとユーザインターフェース・CASEツー
ルインターフェース63aに適合させることができな
い。
【0011】そこで、カプセル化とは、CASEツール
61c,61dの入出力をこの環境に標準のインターフ
ェース62a,63aに適合させるソフトウェア81,
82を開発し、このソフトウェア81,82を介して既
製のCASEツール61c,61dの入出力を他のCA
SEツールによって読み取り可能な入出力にすることで
ある。
61c,61dの入出力をこの環境に標準のインターフ
ェース62a,63aに適合させるソフトウェア81,
82を開発し、このソフトウェア81,82を介して既
製のCASEツール61c,61dの入出力を他のCA
SEツールによって読み取り可能な入出力にすることで
ある。
【0012】図に概念的に示すように、このソフトウェ
ア81,82は、CASEツール61c,61dを取り
囲み、かつ、リポジトリ・CASEツールインターフェ
ース62aとユーザインターフェース・CASEツール
インターフェース63aに適合する入出力インターフェ
ース81a,81b,82a,82bを有している。
ア81,82は、CASEツール61c,61dを取り
囲み、かつ、リポジトリ・CASEツールインターフェ
ース62aとユーザインターフェース・CASEツール
インターフェース63aに適合する入出力インターフェ
ース81a,81b,82a,82bを有している。
【0013】つまり、このカプセル化による異種CAS
Eツール間のデータ変換では、各CASEツールで生成
された外部ファイル等のデータは、カプセルという被覆
をかぶせられ、外部ファイルがその形式を保ったまま他
のCASEツールに取り込まれるのである。
Eツール間のデータ変換では、各CASEツールで生成
された外部ファイル等のデータは、カプセルという被覆
をかぶせられ、外部ファイルがその形式を保ったまま他
のCASEツールに取り込まれるのである。
【0014】
【発明が解決しようとする課題】しかしながら、上記ポ
ーティングによる方法はCASEツールのソースコード
を一部書き換えなければならないので、一般的にソフト
ウェアの統合開発環境を構築するのに大きな労力と時間
を必要とした。また、書き換えたCASEツールが正常
に作動しないことによる信頼性の低下の問題があった。
ーティングによる方法はCASEツールのソースコード
を一部書き換えなければならないので、一般的にソフト
ウェアの統合開発環境を構築するのに大きな労力と時間
を必要とした。また、書き換えたCASEツールが正常
に作動しないことによる信頼性の低下の問題があった。
【0015】また、書き換えのためにCASEツールの
ソースコードを入手しなければならず、場合によっては
これを書き換えることについてCASEツールのライセ
ンサーの許諾を得られない等の問題があった。
ソースコードを入手しなければならず、場合によっては
これを書き換えることについてCASEツールのライセ
ンサーの許諾を得られない等の問題があった。
【0016】これに対してカプセル化による方法は、実
現のための作業が比較的容易であるが、カプセル化がフ
ァイル単位で行われるので、これを取り込んだCASE
ツールでそのファイルを再利用するためにファイルのデ
ータを配置替え等して、そのCASEツールで実際に使
用可能の形式にデータを再構築しなければならない問題
があった。
現のための作業が比較的容易であるが、カプセル化がフ
ァイル単位で行われるので、これを取り込んだCASE
ツールでそのファイルを再利用するためにファイルのデ
ータを配置替え等して、そのCASEツールで実際に使
用可能の形式にデータを再構築しなければならない問題
があった。
【0017】このデータの再構築の作業は、ソフトウェ
ア統合開発環境の実現を困難にし、ソフトウェア統合開
発環境のデータの再利用性の低下を招いていた。
ア統合開発環境の実現を困難にし、ソフトウェア統合開
発環境のデータの再利用性の低下を招いていた。
【0018】さらに、カプセル化を利用したソフトウェ
アの統合開発環境では、一般にカプセルそのものを制御
対象にすることによってソフトウェア開発環境の動作を
制御するようにしていたので、開発環境の動作がわかり
にいという問題があった。
アの統合開発環境では、一般にカプセルそのものを制御
対象にすることによってソフトウェア開発環境の動作を
制御するようにしていたので、開発環境の動作がわかり
にいという問題があった。
【0019】また、上記両手法のいずれも、CASEツ
ールごとにプログラムを修正あるいはカプセル化しなけ
ればならないので、CASEツールを追加・変更するに
は大幅な統合環境の見直しを必要とし、CASEツール
を追加・変更が困難であった。
ールごとにプログラムを修正あるいはカプセル化しなけ
ればならないので、CASEツールを追加・変更するに
は大幅な統合環境の見直しを必要とし、CASEツール
を追加・変更が困難であった。
【0020】このことは、そのソフトウェアの統合開発
環境の汎用性を狭くし、ソフトウェアの開発途中でしば
しば生じるCASEツールの追加等の要求に柔軟に対応
できない問題を生じていた。
環境の汎用性を狭くし、ソフトウェアの開発途中でしば
しば生じるCASEツールの追加等の要求に柔軟に対応
できない問題を生じていた。
【0021】そこで、本発明の目的は上記従来のソフト
ウェアの統合開発環境の問題を解決し、簡単なプログラ
ム作業によって、異種CASEツールで取り扱うデータ
の同一性を維持でき、CASEツールの追加・変更にも
柔軟に対応できるソフトウェア統合開発システムと異種
CASEツール間のソフトウェア変換方法を提供するこ
とにある。
ウェアの統合開発環境の問題を解決し、簡単なプログラ
ム作業によって、異種CASEツールで取り扱うデータ
の同一性を維持でき、CASEツールの追加・変更にも
柔軟に対応できるソフトウェア統合開発システムと異種
CASEツール間のソフトウェア変換方法を提供するこ
とにある。
【0022】
【課題を解決するための手段】上記目的を達成するため
に本発明によるソフトウェア統合開発システムは、複数
の開発者と複数の異なる装置上で作動する複数の異なる
種類のCASEツールによって共通のソフトウェアを開
発する分散化型のソフトウェア統合開発システムにおい
て、複数の異なる種類のCASEツールと、所定のCA
SEツールで開発されたソフトウェアコンポーネントを
他のCASEツール形式に適合するソフトウェアコンポ
ーネントに変換するとともに各CASEツールを制御す
る統合ツールと、前記CASEツールと統合ツールの通
信メッセージをやりとりする通信ツールと、前記CAS
Eツールと統合ツールが生成したソフトウェアコンポー
ネントを格納するリポジトリとを有し、前記CASEツ
ールと、統合ツールと、通信ツールと、リポジトリは、
それぞれ入出力ポートと通信メッセージの意味を解釈す
る解釈部を備えたエージェント・アプリケーションとと
もに作動するツールエージェントと、統合エージェント
と、通信エージェントと、リポジトリエージェントに構
成され、前記ツールエージェントと、統合エージェント
と、通信エージェントと、リポジトリエージェントは、
前記通信エージェントを介して所定のツールエージェン
トによって生成されたソフトウェアコンポーネントを前
記リポジトリエージェントに格納し、このソフトウェア
コンポーネントを前記統合エージェントによって他のツ
ールエージェント形式のソフトウェアコンポーネントに
変換し、この変換されたソフトウェアコンポーネントを
前記統合ツールによって制御された変換先のツールエー
ジェントによって処理するように構成されていることを
特徴とするものである。
に本発明によるソフトウェア統合開発システムは、複数
の開発者と複数の異なる装置上で作動する複数の異なる
種類のCASEツールによって共通のソフトウェアを開
発する分散化型のソフトウェア統合開発システムにおい
て、複数の異なる種類のCASEツールと、所定のCA
SEツールで開発されたソフトウェアコンポーネントを
他のCASEツール形式に適合するソフトウェアコンポ
ーネントに変換するとともに各CASEツールを制御す
る統合ツールと、前記CASEツールと統合ツールの通
信メッセージをやりとりする通信ツールと、前記CAS
Eツールと統合ツールが生成したソフトウェアコンポー
ネントを格納するリポジトリとを有し、前記CASEツ
ールと、統合ツールと、通信ツールと、リポジトリは、
それぞれ入出力ポートと通信メッセージの意味を解釈す
る解釈部を備えたエージェント・アプリケーションとと
もに作動するツールエージェントと、統合エージェント
と、通信エージェントと、リポジトリエージェントに構
成され、前記ツールエージェントと、統合エージェント
と、通信エージェントと、リポジトリエージェントは、
前記通信エージェントを介して所定のツールエージェン
トによって生成されたソフトウェアコンポーネントを前
記リポジトリエージェントに格納し、このソフトウェア
コンポーネントを前記統合エージェントによって他のツ
ールエージェント形式のソフトウェアコンポーネントに
変換し、この変換されたソフトウェアコンポーネントを
前記統合ツールによって制御された変換先のツールエー
ジェントによって処理するように構成されていることを
特徴とするものである。
【0023】また、本発明の異種CASEツール間のソ
フトウェア変換方法は、変換元のCASEツールの出力
を構文解析してそのCASEツール固有のツールデータ
モデルにデータを配置替えし、次にマッピングとデータ
要素間のリンクを行って前記変換元ツールデータモデル
を他のCASEツールのデータと意味対応可能な変換元
共通データモデルに変換し、次に意味対応と新たなデー
タ要素間のリンクを行って前記変換元共通データモデル
を変換先共通データモデルに変換し、次にマッピングを
行って前記変換先共通データモデルを変換先のCASE
ツールに固有な変換先ツールデータモデルに変換し、次
に前記変換先ツールデータモデルを解析して変換先のC
ASEツールの入力に変換することを特徴とするもので
ある。
フトウェア変換方法は、変換元のCASEツールの出力
を構文解析してそのCASEツール固有のツールデータ
モデルにデータを配置替えし、次にマッピングとデータ
要素間のリンクを行って前記変換元ツールデータモデル
を他のCASEツールのデータと意味対応可能な変換元
共通データモデルに変換し、次に意味対応と新たなデー
タ要素間のリンクを行って前記変換元共通データモデル
を変換先共通データモデルに変換し、次にマッピングを
行って前記変換先共通データモデルを変換先のCASE
ツールに固有な変換先ツールデータモデルに変換し、次
に前記変換先ツールデータモデルを解析して変換先のC
ASEツールの入力に変換することを特徴とするもので
ある。
【0024】
【作用】本発明によるソフトウェア統合開発システム
は、CASEツールと統合ツールと通信ツールとリポジ
トリをそれぞれエージェント化し、これらエージェント
が通信エージェントを介して制御メッセージや開発デー
タをやり取りして独立に作動するように構成されてい
る。エージェント間の作動の順序は、統合エージェント
によって制御され、統合開発システム全体として所定の
処理の流れを有するように統合されている。
は、CASEツールと統合ツールと通信ツールとリポジ
トリをそれぞれエージェント化し、これらエージェント
が通信エージェントを介して制御メッセージや開発デー
タをやり取りして独立に作動するように構成されてい
る。エージェント間の作動の順序は、統合エージェント
によって制御され、統合開発システム全体として所定の
処理の流れを有するように統合されている。
【0025】上記のように、本発明のソフトウェア統合
開発システムはシステムを構成する各ツールがモジュー
ル化されているので、ツールを変更・追加するときは、
入出力ポートと通信メッセージを解釈する解釈部を有す
るエージェント・アプリケーションを作成して、変更・
追加にかかるツールをエージェント化するとともに、統
合エージェントの制御プログラムを一部変更することに
よってツールを変更・追加することができる。
開発システムはシステムを構成する各ツールがモジュー
ル化されているので、ツールを変更・追加するときは、
入出力ポートと通信メッセージを解釈する解釈部を有す
るエージェント・アプリケーションを作成して、変更・
追加にかかるツールをエージェント化するとともに、統
合エージェントの制御プログラムを一部変更することに
よってツールを変更・追加することができる。
【0026】このツールのエージェント化の作業は、主
にそのツールに適合するエージェント・アプリケーショ
ンを作成することであり、一般的にその作業は各ツール
自体のプログラムを修正するよりはるかに容易に行うこ
とができる。
にそのツールに適合するエージェント・アプリケーショ
ンを作成することであり、一般的にその作業は各ツール
自体のプログラムを修正するよりはるかに容易に行うこ
とができる。
【0027】また、本発明の統合開発システムでは、統
合ツールが各CASEツールを直接制御し、システムの
動作が簡明であり、かつ、統合ツールの高い記述能力を
利用して制御プログラムを書き直すことができるので、
統合ツールの変更も比較的容易である。
合ツールが各CASEツールを直接制御し、システムの
動作が簡明であり、かつ、統合ツールの高い記述能力を
利用して制御プログラムを書き直すことができるので、
統合ツールの変更も比較的容易である。
【0028】これにより、本発明のソフトウェア統合開
発システムは、使用したいツールを必要に応じて容易に
組み変えることが可能であり、汎用性が高い統合開発シ
ステムを得ることができる。
発システムは、使用したいツールを必要に応じて容易に
組み変えることが可能であり、汎用性が高い統合開発シ
ステムを得ることができる。
【0029】また、本発明による異種CASEツール間
のソフトウェア変換方法によれば、CASEツールの外
部ファイルのデータをマッピング、リンク等によって他
のCASEツールのデータと意味対応可能な共通データ
モデルに再配置し、この変換元の共通データモデルのデ
ータを意味対応によって変換先のCASEツールの共通
データモデルに変換し、この変換先共通データモデルを
またマッピング、解析によって変換先のCASEツール
のファイルに変換するので、各CASEツールは、その
CASEツール固有の形式のデータを取り扱いながら、
内容的に他のCASEツールと実質的に同一のデータを
取り扱うことができる。このことによって、ソフトウェ
アの統合開発でもっとも重要なデータの再利用性・整合
性を実現することができる。
のソフトウェア変換方法によれば、CASEツールの外
部ファイルのデータをマッピング、リンク等によって他
のCASEツールのデータと意味対応可能な共通データ
モデルに再配置し、この変換元の共通データモデルのデ
ータを意味対応によって変換先のCASEツールの共通
データモデルに変換し、この変換先共通データモデルを
またマッピング、解析によって変換先のCASEツール
のファイルに変換するので、各CASEツールは、その
CASEツール固有の形式のデータを取り扱いながら、
内容的に他のCASEツールと実質的に同一のデータを
取り扱うことができる。このことによって、ソフトウェ
アの統合開発でもっとも重要なデータの再利用性・整合
性を実現することができる。
【0030】また、各CASEツールで個別にデータを
再利用するために取り込んだデータを解析する機構を用
意する必要がないので、全体として少ない作業で異種C
ASEツール間のソフトウェア変換を実現することがで
きる。
再利用するために取り込んだデータを解析する機構を用
意する必要がないので、全体として少ない作業で異種C
ASEツール間のソフトウェア変換を実現することがで
きる。
【0031】
【実施例】次に本発明によるソフトウェア統合開発シス
テムと異種CASEツール間のソフトウェア変換方法の
一例を添付の図面を用いて以下に説明する。
テムと異種CASEツール間のソフトウェア変換方法の
一例を添付の図面を用いて以下に説明する。
【0032】図1は、本発明の一実施例によるソフトウ
ェア統合開発システムの構成を示している。本発明によ
るソフトウェア統合開発システムは、各種CASEツー
ルをエージェント化したツールエージェント1(1a,
1b,1c,1d,1e,1fを含む)と、通信ツール
をエージェント化した通信エージェント2と、統合ツー
ルをエージェント化した統合エージェント3と、リポジ
トリをエージェント化したリポジトリエージェント4と
によって構成されている。
ェア統合開発システムの構成を示している。本発明によ
るソフトウェア統合開発システムは、各種CASEツー
ルをエージェント化したツールエージェント1(1a,
1b,1c,1d,1e,1fを含む)と、通信ツール
をエージェント化した通信エージェント2と、統合ツー
ルをエージェント化した統合エージェント3と、リポジ
トリをエージェント化したリポジトリエージェント4と
によって構成されている。
【0033】これら各エージェントは、具体的にはネッ
トワークで結ばれたコンピュータや記憶装置上でそれぞ
れ作動するように構成されており、以下の説明ではそれ
ぞれのエージェントの挙動を制御するように説明する
が、実際にはシステムを構成する各装置の挙動を含めて
制御することは言うまでもない。
トワークで結ばれたコンピュータや記憶装置上でそれぞ
れ作動するように構成されており、以下の説明ではそれ
ぞれのエージェントの挙動を制御するように説明する
が、実際にはシステムを構成する各装置の挙動を含めて
制御することは言うまでもない。
【0034】本実施例では、ツールエージェント1は、
使用目的によってコード生成用ツールエージェント1
a、設計用ツールエージェント1b、要求分析用ツール
エージェント1c、文書作成用ツールエージェント1
d、構成管理用ツールエージェント1e、プロジェクト
管理用ツールエージェント1fに分けられる。
使用目的によってコード生成用ツールエージェント1
a、設計用ツールエージェント1b、要求分析用ツール
エージェント1c、文書作成用ツールエージェント1
d、構成管理用ツールエージェント1e、プロジェクト
管理用ツールエージェント1fに分けられる。
【0035】統合エージェント3は、各ツールエージェ
ントで開発したプログラムの一部やデータファイル(ソ
フトウェアコンポーネント)を統合するデータ統合エー
ジェント5と、各ツールエージェントの制御を統合する
コントロール統合エージェント6と、リポジトリエージ
ェント4、データ統合エージェント5、コントロール統
合エージェント6の状態からツールエージェント1の作
動を制御するプロセス統合エージェント7とを有してい
る。
ントで開発したプログラムの一部やデータファイル(ソ
フトウェアコンポーネント)を統合するデータ統合エー
ジェント5と、各ツールエージェントの制御を統合する
コントロール統合エージェント6と、リポジトリエージ
ェント4、データ統合エージェント5、コントロール統
合エージェント6の状態からツールエージェント1の作
動を制御するプロセス統合エージェント7とを有してい
る。
【0036】リポジトリエージェント4は、各ツールエ
ージェント1で開発したソフトウェアコンポーネント
(この実施例ではデータオブジェクトとして表現してい
る)、或いはデータ統合エージェント5で変換したソフ
トウェアコンポーネントを格納している。
ージェント1で開発したソフトウェアコンポーネント
(この実施例ではデータオブジェクトとして表現してい
る)、或いはデータ統合エージェント5で変換したソフ
トウェアコンポーネントを格納している。
【0037】本実施例のソフトウェア統合開発環境で
は、各ツールエージェントがコントロール統合エージェ
ント6の制御の下、それぞれソフトウェアコンポーネン
トを開発し、これをリポジトリエージェント4に格納す
る。
は、各ツールエージェントがコントロール統合エージェ
ント6の制御の下、それぞれソフトウェアコンポーネン
トを開発し、これをリポジトリエージェント4に格納す
る。
【0038】このリポジトリエージェント4に格納され
たソフトウェアコンポーネントに対し、データ統合エー
ジェント5がアクセスし、次に処理を行うツールエージ
ェントで処理可能な形式にソフトウェアコンポーネント
を変換し、これを再びリポジトリエージェント4に格納
する。
たソフトウェアコンポーネントに対し、データ統合エー
ジェント5がアクセスし、次に処理を行うツールエージ
ェントで処理可能な形式にソフトウェアコンポーネント
を変換し、これを再びリポジトリエージェント4に格納
する。
【0039】プロセス統合エージェント7は、データ統
合エージェント5の変換作業の終了を検知し、コントロ
ール統合エージェント6に信号を送ってこれによって次
のツールエージェントを起動する。このツールエージェ
ントによって、変換後のソフトウェアコンポーネントが
読み出され、読み出したツールエージェント上でソフト
ウェアの開発が継続される。
合エージェント5の変換作業の終了を検知し、コントロ
ール統合エージェント6に信号を送ってこれによって次
のツールエージェントを起動する。このツールエージェ
ントによって、変換後のソフトウェアコンポーネントが
読み出され、読み出したツールエージェント上でソフト
ウェアの開発が継続される。
【0040】上記エージェント間の制御命令やデータを
含む通信メッセージは、すべて通信エージェント2を介
して行われる。
含む通信メッセージは、すべて通信エージェント2を介
して行われる。
【0041】上述のような処理が規則正しく行われるの
は、各ツールがエージェント化され、全体として統合エ
ージェント3に制御されているからである。そこで、以
下にエージェント化について図2を用いて説明する。
は、各ツールがエージェント化され、全体として統合エ
ージェント3に制御されているからである。そこで、以
下にエージェント化について図2を用いて説明する。
【0042】図2は、ツールエージェント1の構成を示
している。図に拡大して示すように、ツールエージェン
ト1は、CASEツール8と、解釈部9a,9b、ポー
ト10a,10bを有するエージェント・アプリケーシ
ョン11とからなる。
している。図に拡大して示すように、ツールエージェン
ト1は、CASEツール8と、解釈部9a,9b、ポー
ト10a,10bを有するエージェント・アプリケーシ
ョン11とからなる。
【0043】ポート10a,10bは他の要素との通信
メッセージを入出力でき、解釈部9a,9bはこの通信
メッセージをCASEツールあるいは通信相手にとって
意味あるメッセージ列に解釈する。
メッセージを入出力でき、解釈部9a,9bはこの通信
メッセージをCASEツールあるいは通信相手にとって
意味あるメッセージ列に解釈する。
【0044】CASEツール8自体は、通信メッセージ
を処理するCASEツール本体8aと、ユーザーとの入
出力を行うユーザーインターフェース8bと、CASE
ツール自体のデータを格納するデータファイル8cとを
有している。
を処理するCASEツール本体8aと、ユーザーとの入
出力を行うユーザーインターフェース8bと、CASE
ツール自体のデータを格納するデータファイル8cとを
有している。
【0045】エージェント化とは上記のように、通信メ
ッセージ解釈用の解釈部と通信メッセージを入出力する
ポートを備えたエージェント・アプリケーションを開発
し、このエージェント・アプリケーション上で各種ツー
ル(通信ツール、統合ツール、リポジトリ等を含む)を
作動させることである。
ッセージ解釈用の解釈部と通信メッセージを入出力する
ポートを備えたエージェント・アプリケーションを開発
し、このエージェント・アプリケーション上で各種ツー
ル(通信ツール、統合ツール、リポジトリ等を含む)を
作動させることである。
【0046】上記エージェントを利用した問題解決シス
テムとは、複数のエージェントによってシステムを構成
し、各エージェントはポートに送られた通信メッセージ
によって独立に作動するようにし、入力用ポートに対し
てはアクセス権を設定してアクセス権を持つエージェン
トのみがそのポートに通信メッセージを送信することが
でき、通信メッセージを受け取ったエージェントは、処
理を行って処理結果を出力用ポートを介して他のエージ
ェントに送信するように構成したシステムである。この
ようなエージェントの機能を適当に組み合わせることに
よって、一つの問題解決のための処理フローを構築する
ことができるのである。
テムとは、複数のエージェントによってシステムを構成
し、各エージェントはポートに送られた通信メッセージ
によって独立に作動するようにし、入力用ポートに対し
てはアクセス権を設定してアクセス権を持つエージェン
トのみがそのポートに通信メッセージを送信することが
でき、通信メッセージを受け取ったエージェントは、処
理を行って処理結果を出力用ポートを介して他のエージ
ェントに送信するように構成したシステムである。この
ようなエージェントの機能を適当に組み合わせることに
よって、一つの問題解決のための処理フローを構築する
ことができるのである。
【0047】本実施例では、プロセス統合エージェント
7が環境全体の作動を制御し、コントロール統合エージ
ェント6によって各ツールエージェント1を起動し、起
動されたツールエージェント1は所定の処理を行って
は、その処理結果をリポジトリエージェント4に格納す
る。
7が環境全体の作動を制御し、コントロール統合エージ
ェント6によって各ツールエージェント1を起動し、起
動されたツールエージェント1は所定の処理を行って
は、その処理結果をリポジトリエージェント4に格納す
る。
【0048】プロセス統合エージェント7は、上記ツー
ルエージェント1の処理終了を通信メッセージによって
検知し、データ統合エージェント5を起動して、先のツ
ールエージェント1が生成したソフトウェアコンポーネ
ントを次のツールエージェント1で処理可能な形式に変
換して、これを再びリポジトリエージェント4に格納す
る。
ルエージェント1の処理終了を通信メッセージによって
検知し、データ統合エージェント5を起動して、先のツ
ールエージェント1が生成したソフトウェアコンポーネ
ントを次のツールエージェント1で処理可能な形式に変
換して、これを再びリポジトリエージェント4に格納す
る。
【0049】次に、プロセス統合エージェント7は、デ
ータ統合エージェント5、コントロール統合エージェン
ト6、リポジトリエージェント4の状態を検知し、全体
的なソフトウェア開発の流れに沿ってコントロール統合
エージェント6にメッセージを送り、コントロール統合
エージェント6によって次のツールエージェント1を起
動し、変換されたソフトウェアコンポーネントを読み出
して処理を行う。
ータ統合エージェント5、コントロール統合エージェン
ト6、リポジトリエージェント4の状態を検知し、全体
的なソフトウェア開発の流れに沿ってコントロール統合
エージェント6にメッセージを送り、コントロール統合
エージェント6によって次のツールエージェント1を起
動し、変換されたソフトウェアコンポーネントを読み出
して処理を行う。
【0050】以上の制御命令とデータを含む通信メッセ
ージは、すべて通信エージェント2を介してやり取りさ
れる。
ージは、すべて通信エージェント2を介してやり取りさ
れる。
【0051】上記ソフトウェア統合開発環境を構築する
ためのエージェント化のプログラム開発は、主に入出力
ポートと解釈部を付加することであり、比較的容易に行
うことができる。これにより、本発明のソフトウェア統
合開発システムは、CASEツールのプログラムそのも
のを修正する従来の方法に比べて簡単に構築することが
できる。
ためのエージェント化のプログラム開発は、主に入出力
ポートと解釈部を付加することであり、比較的容易に行
うことができる。これにより、本発明のソフトウェア統
合開発システムは、CASEツールのプログラムそのも
のを修正する従来の方法に比べて簡単に構築することが
できる。
【0052】また、本発明のソフトウェア統合開発環境
は、各ツールを修正することなく、これらをエージェン
ト化して互いに連結しているので、各エージェントのモ
ジュール性が高く、CASEツールの追加・変更を比較
的簡単に行うことができる。これによって、汎用性・柔
軟性に富んだソフトウェア統合開発環境を得ることがで
きる。
は、各ツールを修正することなく、これらをエージェン
ト化して互いに連結しているので、各エージェントのモ
ジュール性が高く、CASEツールの追加・変更を比較
的簡単に行うことができる。これによって、汎用性・柔
軟性に富んだソフトウェア統合開発環境を得ることがで
きる。
【0053】さらに、後述するように本発明によるデー
タ統合エージェントは、各CASEツールの出力を意味
的・構造的に解析し、データそのものを再構築して他の
CASEツールがそのまま利用可能な形式にするので、
プログラム開発データの再利用性が高く、通信によって
各エージェントがリアルタイムで連結されるエージェン
ト化システムの作用と相まって、各ツールエージェント
が最新かつ実質的に内容が同一のデータを取り扱うこと
ができ、きわめて効率が高いソフトウェア開発を実現す
るソフトウェア統合開発環境を得ることができる。
タ統合エージェントは、各CASEツールの出力を意味
的・構造的に解析し、データそのものを再構築して他の
CASEツールがそのまま利用可能な形式にするので、
プログラム開発データの再利用性が高く、通信によって
各エージェントがリアルタイムで連結されるエージェン
ト化システムの作用と相まって、各ツールエージェント
が最新かつ実質的に内容が同一のデータを取り扱うこと
ができ、きわめて効率が高いソフトウェア開発を実現す
るソフトウェア統合開発環境を得ることができる。
【0054】次に、上記ソフトウェア統合開発環境の実
現に欠かせない本発明による異種CASEツール間のソ
フトウェア変換について説明する。
現に欠かせない本発明による異種CASEツール間のソ
フトウェア変換について説明する。
【0055】図3は、オブジェクト指向分析型ツールエ
ージェントの出力をERモデリング型ツールエージェン
ト形式の入力に変換するのを例として、本発明の異種C
ASEツール間のソフトウェア変換を説明した流れ図で
ある。
ージェントの出力をERモデリング型ツールエージェン
ト形式の入力に変換するのを例として、本発明の異種C
ASEツール間のソフトウェア変換を説明した流れ図で
ある。
【0056】この例では、オブジェクト指向分析ツール
エージェント1mの外部出力ファイル1m2は、データ統
合エージェント5を介してERモデリングツールエージ
ェント1nのディクショナリ1n2に変換される流れを示
している。
エージェント1mの外部出力ファイル1m2は、データ統
合エージェント5を介してERモデリングツールエージ
ェント1nのディクショナリ1n2に変換される流れを示
している。
【0057】オブジェクト指向分析ツールエージェント
1mは、オブジェクト指向分析ツール1m1と外部出力フ
ァイル1m2とリポジトリ1m3を有し、ERモデリングツ
ールエージェント1nは、ERモデリングツール1n1と
ディクショナリ1n2とを有している。
1mは、オブジェクト指向分析ツール1m1と外部出力フ
ァイル1m2とリポジトリ1m3を有し、ERモデリングツ
ールエージェント1nは、ERモデリングツール1n1と
ディクショナリ1n2とを有している。
【0058】一方、データ統合エージェント5は、入力
パーサ21と、第一同種間変換ルール22と、異種間変
換ルール23と、第二同種間変換ルール24と、出力パ
ーサ25とを有している。
パーサ21と、第一同種間変換ルール22と、異種間変
換ルール23と、第二同種間変換ルール24と、出力パ
ーサ25とを有している。
【0059】データ統合エージェント5は、入力パーサ
21によってオブジェクト指向分析ツールエージェント
1mの外部出力ファイル1m2を読み込み、データ部分を
抽出してオブジェクト指向分析ツールに固有のオブジェ
クト指向分析ツールデータモデル31にデータを配置替
えする。
21によってオブジェクト指向分析ツールエージェント
1mの外部出力ファイル1m2を読み込み、データ部分を
抽出してオブジェクト指向分析ツールに固有のオブジェ
クト指向分析ツールデータモデル31にデータを配置替
えする。
【0060】次に、データ統合エージェント5は、第一
同種間変換ルール22によってオブジェクト指向分析ツ
ールデータモデル31のデータを他のCASEツールに
よるデータモデルと意味対応が可能なオブジェクト指向
分析手法共通データモデル32の各部に再配置し、か
つ、データモデル間の整合性をとるためにデータ要素間
のリンクを行う。
同種間変換ルール22によってオブジェクト指向分析ツ
ールデータモデル31のデータを他のCASEツールに
よるデータモデルと意味対応が可能なオブジェクト指向
分析手法共通データモデル32の各部に再配置し、か
つ、データモデル間の整合性をとるためにデータ要素間
のリンクを行う。
【0061】次に、データ統合エージェント5は、異種
間変換ルール23によってオブジェクト指向分析手法共
通データモデル32の各データとERモデリングツール
手法共通データモデル33の各データをデータの意味に
よって対応させ、ERモデリングツール手法共通データ
モデル33に変換する。この際、ERモデリング手法で
のデータの整合性をとるために新たにデータ要素間のリ
ンクを行う。
間変換ルール23によってオブジェクト指向分析手法共
通データモデル32の各データとERモデリングツール
手法共通データモデル33の各データをデータの意味に
よって対応させ、ERモデリングツール手法共通データ
モデル33に変換する。この際、ERモデリング手法で
のデータの整合性をとるために新たにデータ要素間のリ
ンクを行う。
【0062】次に、データ統合エージェント5は、第二
同種間変換ルール24によってERモデリングツール手
法共通データモデル33のデータを、ERモデリング手
法固有のERモデリングツールデータモデル34に配置
・格納する。
同種間変換ルール24によってERモデリングツール手
法共通データモデル33のデータを、ERモデリング手
法固有のERモデリングツールデータモデル34に配置
・格納する。
【0063】最後に、データ統合エージェント5は、出
力パーサ25によってERモデリングツールデータモデ
ル34のデータを編集してERモデリング手法のディク
ショナリ形式のデータとしてディクショナリ1n2に出力
する。
力パーサ25によってERモデリングツールデータモデ
ル34のデータを編集してERモデリング手法のディク
ショナリ形式のデータとしてディクショナリ1n2に出力
する。
【0064】次に具体的なデータを例として、上記異種
間CASEツール間のソフトウェア変換についてさらに
具体的に説明する。
間CASEツール間のソフトウェア変換についてさらに
具体的に説明する。
【0065】図4は、オブジェクト指向分析ツールエー
ジェントの外部出力ファイルが入力パーサ21を介して
オブジェクト指向分析ツールデータモデル31に配置さ
れるところを示している。
ジェントの外部出力ファイルが入力パーサ21を介して
オブジェクト指向分析ツールデータモデル31に配置さ
れるところを示している。
【0066】オブジェクト指向分析ツールエージェント
1mは、オブジェクト40を生成し、このオブジェクト
40からクラスに関する外部出力ファイル1m2,aと属性
に関する外部出力ファイル1m2,bが出力される。外部出
力ファイル1m2,aは多数のクラスデータを有し、図中に
はクラス名”Product”、id”20”、属性リ
スト”name,code”、コメント”商品”からな
るクラスデータ41が例示されている。同様に、外部出
力ファイル1m2,bの属性データとして、属性名”cod
e”、id”50”、クラス”Product”、コメ
ント”商品名”の属性データ42が例示されている。
1mは、オブジェクト40を生成し、このオブジェクト
40からクラスに関する外部出力ファイル1m2,aと属性
に関する外部出力ファイル1m2,bが出力される。外部出
力ファイル1m2,aは多数のクラスデータを有し、図中に
はクラス名”Product”、id”20”、属性リ
スト”name,code”、コメント”商品”からな
るクラスデータ41が例示されている。同様に、外部出
力ファイル1m2,bの属性データとして、属性名”cod
e”、id”50”、クラス”Product”、コメ
ント”商品名”の属性データ42が例示されている。
【0067】データ統合エージェント5の入力パーサ2
1は、外部出力ファイル1m2,aと外部出力ファイル1m
2,bを読み込み、構文解析によってファイルからデータ
41,42を抽出し、オブジェクト指向分析手法による
データモデル31の所定位置に格納する。
1は、外部出力ファイル1m2,aと外部出力ファイル1m
2,bを読み込み、構文解析によってファイルからデータ
41,42を抽出し、オブジェクト指向分析手法による
データモデル31の所定位置に格納する。
【0068】この場合、クラスデータ41は、オブジェ
クト指向分析ツールデータモデル31の階層”HLCl
ass”のid20の場所にデータ43として格納さ
れ、属性データ42は、階層”HLAttribut
e”のid50の場所にデータ44として格納される。
クト指向分析ツールデータモデル31の階層”HLCl
ass”のid20の場所にデータ43として格納さ
れ、属性データ42は、階層”HLAttribut
e”のid50の場所にデータ44として格納される。
【0069】次に、図5に示すように、オブジェクト指
向分析ツールデータモデル31は第一同種間変換ルール
22によってERモデリング手法による共通データモデ
ルと意味対応可能なオブジェクト指向分析手法共通デー
タモデル32に変換される。
向分析ツールデータモデル31は第一同種間変換ルール
22によってERモデリング手法による共通データモデ
ルと意味対応可能なオブジェクト指向分析手法共通デー
タモデル32に変換される。
【0070】データ43は、オブジェクト指向分析手法
共通データモデル32の階層OOClassのid10
020の場所にデータ45として格納され、データ44
は、オブジェクト指向分析手法共通データモデル32の
階層OOAttributeのid10050の場所に
データ46として格納される。このようにツールデータ
モデルから共通データモデルの所定場所にデータを再配
置する操作をマッピングという。
共通データモデル32の階層OOClassのid10
020の場所にデータ45として格納され、データ44
は、オブジェクト指向分析手法共通データモデル32の
階層OOAttributeのid10050の場所に
データ46として格納される。このようにツールデータ
モデルから共通データモデルの所定場所にデータを再配
置する操作をマッピングという。
【0071】オブジェクト指向分析手法共通データモデ
ル32では、階層OOClassのid10020の場
所のデータは属性というデータ要素を有しておらず、階
層OOAttributeのid10050の場所のデ
ータはクラスというデータ要素を有していないので、デ
ータ43とデータ45、及びデータ44とデータ46の
整合性をとるために、図5の矢印Rに示すようにデータ
45の空のデータ要素”属性”をデータ46にリンクさ
せ、かつ、データ46の空のデータ要素”クラス”をデ
ータ45にリンクさせている。このリンクによってデー
タ45とデータ46と元のオブジェクト40の同一性が
保証されるのである。
ル32では、階層OOClassのid10020の場
所のデータは属性というデータ要素を有しておらず、階
層OOAttributeのid10050の場所のデ
ータはクラスというデータ要素を有していないので、デ
ータ43とデータ45、及びデータ44とデータ46の
整合性をとるために、図5の矢印Rに示すようにデータ
45の空のデータ要素”属性”をデータ46にリンクさ
せ、かつ、データ46の空のデータ要素”クラス”をデ
ータ45にリンクさせている。このリンクによってデー
タ45とデータ46と元のオブジェクト40の同一性が
保証されるのである。
【0072】実際の統合開発システムでは、上記共通デ
ータモデル32が完成した段階で、この共通データモデ
ル32と元の外部出力ファイル1m2,a,1m2,bの整合性
をツールデータモデル31を介して所定のルールによっ
て全体的にチェックする。
ータモデル32が完成した段階で、この共通データモデ
ル32と元の外部出力ファイル1m2,a,1m2,bの整合性
をツールデータモデル31を介して所定のルールによっ
て全体的にチェックする。
【0073】次に、オブジェクト指向分析手法共通デー
タモデル32は、図6に示すように、異種間変換ルール
23によってERモデリングツール手法共通データモデ
ル33に変換される。
タモデル32は、図6に示すように、異種間変換ルール
23によってERモデリングツール手法共通データモデ
ル33に変換される。
【0074】この変換では、オブジェクト指向分析手法
共通データモデル32の階層OOClassと階層OO
Attributeは、それぞれERモデリングツール
手法共通データモデル33の階層ERAEntityと
階層ERAAttributeと意味的に同値であるの
で、データ45とデータ46は、それぞれERモデリン
グツール手法共通データモデル33のデータ51とデー
タ52に変換される。
共通データモデル32の階層OOClassと階層OO
Attributeは、それぞれERモデリングツール
手法共通データモデル33の階層ERAEntityと
階層ERAAttributeと意味的に同値であるの
で、データ45とデータ46は、それぞれERモデリン
グツール手法共通データモデル33のデータ51とデー
タ52に変換される。
【0075】ERモデリングツール手法共通データモデ
ル33において、上述したようにデータ間の整合性をと
るためにリンクR’が新たに行われる。
ル33において、上述したようにデータ間の整合性をと
るためにリンクR’が新たに行われる。
【0076】この時も、上記共通データモデル33が完
成した段階で共通データモデル32,33の間の整合性
を所定のルールによって全体的にチェックする。
成した段階で共通データモデル32,33の間の整合性
を所定のルールによって全体的にチェックする。
【0077】次に、図7に示すように、ERモデリング
ツール手法共通データモデル33は、第二同種間変換ル
ール24によってERモデリングツールデータモデル3
4に変換される。
ツール手法共通データモデル33は、第二同種間変換ル
ール24によってERモデリングツールデータモデル3
4に変換される。
【0078】この変換では、共通データモデルのデータ
を変換先のCASEツールの手法の固有のツールデータ
モデルにデータの配置替えを行う。この変換で、ERモ
デリングツール手法共通データモデル33の階層ERA
Entityのデータ51は、ERモデリングツールデ
ータモデル34の階層MLEntityTypeのデー
タ53に変換され、データ要素 ”属性,500”が付
加される。
を変換先のCASEツールの手法の固有のツールデータ
モデルにデータの配置替えを行う。この変換で、ERモ
デリングツール手法共通データモデル33の階層ERA
Entityのデータ51は、ERモデリングツールデ
ータモデル34の階層MLEntityTypeのデー
タ53に変換され、データ要素 ”属性,500”が付
加される。
【0079】このデータ要素 ”属性,500”は、E
Rモデリングツール手法共通データモデル33でデータ
51がリンクR’によってリンクされたデータ52の変
換先の位置を示している。
Rモデリングツール手法共通データモデル33でデータ
51がリンクR’によってリンクされたデータ52の変
換先の位置を示している。
【0080】同様に、ERモデリングツール手法共通デ
ータモデル33の階層ERAAttributeのデー
タ52は、ERモデリングツールデータモデル34の階
層MLAttributeのデータ54に変換され、デ
ータ要素 ”エンティティタイプ,249”が付加され
る。このデータ要素 ”エンティティタイプ,249
は、ERモデリングツールデータモデル34におけるデ
ータ53の位置を示している。
ータモデル33の階層ERAAttributeのデー
タ52は、ERモデリングツールデータモデル34の階
層MLAttributeのデータ54に変換され、デ
ータ要素 ”エンティティタイプ,249”が付加され
る。このデータ要素 ”エンティティタイプ,249
は、ERモデリングツールデータモデル34におけるデ
ータ53の位置を示している。
【0081】このERモデリングツールデータモデル3
4では、データは個別に完全な形を有し、ERモデリン
グ手法の階層構造の内部に格納され、必要に応じてデー
タの整合性チェックが行われる。
4では、データは個別に完全な形を有し、ERモデリン
グ手法の階層構造の内部に格納され、必要に応じてデー
タの整合性チェックが行われる。
【0082】次に、図8に示すように、出力パーサ25
がERモデリングツールデータモデル34の階層構造の
意味を解析してデータを抽出し、ERモデリングツール
エージェント1nのディクショナリ1n2形式にデータを
変換し、ディクショナリ1n2に出力する。
がERモデリングツールデータモデル34の階層構造の
意味を解析してデータを抽出し、ERモデリングツール
エージェント1nのディクショナリ1n2形式にデータを
変換し、ディクショナリ1n2に出力する。
【0083】この変換では、データ53とデータ54は
それぞれディクショナリ1n2のエンティティタイプテー
ブル55と属性テーブル56のデータとして出力され
る。
それぞれディクショナリ1n2のエンティティタイプテー
ブル55と属性テーブル56のデータとして出力され
る。
【0084】このディクショナリデータからERモデリ
ングツールエージェント1nはプロダクトとしてのエン
ティティ50を画面上に表示する。
ングツールエージェント1nはプロダクトとしてのエン
ティティ50を画面上に表示する。
【0085】上述したことから明らかなように、本発明
の異種CASEツール間のソフトウェア変換の方法によ
れば、変換元のCASEツールの出力は、データの整合
性を保ちつつ変換先のCASEツール形式の入力に完全
に変換されるので、変換先CASEツールは変換された
その入力をそのまま利用でき、データの再利用性が極め
て高い。
の異種CASEツール間のソフトウェア変換の方法によ
れば、変換元のCASEツールの出力は、データの整合
性を保ちつつ変換先のCASEツール形式の入力に完全
に変換されるので、変換先CASEツールは変換された
その入力をそのまま利用でき、データの再利用性が極め
て高い。
【0086】また、変換のために各CASEツールのプ
ログラムを修正する必要がないので、データ統合エージ
ェント5の作成後は、CASEツールの追加・変更を簡
単に行うことができる。
ログラムを修正する必要がないので、データ統合エージ
ェント5の作成後は、CASEツールの追加・変更を簡
単に行うことができる。
【0087】また、上記オブジェクト指向分析ツールデ
ータモデル31は、オブジェクト指向プログラミングの
ソフトウェア設計図そのもの、あるいはソフトウェア設
計図に容易に変換できるものであり、ソフトウェアを開
発する者にとっては、有用なソフトウェア設計図という
ことができる。
ータモデル31は、オブジェクト指向プログラミングの
ソフトウェア設計図そのもの、あるいはソフトウェア設
計図に容易に変換できるものであり、ソフトウェアを開
発する者にとっては、有用なソフトウェア設計図という
ことができる。
【0088】同様に、ERモデリングツールデータモデ
ル34は、ERモデリング手法によるソフトウェア設計
図ということができる。
ル34は、ERモデリング手法によるソフトウェア設計
図ということができる。
【0089】このように、本発明の異種CASEツール
間のソフトウェア変換方法によれば、同一の意味のソフ
トウェアのモデルを、異なるソフトウェア開発手法によ
るソフトウェア設計図としてプログラム開発者に示すこ
とができ、効率が良いソフトウェア開発を可能にする。
間のソフトウェア変換方法によれば、同一の意味のソフ
トウェアのモデルを、異なるソフトウェア開発手法によ
るソフトウェア設計図としてプログラム開発者に示すこ
とができ、効率が良いソフトウェア開発を可能にする。
【0090】
【発明の効果】上記説明から明らかなように、本発明の
ソフトウェア統合開発システムによれば、ツールエージ
ェントと通信エージェントと統合エージェントとリポジ
トリエージェントとデータ統合エージェントによってソ
フトウェア統合開発システムを構成しているので、各エ
ージェントのモジュール性が高く、CASEツールの追
加・変更に柔軟に対応できる汎用性が高いソフトウェア
統合開発環境を得ることができる。
ソフトウェア統合開発システムによれば、ツールエージ
ェントと通信エージェントと統合エージェントとリポジ
トリエージェントとデータ統合エージェントによってソ
フトウェア統合開発システムを構成しているので、各エ
ージェントのモジュール性が高く、CASEツールの追
加・変更に柔軟に対応できる汎用性が高いソフトウェア
統合開発環境を得ることができる。
【0091】上記エージェント化の作業は比較的負荷が
軽いので、ソフトウェア統合開発環境を比較的簡単に構
築することができる。
軽いので、ソフトウェア統合開発環境を比較的簡単に構
築することができる。
【0092】さらに、本発明のソフトウェア統合開発シ
ステムでは、所定のツールエージェントで生成されたソ
フトウェアコンポーネントがデータ統合エージェントに
よつて他のツールエージェント形式のソフトウェアコン
ポーネントに変換され、次のツールエージェントが統合
エージェントによって起動され、処理を続行するので、
各CASEツールは常に最新のデータを取り扱うことが
できる。これによって、効率よいソフトウェア開発を行
うことができる統合環境を得ることができる。
ステムでは、所定のツールエージェントで生成されたソ
フトウェアコンポーネントがデータ統合エージェントに
よつて他のツールエージェント形式のソフトウェアコン
ポーネントに変換され、次のツールエージェントが統合
エージェントによって起動され、処理を続行するので、
各CASEツールは常に最新のデータを取り扱うことが
できる。これによって、効率よいソフトウェア開発を行
うことができる統合環境を得ることができる。
【0093】また、本発明の異種CASEツール間のソ
フトウェア変換方法によれば、変換元CASEツールの
ソフトウェアコンポーネントを意味的・構造的に解析
し、マッピング、リンク、意味対応の手法によって変換
先のCASEツールでそのまま利用可能なソフトウェア
コンポーネントに変換するので、データの再利用性が極
めて高い異種CASEツール間ソフトウェア変換方法を
得ることができる。
フトウェア変換方法によれば、変換元CASEツールの
ソフトウェアコンポーネントを意味的・構造的に解析
し、マッピング、リンク、意味対応の手法によって変換
先のCASEツールでそのまま利用可能なソフトウェア
コンポーネントに変換するので、データの再利用性が極
めて高い異種CASEツール間ソフトウェア変換方法を
得ることができる。
【図1】本発明によるソフトウェア統合開発システムの
構成を示した図。
構成を示した図。
【図2】ツールエージェントの構成を示した図。
【図3】本発明の異種CASEツール間ソフトウェア変
換方法の流れを示した流れ図。
換方法の流れを示した流れ図。
【図4】変換元のCASEツール出力を変換元ツールデ
ータモデルに変換する流れを説明した図。
ータモデルに変換する流れを説明した図。
【図5】変換元ツールデータモデルを変換元共通データ
モデルに変換する流れを説明した図。
モデルに変換する流れを説明した図。
【図6】変換元共通データモデルを変換先共通データモ
デルに変換する流れを説明した図。
デルに変換する流れを説明した図。
【図7】変換先共通データモデルを変換先ツールデータ
モデルに変換する流れを説明した図。
モデルに変換する流れを説明した図。
【図8】変換先ツールデータモデルのデータを変換先C
ASEツールのファイル形式に出力する流れを説明した
図。
ASEツールのファイル形式に出力する流れを説明した
図。
【図9】カプセル化による従来の異種CASEツール間
のソフトウェア変換方法を説明した図。
のソフトウェア変換方法を説明した図。
1 ツールエージェント 2 通信エージェント 3 統合エージェント 4 リポジトリエージェント 5 データ統合エージェント 6 コントロール統合エージェント 7 プロセス統合エージェント 8 CASEツール 9 解釈部 10 ポート 11 エージェント・アプリケーション 21 入力パーサ 22 第一同種間変換ルール 23 異種間変換ルール 24 第二同種間変換ルール 25 出力パーサ 31 オブジェクト指向分析ツールデータモデル 32 オブジェクト指向分析手法共通データモデル 33 ERモデリングツール手法共通データモデル 34 ERモデリングツールデータモデル
───────────────────────────────────────────────────── フロントページの続き (72)発明者 大 野 仁 勝 神奈川県横浜市鶴見区市場上町10番3− 301 (72)発明者 菅 谷 光 啓 神奈川県横浜市緑区柿の木台28−20
Claims (5)
- 【請求項1】複数の開発者と複数の異なる装置上で作動
する複数の異なる種類のCASEツールによって共通の
ソフトウェアを開発する分散化型のソフトウェア統合開
発システムにおいて、 複数の異なる種類のCASEツールと、所定のCASE
ツールで開発されたソフトウェアコンポーネントを他の
CASEツール形式に適合するソフトウェアコンポーネ
ントに変換するとともに各CASEツールを制御する統
合ツールと、前記CASEツールと統合ツールの通信メ
ッセージをやりとりする通信ツールと、前記CASEツ
ールと統合ツールが生成したソフトウェアコンポーネン
トを格納するリポジトリとを有し、 前記CASEツールと、統合ツールと、通信ツールと、
リポジトリは、それぞれ入出力ポートと通信メッセージ
の意味を解釈する解釈部を備えたエージェント・アプリ
ケーションとともに作動するツールエージェントと、統
合エージェントと、通信エージェントと、リポジトリエ
ージェントに構成され、 前記ツールエージェントと、統合エージェントと、通信
エージェントと、リポジトリエージェントは、前記通信
エージェントを介して所定のツールエージェントによっ
て生成されたソフトウェアコンポーネントを前記リポジ
トリエージェントに格納し、このソフトウェアコンポー
ネントを前記統合エージェントによって他のツールエー
ジェント形式のソフトウェアコンポーネントに変換し、
この変換されたソフトウェアコンポーネントを前記統合
ツールによって制御された変換先のツールエージェント
によって処理するように構成されていることを特徴とす
るソフトウェア統合開発システム。 - 【請求項2】前記統合ツールは、CASEツール間のソ
フトウェアコンポーネントを変換するデータ統合エージ
ェントと、 各CASEツールを制御するコントロール統合エージェ
ントと、 前記データ統合エージェントあるいはリポジトリエージ
ェントの内容とコントロール統合エージェントの状態か
ら前記ツールエージェントの起動と終了を制御するプロ
セス統合エージェントとを備えていることを特徴とする
請求項1に記載のソフトウェア統合開発システム。 - 【請求項3】前記データ統合エージェントは、変換元の
CASEツールの出力を構文解析してそのCASEツー
ル固有のツールデータモデルにデータを配置替えする入
力パーサと、 マッピングとデータ要素間のリンクを行って前記変換元
ツールデータモデルを他のCASEツールのデータと意
味対応可能な変換元共通データモデルに変換する第一同
種間変換ルールと、 意味対応と新たなデータ要素間のリンクを行って前記変
換元共通データモデルを変換先共通データモデルに変換
する異種間変換ルールと、 マッピングを行って前記変換先共通データモデルを変換
先ツールデータモデルに変換する第二同種間変換ルール
と、 前記変換先ツールデータモデルを解析して変換先のCA
SEツールの入力形式に変換する出力パーサとを有して
いることを特徴とする請求項2に記載のソフトウェア統
合開発システム。 - 【請求項4】変換元のCASEツールの出力を構文解析
してそのCASEツール固有のツールデータモデルにデ
ータを配置替えし、次にマッピングとデータ要素間のリ
ンクを行って前記変換元ツールデータモデルを他のCA
SEツールのデータと意味対応可能な変換元共通データ
モデルに変換し、次に意味対応と新たなデータ要素間の
リンクを行って前記変換元共通データモデルを変換先共
通データモデルに変換し、次にマッピングを行って前記
変換先共通データモデルを変換先のCASEツールに固
有な変換先ツールデータモデルに変換し、次に前記変換
先ツールデータモデルを解析して変換先のCASEツー
ル形式の入力に変換することを特徴とする異種CASE
ツール間のソフトウェア変換方法。 - 【請求項5】所定のCASEツールによって作成された
ソフトウェア設計図を前記変換方法によって他のCAS
Eツールによるソフトウェア設計図に変換して表示する
ことを特徴とする請求項4に記載の異種CASEツール
間のソフトウェア変換方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP5191442A JPH0744365A (ja) | 1993-08-02 | 1993-08-02 | ソフトウェア統合開発システムおよび異種caseツール間のソフトウェア変換方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP5191442A JPH0744365A (ja) | 1993-08-02 | 1993-08-02 | ソフトウェア統合開発システムおよび異種caseツール間のソフトウェア変換方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
JPH0744365A true JPH0744365A (ja) | 1995-02-14 |
Family
ID=16274696
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP5191442A Pending JPH0744365A (ja) | 1993-08-02 | 1993-08-02 | ソフトウェア統合開発システムおよび異種caseツール間のソフトウェア変換方法 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JPH0744365A (ja) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6434739B1 (en) | 1996-04-22 | 2002-08-13 | International Business Machines Corporation | Object oriented framework mechanism for multi-target source code processing |
WO2004088513A1 (ja) * | 2003-03-31 | 2004-10-14 | Riken | シミュレーションツールを用いるユーザーを支援する方法および コンピュータシステム |
JP2016105270A (ja) * | 2014-11-14 | 2016-06-09 | ザ・ボーイング・カンパニーThe Boeing Company | リーン製品モデリングシステム及び方法 |
-
1993
- 1993-08-02 JP JP5191442A patent/JPH0744365A/ja active Pending
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6434739B1 (en) | 1996-04-22 | 2002-08-13 | International Business Machines Corporation | Object oriented framework mechanism for multi-target source code processing |
WO2004088513A1 (ja) * | 2003-03-31 | 2004-10-14 | Riken | シミュレーションツールを用いるユーザーを支援する方法および コンピュータシステム |
JP2016105270A (ja) * | 2014-11-14 | 2016-06-09 | ザ・ボーイング・カンパニーThe Boeing Company | リーン製品モデリングシステム及び方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
O'Kane | A gentle introduction to ROS | |
Burger et al. | View-based model-driven software development with ModelJoin | |
US8296720B2 (en) | Framework to access a remote system from an integrated development environment | |
EP0786109B1 (en) | Object-oriented system for configuration history management | |
US5553282A (en) | Software project history database and method of operation | |
US5911074A (en) | Process for manipulating data models used in software engineering | |
US5659735A (en) | Object-oriented system for program version and history database management system for various program components | |
CN110825369A (zh) | 一种基于java语言的代码自动生成的方法 | |
US20040003119A1 (en) | Editing files of remote systems using an integrated development environment | |
US20040003091A1 (en) | Accessing a remote iSeries or AS/400 computer system from an integrated development environment | |
JPH04229357A (ja) | 異種ネットワーク環境における適用業務プログラムの統合システム | |
Liu et al. | Modeling Interactions in Feature Oriented Software Designs. | |
US20060129985A1 (en) | Development and execution platform | |
Liu et al. | Engineering information service infrastructure for ubiquitous computing | |
JPH0744365A (ja) | ソフトウェア統合開発システムおよび異種caseツール間のソフトウェア変換方法 | |
Karlsen | The UniForM WorkBench A Higher Order Tool Integration Framework | |
Lee et al. | Geosheet: A distributed visualization tool for geometric algorithms | |
Lüth et al. | Hol-Z in the UniForM-workbench–a case study in tool integration for Z | |
Rimvall et al. | GE's MEAD user interface-a flexible menu-and forms-driven interface for engineering applications | |
Gabriel et al. | Foundation for a C++ programming environment | |
Fisler et al. | Implementing extensible theorem provers | |
Liu et al. | Development of a CNC interpretation service with good performance and variable functionality | |
Grundy et al. | Constructing integrated software development environments with dependency graphs | |
Yang et al. | Robot Behavior Tree Manipulation Using Language Models | |
Cooper et al. | Type-Safe Linguistic Run-time Reflection A Practical Perspective |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20031208 |
|
A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20040109 |