JPH06348482A - オブジェクト指向分析・設計支援システム - Google Patents
オブジェクト指向分析・設計支援システムInfo
- Publication number
- JPH06348482A JPH06348482A JP5135495A JP13549593A JPH06348482A JP H06348482 A JPH06348482 A JP H06348482A JP 5135495 A JP5135495 A JP 5135495A JP 13549593 A JP13549593 A JP 13549593A JP H06348482 A JPH06348482 A JP H06348482A
- Authority
- JP
- Japan
- Prior art keywords
- diagram
- transition
- net
- petri net
- level
- 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
- 238000013461 design Methods 0.000 title claims abstract description 22
- 238000004458 analytical method Methods 0.000 title claims abstract description 13
- 238000010586 diagram Methods 0.000 claims abstract description 87
- 238000004891 communication Methods 0.000 claims abstract description 13
- 238000000034 method Methods 0.000 claims description 20
- 238000012545 processing Methods 0.000 claims description 8
- 230000003068 static effect Effects 0.000 claims description 3
- 230000002776 aggregation Effects 0.000 claims description 2
- 238000004220 aggregation Methods 0.000 claims description 2
- 230000008569 process Effects 0.000 claims description 2
- 230000007704 transition Effects 0.000 abstract description 48
- 238000006243 chemical reaction Methods 0.000 abstract description 26
- 238000012795 verification Methods 0.000 abstract description 8
- 230000009471 action Effects 0.000 abstract description 5
- 238000012790 confirmation Methods 0.000 description 3
- 238000004088 simulation Methods 0.000 description 3
- 238000003754 machining Methods 0.000 description 2
- 238000007670 refining Methods 0.000 description 2
- 230000002457 bidirectional effect Effects 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 238000012938 design process Methods 0.000 description 1
- 238000011143 downstream manufacturing Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 238000003860 storage Methods 0.000 description 1
- 230000009466 transformation Effects 0.000 description 1
Landscapes
- Stored Programmes (AREA)
- Debugging And Monitoring (AREA)
Abstract
(57)【要約】
【目的】オブジェクトの機能を記述する各種のダイアグ
ラムから高レベル・ペトリネットに変換し、一貫性チェ
ックおよび検証が可能なオブジェクト指向分析・設計支
援システムの提供。 【構成】オブジェクトダイアグラム2の各オブジェクト
の仕様をトークンに変換するトークン生成部3と、オブ
ジェクト通信ダイアグラム4の各オブジェクトをトラン
ジションに、イベントをプレースに、置き換え、高レベ
ル・ペトリネットを生成するクラス間動的仕様変換部5
と、ステートダイアグラム6をプレースに、イベントの
ガード条件をトランジショに、イベントをトランジショ
ン名に、状態遷移をアークに、遷移時のアクションをア
ーク関数に、変換するクラス内動的仕様変換部7と、デ
ータフローダイアグラム8のバブルをトランジション
に、フローをプレースに、置き換え高レベル・ペトリネ
ットを生成する機能仕様変換部9と、クラス間動的仕様
変換部5のペトリネットのトランジションを、高レベル
・ペトリネットで置き換えるペトリネット精密化部10
と、を備える。
ラムから高レベル・ペトリネットに変換し、一貫性チェ
ックおよび検証が可能なオブジェクト指向分析・設計支
援システムの提供。 【構成】オブジェクトダイアグラム2の各オブジェクト
の仕様をトークンに変換するトークン生成部3と、オブ
ジェクト通信ダイアグラム4の各オブジェクトをトラン
ジションに、イベントをプレースに、置き換え、高レベ
ル・ペトリネットを生成するクラス間動的仕様変換部5
と、ステートダイアグラム6をプレースに、イベントの
ガード条件をトランジショに、イベントをトランジショ
ン名に、状態遷移をアークに、遷移時のアクションをア
ーク関数に、変換するクラス内動的仕様変換部7と、デ
ータフローダイアグラム8のバブルをトランジション
に、フローをプレースに、置き換え高レベル・ペトリネ
ットを生成する機能仕様変換部9と、クラス間動的仕様
変換部5のペトリネットのトランジションを、高レベル
・ペトリネットで置き換えるペトリネット精密化部10
と、を備える。
Description
【0001】
【産業上の利用分野】オブジェクト指向分析・設計方法
論に基づくソフトウェア分析および設計に高レベル・ペ
トリネットを適用するオブジェクト指向分析・設計支援
システムに関する。
論に基づくソフトウェア分析および設計に高レベル・ペ
トリネットを適用するオブジェクト指向分析・設計支援
システムに関する。
【0002】
【従来の技術】この発明におけるオブジェクト指向設計
方法論および高レベル・ペトリネットに関する参考文献
を下記に挙げる。
方法論および高レベル・ペトリネットに関する参考文献
を下記に挙げる。
【0003】(1)ランボー他(羽生田 栄一監訳):
オブジェクト指向方法論OMT 株式会社トッパン 1992年発行 (2)椎塚 久雄:実例ペトリネット−その基礎からコ
ンピュータツールまで コロナ社 1992発行 オブジェクト指向CASEツールにおいては、クラスや
オブジェクトがイベントを受けた際の対象クラス内での
動的な振る舞いを記述するのに、状態遷移ダイアグラム
などを用いたステートダイアグラムが提供されている。
しかし、このステートダイアグラムはインフォーマルな
セマンティクスに基づくダイアグラム記述形式であるた
めに、形式的な一貫性のチェックや検証ができない。更
に、クラスやオブジェクトの階層関係や集約関係など設
計対象の静的側面を記述するのにオブジェクトダイアグ
ラムが、また、クラス間のイベントあるいはメッセージ
のやりとりなどのクラス間の動的な振る舞いの側面を記
述するのにオブジェクト通信ダイアグラミが、更に、ま
た、クラス内の処理のロジックすなわち処理の詳細な流
れを記述するのにデータフローダイアグラムが、それぞ
れオブジェクト指向CASEツールによって提供されて
いる。上述の複数のダイアグラムはそれぞれ別々のイン
フォーマルなセマンティクスに基づいているため、同じ
設計対象を異なる側面から記述する上述のダイアグラム
間で一貫性が成り立っているか、あるいは否かなどの全
体の整合性を確かめることが難しい。
オブジェクト指向方法論OMT 株式会社トッパン 1992年発行 (2)椎塚 久雄:実例ペトリネット−その基礎からコ
ンピュータツールまで コロナ社 1992発行 オブジェクト指向CASEツールにおいては、クラスや
オブジェクトがイベントを受けた際の対象クラス内での
動的な振る舞いを記述するのに、状態遷移ダイアグラム
などを用いたステートダイアグラムが提供されている。
しかし、このステートダイアグラムはインフォーマルな
セマンティクスに基づくダイアグラム記述形式であるた
めに、形式的な一貫性のチェックや検証ができない。更
に、クラスやオブジェクトの階層関係や集約関係など設
計対象の静的側面を記述するのにオブジェクトダイアグ
ラムが、また、クラス間のイベントあるいはメッセージ
のやりとりなどのクラス間の動的な振る舞いの側面を記
述するのにオブジェクト通信ダイアグラミが、更に、ま
た、クラス内の処理のロジックすなわち処理の詳細な流
れを記述するのにデータフローダイアグラムが、それぞ
れオブジェクト指向CASEツールによって提供されて
いる。上述の複数のダイアグラムはそれぞれ別々のイン
フォーマルなセマンティクスに基づいているため、同じ
設計対象を異なる側面から記述する上述のダイアグラム
間で一貫性が成り立っているか、あるいは否かなどの全
体の整合性を確かめることが難しい。
【0004】
【発明が解決しようとする課題】上述のオブジェクト指
向分析・設計方法論における、オブジェクトの静的仕様
を記述するオブジェクトダイアグラムと、オブジェクト
間のインタラクションを記述するオブジェクト通信ダイ
アグラムと、オブジェクトの動的仕様を記述するステー
トダイアグラムと、オブジェクトが実現する機能を記述
するデータフローダイアグラムから、数多くの形式的な
検証技術やシミュレーション技術が確立されている表現
形式で、かつ、丸にノードで表されるプレースと棒線あ
るいは矩形ノードで表されるトランジションの2種類の
ノードとアークからなるネット構造と、ネット構造上の
プレース内を移動するデータ構造を有するトークンと、
によって構成される高レベル・ペトリネットに、一元的
に変換するシステムを導入する。そして、このシステム
によって、高レベル・ペトリネットについて、数多く提
供されている形式的な検証技術やシミュレーション技術
によって、全体の整合性および一貫性チェックならびに
検証が可能となるオブジェクト指向分析・設計支援シス
テムを提供する。
向分析・設計方法論における、オブジェクトの静的仕様
を記述するオブジェクトダイアグラムと、オブジェクト
間のインタラクションを記述するオブジェクト通信ダイ
アグラムと、オブジェクトの動的仕様を記述するステー
トダイアグラムと、オブジェクトが実現する機能を記述
するデータフローダイアグラムから、数多くの形式的な
検証技術やシミュレーション技術が確立されている表現
形式で、かつ、丸にノードで表されるプレースと棒線あ
るいは矩形ノードで表されるトランジションの2種類の
ノードとアークからなるネット構造と、ネット構造上の
プレース内を移動するデータ構造を有するトークンと、
によって構成される高レベル・ペトリネットに、一元的
に変換するシステムを導入する。そして、このシステム
によって、高レベル・ペトリネットについて、数多く提
供されている形式的な検証技術やシミュレーション技術
によって、全体の整合性および一貫性チェックならびに
検証が可能となるオブジェクト指向分析・設計支援シス
テムを提供する。
【0005】
【課題を解決するための手段】オブジェクトダイアグラ
ムから高レベル・ペトリネットにおけるトークンを生成
する手段と、オブジェクト通信ダイアグラムからクラス
間の動的仕様に相当する高レベル・ペトリネットを生成
する手段と、ステートダイアグラムからクラス内の動的
仕様に相当する高レベル・ペトリネットを生成する手段
と、データフローダイアグラムから各オブジェクトの機
能を記述する高レベル・ペトリネットを生成する手段
と、上述の各手段により生成される高レベル・ペトリネ
ットとトークンを組み合わせる高レベル・ペトリネット
を生成する手段と、を有する。
ムから高レベル・ペトリネットにおけるトークンを生成
する手段と、オブジェクト通信ダイアグラムからクラス
間の動的仕様に相当する高レベル・ペトリネットを生成
する手段と、ステートダイアグラムからクラス内の動的
仕様に相当する高レベル・ペトリネットを生成する手段
と、データフローダイアグラムから各オブジェクトの機
能を記述する高レベル・ペトリネットを生成する手段
と、上述の各手段により生成される高レベル・ペトリネ
ットとトークンを組み合わせる高レベル・ペトリネット
を生成する手段と、を有する。
【0006】
【作用】従来のオブジェクト指向分析・設計方法論にお
ける各ダイアグラムから高レベル・ペトリネットを生成
し、融合する。先ず、オブジェクトダイアグラムに記述
されるオブジェクトの属性定義を集約して高レベル・ペ
トリネットにおけるトークンの型を定義する。そして、
オブジェクト通信ダイアグラムにおける各オブジェクト
を高レベル・ペトリネットにおけるトランジションに置
き換え、オブジェクト間のイベントをプレースに置き換
えて、高レベル・ペトリネットのネット構造を生成す
る。更に、ステートダイアグラムで表されるクラス内の
振る舞いを、ステートをプレースに置き換え、イベント
をトランジションに置き換えて、高レベル・ペトリネッ
トのネット構造に変換する。また更に、データフローダ
イアグラムのノードであるバブルで表された機能をトラ
ンジションに置き換え、アークで表されたデータのフロ
ーをプレースに置き換えて、高レベル・ペトリネットの
ネット構造に変換する。
ける各ダイアグラムから高レベル・ペトリネットを生成
し、融合する。先ず、オブジェクトダイアグラムに記述
されるオブジェクトの属性定義を集約して高レベル・ペ
トリネットにおけるトークンの型を定義する。そして、
オブジェクト通信ダイアグラムにおける各オブジェクト
を高レベル・ペトリネットにおけるトランジションに置
き換え、オブジェクト間のイベントをプレースに置き換
えて、高レベル・ペトリネットのネット構造を生成す
る。更に、ステートダイアグラムで表されるクラス内の
振る舞いを、ステートをプレースに置き換え、イベント
をトランジションに置き換えて、高レベル・ペトリネッ
トのネット構造に変換する。また更に、データフローダ
イアグラムのノードであるバブルで表された機能をトラ
ンジションに置き換え、アークで表されたデータのフロ
ーをプレースに置き換えて、高レベル・ペトリネットの
ネット構造に変換する。
【0007】次に、オブジェクト通信ダイアグラムから
変換される高レベル・ペトリネットのネット構造のトラ
ンジションの部分に、ステートダイアグラムから変換す
る高レベル・ペトリネットのネット構造を埋め込む。更
に、次に、ステートダイアグラムから変換する高レベル
・ペトリネットのネット構造のトランジションの部分
に、データフローダイアグラムから変換する高レベル・
ペトリネットのネット構造を埋め込み、融合する。そし
て、初期状態を表わすプレースにトークンを配置するこ
とによって、各ダイアグラムを融合し、まとめて表現す
る形式的な検証が可能な高レベル・ペトリネットが生成
される。
変換される高レベル・ペトリネットのネット構造のトラ
ンジションの部分に、ステートダイアグラムから変換す
る高レベル・ペトリネットのネット構造を埋め込む。更
に、次に、ステートダイアグラムから変換する高レベル
・ペトリネットのネット構造のトランジションの部分
に、データフローダイアグラムから変換する高レベル・
ペトリネットのネット構造を埋め込み、融合する。そし
て、初期状態を表わすプレースにトークンを配置するこ
とによって、各ダイアグラムを融合し、まとめて表現す
る形式的な検証が可能な高レベル・ペトリネットが生成
される。
【0008】
【実施例】次に、この発明について図面を参照し説明す
る。
る。
【0009】この発明の一実施例の構成を示す図1を参
照すると、オブジェクト指向分析・設計支援システム1
は、オブジェクトダイアグラム2で記述される属性定義
からなる各オブジェクトあるいはクラスの仕様を同型の
タイプのトークンに変換するトークン生成部3と、オブ
ジェクト通信ダイアグラム4における各オブジェクトを
トランジションに、オブジェクト間のイベントをプレー
スに置き換えて高レベル・ペトリネットのネット構造を
生成し、プレースにメッセージのタイプと同型のタイプ
を付与するクラス間動的仕様変換部5と、ステートダイ
アグラム6に記述される各クラスの状態を高レベル・ペ
トリネットにおけるプレースに、イベントのカード条件
をトランジションに、イベントをトランジション名に、
状態遷移をアークに、そして、遷移時に実行されるアク
ションをアーク関数に、変換する高レベル・ペトリネッ
トにおけるネット構造を生成するクラス内動的仕様変換
部7と、データフローダイアグラム8で表わされる機能
をトランジションに、フローをプレースに、置き換える
高レベル・ペトリネットを生成する機能仕様変換部9
と、クラス間動的仕様変換部5から得られる高レベル・
ペトリネットのネット構造のトランジションを、クラス
内動的仕様変換部7において生成するトランジションの
内部の振る舞いに相当する高レベル・ペトリネットのネ
ット構造に、置き換えることによって精密化し、さら
に、クラス内動的仕様変換部7において生成される高レ
ベル・ペトリネットの中に現れるトランジションの機能
を機能仕様変換部9において生成されるこの機能に相当
する高レベル・ペトリネットのネット構造によって、精
密化し、トークン生成部3によって得られるトークンの
マーキングを用い、高レベル・ペトリネット10に変換
するペトリネット精密化部11と、を備える。
照すると、オブジェクト指向分析・設計支援システム1
は、オブジェクトダイアグラム2で記述される属性定義
からなる各オブジェクトあるいはクラスの仕様を同型の
タイプのトークンに変換するトークン生成部3と、オブ
ジェクト通信ダイアグラム4における各オブジェクトを
トランジションに、オブジェクト間のイベントをプレー
スに置き換えて高レベル・ペトリネットのネット構造を
生成し、プレースにメッセージのタイプと同型のタイプ
を付与するクラス間動的仕様変換部5と、ステートダイ
アグラム6に記述される各クラスの状態を高レベル・ペ
トリネットにおけるプレースに、イベントのカード条件
をトランジションに、イベントをトランジション名に、
状態遷移をアークに、そして、遷移時に実行されるアク
ションをアーク関数に、変換する高レベル・ペトリネッ
トにおけるネット構造を生成するクラス内動的仕様変換
部7と、データフローダイアグラム8で表わされる機能
をトランジションに、フローをプレースに、置き換える
高レベル・ペトリネットを生成する機能仕様変換部9
と、クラス間動的仕様変換部5から得られる高レベル・
ペトリネットのネット構造のトランジションを、クラス
内動的仕様変換部7において生成するトランジションの
内部の振る舞いに相当する高レベル・ペトリネットのネ
ット構造に、置き換えることによって精密化し、さら
に、クラス内動的仕様変換部7において生成される高レ
ベル・ペトリネットの中に現れるトランジションの機能
を機能仕様変換部9において生成されるこの機能に相当
する高レベル・ペトリネットのネット構造によって、精
密化し、トークン生成部3によって得られるトークンの
マーキングを用い、高レベル・ペトリネット10に変換
するペトリネット精密化部11と、を備える。
【0010】次に、この実施例を詳細に説明すると、ト
ークン生成部3によって、生成されるトークンとトーク
生成部3の入力となるオブジェクトダイアグラム2を例
示する図2を参照すると、オブジェクトダイアグラム2
で記述されている属性すべてを1つの組とするオブジェ
クトダイアグラム(図2(a))から、各属性のタイプ
をそのまま組の中のタイプとして定義することによっ
て、オブジェクト自体の仕様と同型のタイプをもつトー
クン(図2(b))に変換する。
ークン生成部3によって、生成されるトークンとトーク
生成部3の入力となるオブジェクトダイアグラム2を例
示する図2を参照すると、オブジェクトダイアグラム2
で記述されている属性すべてを1つの組とするオブジェ
クトダイアグラム(図2(a))から、各属性のタイプ
をそのまま組の中のタイプとして定義することによっ
て、オブジェクト自体の仕様と同型のタイプをもつトー
クン(図2(b))に変換する。
【0011】次に、オブジェクト通信ダイアグラム4か
ら高レベル・ペトリネットへの変換を例示する図3を参
照すると、オブジェクト通信ダイアグラム(図3
(a))に記述されるオブジェクトを高レベル・ペトリ
ネット(図3(b))におけるトランジションに、ま
た、メッセージのやりとりに相当するアークをトランジ
ションとプレースをつなぐアークに、あるいはプレース
ならびにプレースとトランジションとをつなぐアーク
に、それぞれ変換し、データを有するメッセージに相当
するプレースに対してはデータとして流れるトークンの
タイプをプレースに付与する。
ら高レベル・ペトリネットへの変換を例示する図3を参
照すると、オブジェクト通信ダイアグラム(図3
(a))に記述されるオブジェクトを高レベル・ペトリ
ネット(図3(b))におけるトランジションに、ま
た、メッセージのやりとりに相当するアークをトランジ
ションとプレースをつなぐアークに、あるいはプレース
ならびにプレースとトランジションとをつなぐアーク
に、それぞれ変換し、データを有するメッセージに相当
するプレースに対してはデータとして流れるトークンの
タイプをプレースに付与する。
【0012】次に、ステートダイアグラムからクラス内
の状態遷移を高レベル・ペトリネットのネット構造への
変換を例示する図4を参照すると、イベント送信などの
アクションあるいはアクティビィティをアークによっ
て、表現される状態遷移図あるいはステートチャートの
サブセット(図4(a))などから、図5に示される変
換の手続きによって、高レベル・ペトリネット(図4
(b))を生成する。また、図3(b)に例示する「加
工機」に対するステートダイアグラムの高レベル・ペト
リネットを図7に例示する。ステートダイアグラムから
高レベル・ペトリネットへの変換手続きを示す図5を参
照し、変換手続きを説明すると、先ず、ステートダイア
グラムの状態をプレースとして定義する。そして状態名
がある場合は状態名をプレース名とする(ステップ
1)。次に、ステートダイアグラムの遷移をトランジシ
ョンとして定義する(ステップ2)。更に、ガード条件
を持つ遷移の場合、ガード条件をトランジションにおけ
る述語として定義する(ステップ2.1)。また、遷移
がステートダイアグラムが対象としているオブジェクト
以外の情報を用いる場合、情報に対応するタイプによっ
て、ラベルづけされるアークを対応するトランジション
への入力アークとする(ステップ2.2)。図4の例示
によって説明すると、「充填確認」トランジションに入
力する「V」でラベルづけされたアークが上述の入力ア
ークに相当する。
の状態遷移を高レベル・ペトリネットのネット構造への
変換を例示する図4を参照すると、イベント送信などの
アクションあるいはアクティビィティをアークによっ
て、表現される状態遷移図あるいはステートチャートの
サブセット(図4(a))などから、図5に示される変
換の手続きによって、高レベル・ペトリネット(図4
(b))を生成する。また、図3(b)に例示する「加
工機」に対するステートダイアグラムの高レベル・ペト
リネットを図7に例示する。ステートダイアグラムから
高レベル・ペトリネットへの変換手続きを示す図5を参
照し、変換手続きを説明すると、先ず、ステートダイア
グラムの状態をプレースとして定義する。そして状態名
がある場合は状態名をプレース名とする(ステップ
1)。次に、ステートダイアグラムの遷移をトランジシ
ョンとして定義する(ステップ2)。更に、ガード条件
を持つ遷移の場合、ガード条件をトランジションにおけ
る述語として定義する(ステップ2.1)。また、遷移
がステートダイアグラムが対象としているオブジェクト
以外の情報を用いる場合、情報に対応するタイプによっ
て、ラベルづけされるアークを対応するトランジション
への入力アークとする(ステップ2.2)。図4の例示
によって説明すると、「充填確認」トランジションに入
力する「V」でラベルづけされたアークが上述の入力ア
ークに相当する。
【0013】更に、また、遷移において、アクションと
してイベント送出を行なう場合、図4(b)の「放出確
認」トランジションは、イベントデータのタイプでラベ
ルづけする出力アークをトランジションに追加する(ス
テップ2.3)。図4(b)の例示によって説明する
と、「放出確認」トランジションから出力する「充填確
認」によって、ラベルづけされたアークが上述の出力ア
ークに相当する。
してイベント送出を行なう場合、図4(b)の「放出確
認」トランジションは、イベントデータのタイプでラベ
ルづけする出力アークをトランジションに追加する(ス
テップ2.3)。図4(b)の例示によって説明する
と、「放出確認」トランジションから出力する「充填確
認」によって、ラベルづけされたアークが上述の出力ア
ークに相当する。
【0014】また、次に、各遷移におけるアクションを
トランジションの出力アークのアーク関数としてはりつ
ける(ステップ3)。図4(b)の例示によって説明す
ると、「充填完了」における加算処理がこのアーク関数
にあたる。そして、アークに対してこのオブジェクトの
タイプを付与し、タイプでラベルづけする(ステップ
4)。上述の手続きによって、ステートダイアグラムが
高レベル・ペトリネットに変換される。
トランジションの出力アークのアーク関数としてはりつ
ける(ステップ3)。図4(b)の例示によって説明す
ると、「充填完了」における加算処理がこのアーク関数
にあたる。そして、アークに対してこのオブジェクトの
タイプを付与し、タイプでラベルづけする(ステップ
4)。上述の手続きによって、ステートダイアグラムが
高レベル・ペトリネットに変換される。
【0015】更に、次に、データフローダイアグラムか
ら高レベル・ペトリネットに変換を例示する図6を参照
すると、データフローダイアグラム(図6(a))で表
される機能をトランジションに、データフローをプレー
スに、それぞれ置き換えて高レベル・ペトリネット(図
6(b))を生成し、フローを流れるトークンのタイプ
をプレースに付与し、バブルの入力フローのタイプと同
型のタイプをトランジションの入力アークに付与する。
また、コントロールフローが存在する場合、図6(a)
の「ack」とラベルづけされている破線によって示さ
れるコントロールフローのには、コントロールフローそ
のものを表わすプレースの他に、コントロールフローを
トリガーする外部からのイベントを表わすプレースを追
加し、コントロールフローの行き先のバブルに相当する
トランジション(図6に例示する「貯蔵処理」トランジ
ション)への入力プレースとする(図6(b)において
ackとラベルづけされたプレースのことである)。
ら高レベル・ペトリネットに変換を例示する図6を参照
すると、データフローダイアグラム(図6(a))で表
される機能をトランジションに、データフローをプレー
スに、それぞれ置き換えて高レベル・ペトリネット(図
6(b))を生成し、フローを流れるトークンのタイプ
をプレースに付与し、バブルの入力フローのタイプと同
型のタイプをトランジションの入力アークに付与する。
また、コントロールフローが存在する場合、図6(a)
の「ack」とラベルづけされている破線によって示さ
れるコントロールフローのには、コントロールフローそ
のものを表わすプレースの他に、コントロールフローを
トリガーする外部からのイベントを表わすプレースを追
加し、コントロールフローの行き先のバブルに相当する
トランジション(図6に例示する「貯蔵処理」トランジ
ション)への入力プレースとする(図6(b)において
ackとラベルづけされたプレースのことである)。
【0016】更に、また、データストアが存在する場合
は、データストアへのアクセスあるいは、更新に関わら
ず、データストアを表わすプレースと、アクセスあるい
は更新に相当するトランジションとの間に双方向のアー
クをはる。
は、データストアへのアクセスあるいは、更新に関わら
ず、データストアを表わすプレースと、アクセスあるい
は更新に相当するトランジションとの間に双方向のアー
クをはる。
【0017】ペトリネット精密化部11によって、図2
に例示するトークン生成部3の変換によって、生成され
るトークン(図2(b))と、図3に例示するクラス間
動的仕様変換部5の変換によって、生成される高レベル
・ネットのネット構造(図3(b))と、図4に例示す
るクラス内動的仕様変換部3の変換によって、生成され
る高レベル・ネットのネット構造(図6(b))と、図
7に例示する図3(a)における「加工機」のステート
ダイアグラムに対応する高レベル・ネットのネット構造
と、を融合することによって、生成される1つに融合さ
れる高レベル・ネットを図8に例示する。図3に例示す
るオブジェクト通信ダイアグラムから変換する高レベル
・ペトリネットのネット構造のトランジション「加工
機」および「タンク」の部分に、ステートダイアグラム
から変換され、図7に例示する「加工機」に相当する高
レベル・ペトリネットのネット構造と、図4に例示する
「タンク」に相当する高レベル・ペトリネットのネット
構造と、をそれぞれ埋め込んで、更に、埋め込まれるス
テートダイアグラムから変換し、図7に例示する高レベ
ル・ペトリネット「加工機」のネット構造のトランジシ
ョン「加工工程2」の部分に、データフローダイアグラ
ムから変換する図6に例示する高レベル・ペトリネット
のネット構造を埋め込んで融合し、プレース図4の「タ
ンク」の初期状態を表わす「空」状態に図2に例示する
「タンク」クラスのトークンを配置することによって、
各ダイアグラムをまとめて表現する形式的な検証が可能
な高レベル・ペトリネットを生成する。
に例示するトークン生成部3の変換によって、生成され
るトークン(図2(b))と、図3に例示するクラス間
動的仕様変換部5の変換によって、生成される高レベル
・ネットのネット構造(図3(b))と、図4に例示す
るクラス内動的仕様変換部3の変換によって、生成され
る高レベル・ネットのネット構造(図6(b))と、図
7に例示する図3(a)における「加工機」のステート
ダイアグラムに対応する高レベル・ネットのネット構造
と、を融合することによって、生成される1つに融合さ
れる高レベル・ネットを図8に例示する。図3に例示す
るオブジェクト通信ダイアグラムから変換する高レベル
・ペトリネットのネット構造のトランジション「加工
機」および「タンク」の部分に、ステートダイアグラム
から変換され、図7に例示する「加工機」に相当する高
レベル・ペトリネットのネット構造と、図4に例示する
「タンク」に相当する高レベル・ペトリネットのネット
構造と、をそれぞれ埋め込んで、更に、埋め込まれるス
テートダイアグラムから変換し、図7に例示する高レベ
ル・ペトリネット「加工機」のネット構造のトランジシ
ョン「加工工程2」の部分に、データフローダイアグラ
ムから変換する図6に例示する高レベル・ペトリネット
のネット構造を埋め込んで融合し、プレース図4の「タ
ンク」の初期状態を表わす「空」状態に図2に例示する
「タンク」クラスのトークンを配置することによって、
各ダイアグラムをまとめて表現する形式的な検証が可能
な高レベル・ペトリネットを生成する。
【0018】
【発明の効果】従来のオブジェクト指向分析・設計方法
論においては、インフォーマルなセマンティクスに基づ
くダイアグラムが複数与えられているため、それぞれの
ダイアグラムの記述内容に対して形式的な一貫性のチェ
ックや検証ができない。更に、同じ設計対象を異なる側
面から記述する上述のダイアグラム間で一貫性が成り立
っているか否かなどの全体の整合性を確かめることが困
難である。しかし、この発明によればすべてのダイアグ
ラムを統合し、1つの高レベル・ペトリネットに変換す
ることによって、高レベル・ペトリネットに対して、数
多く提供されている形式的な検証技術やシミュレーショ
ン技術を用いて、全体の整合性および一貫性チェックな
らびに検証が行える。従って、オブジェクト指向分析・
設計過程における仕様の正しさの検証と、分析・設計段
階での仕様のバグの発見が行える。
論においては、インフォーマルなセマンティクスに基づ
くダイアグラムが複数与えられているため、それぞれの
ダイアグラムの記述内容に対して形式的な一貫性のチェ
ックや検証ができない。更に、同じ設計対象を異なる側
面から記述する上述のダイアグラム間で一貫性が成り立
っているか否かなどの全体の整合性を確かめることが困
難である。しかし、この発明によればすべてのダイアグ
ラムを統合し、1つの高レベル・ペトリネットに変換す
ることによって、高レベル・ペトリネットに対して、数
多く提供されている形式的な検証技術やシミュレーショ
ン技術を用いて、全体の整合性および一貫性チェックな
らびに検証が行える。従って、オブジェクト指向分析・
設計過程における仕様の正しさの検証と、分析・設計段
階での仕様のバグの発見が行える。
【0019】そして、ソフトウェア作成下流工程におけ
る仕様修正のコストの削減と、信頼性の高いオブジェク
ト指向ソフトウェアの作成と、を促進する。
る仕様修正のコストの削減と、信頼性の高いオブジェク
ト指向ソフトウェアの作成と、を促進する。
【図1】この発明の一実施例の構成を示す図である。
【図2】トークン生成部の入力となるオブジェクトダイ
アグラムを示す子図(a)と、トークン生成部により生
成されるトークンを例示する子図(b)と、である。
アグラムを示す子図(a)と、トークン生成部により生
成されるトークンを例示する子図(b)と、である。
【図3】オブジェクト通信ダイアグラムを例示する子図
(a)と、高レベル・ペトリネットへの変換を例示する
子図(b)である。
(a)と、高レベル・ペトリネットへの変換を例示する
子図(b)である。
【図4】ステートダイアグラムを例示する子図(a)
と、高レベル・ペトリネットへの変換を例示する子図
(b)である。
と、高レベル・ペトリネットへの変換を例示する子図
(b)である。
【図5】ステートダイアグラムから高レベル・ペトリネ
ットへの変換手続きを示す図である。
ットへの変換手続きを示す図である。
【図6】データフローダイアグラムを例示する子図
(a)と、高レベル・ペトリネットへの変換を例示する
子図(b)である。
(a)と、高レベル・ペトリネットへの変換を例示する
子図(b)である。
【図7】図3に例示する「加工機」部分に相当するステ
ートダイアグラムに対応する高レベル・ペトリネットを
例示する図である。
ートダイアグラムに対応する高レベル・ペトリネットを
例示する図である。
【図8】ペトリネット精密化部により、図2、図3、図
4、図6、図7の生成結果から生成される高レベル・ペ
トリネットを例示する図である。
4、図6、図7の生成結果から生成される高レベル・ペ
トリネットを例示する図である。
【符号の説明】 1 オブジェクト指向分析・設計支援システム 2 オブジェクトダイアグラム 3 トークン生成部 4 オブジェクト通信ダイアグラム 5 クラス間動的仕様変換部 6 ステートダイアグラム 7 クラス内動的仕様変換部 8 データフローダイアグラム 9 機能仕様変換部 10 高レベル・ペトリネット 11 プトリネット精密化部
Claims (1)
- 【請求項1】 オブジェクト指向設計方法論に基づいて
ソフトウェアを分析・設計する際にクラスやオブジェク
トの階層関係や集約関係など設計対象の静的側面を記述
するオブジェクトダイアグラムから、ベトリネットにお
けるトークンに構造を付与する高レベル・ペトリネット
におけるトークンを生成する手段と、 オブジェクト指向設計方法論に基づいてソフトウェアを
分析・設計する際にクラス間のイベントあるいはメッセ
ージのやりとりなどのクラス間の動的な振る舞いの側面
を記述するオブジェクト通信ダイアグラムからクラス間
の動的仕様を表わす高レベル・ペトリネットのネット構
造を生成する手段と、 オブジェクト指向設計方法論に基づいてソフトウェアを
分析・設計する際にクラスやオブジェクトがイベントを
受けた際に行うべき処理の記述などの対象のクラス内で
の動的な振る舞いを記述するステートダイアグラムから
クラス内の動的仕様を表わす高レベル・ペトリネットの
ネット構造を生成する手段と、 オブジェクト指向設計方法論に基づいてソフトウェアを
分析・設計する際にクラス内の処理のロジックすなわち
処理の詳細な流れを記述するデータフローダイアグラム
から各クラスによって実現される機能を表わす高レベル
・ペトリネットのネット構造を生成する手段と、 前記各手段によって生成される高レベル・ペリネットの
ネット構造およびトークンを組み合わせて融合する高レ
ベル・ペリネットを生成する手段と、 を有するオブジェクト指向分析・設計支援システム。
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP5135495A JPH06348482A (ja) | 1993-06-07 | 1993-06-07 | オブジェクト指向分析・設計支援システム |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP5135495A JPH06348482A (ja) | 1993-06-07 | 1993-06-07 | オブジェクト指向分析・設計支援システム |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| JPH06348482A true JPH06348482A (ja) | 1994-12-22 |
Family
ID=15153080
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP5135495A Pending JPH06348482A (ja) | 1993-06-07 | 1993-06-07 | オブジェクト指向分析・設計支援システム |
Country Status (1)
| Country | Link |
|---|---|
| JP (1) | JPH06348482A (ja) |
Cited By (2)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP2001522083A (ja) * | 1997-10-31 | 2001-11-13 | エンテロス・インコーポレーテッド | ノードおよびリンク表現を使用する動的シミュレーション・モデルの表示を生成する方法 |
| JP2022522177A (ja) * | 2019-02-27 | 2022-04-14 | コミッサリア ア レネルジー アトミーク エ オ ゼネルジ ザルタナテイヴ | データフローシステムを検証するための方法 |
-
1993
- 1993-06-07 JP JP5135495A patent/JPH06348482A/ja active Pending
Cited By (3)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP2001522083A (ja) * | 1997-10-31 | 2001-11-13 | エンテロス・インコーポレーテッド | ノードおよびリンク表現を使用する動的シミュレーション・モデルの表示を生成する方法 |
| JP2022522177A (ja) * | 2019-02-27 | 2022-04-14 | コミッサリア ア レネルジー アトミーク エ オ ゼネルジ ザルタナテイヴ | データフローシステムを検証するための方法 |
| US12056507B2 (en) | 2019-02-27 | 2024-08-06 | Commissariat A L'energie Atomique Et Aux Energies Alternatives | Method for validating a data flow system |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| Evans et al. | Core meta-modelling semantics of UML: The pUML approach | |
| US8447788B2 (en) | Generating a service-oriented architecture policy based on a context model | |
| Dorador et al. | Application of IDEF0, IDEF3 and UML methodologies in the creation of information models | |
| Huber et al. | Consistent graphical specification of distributed systems | |
| CN101546260B (zh) | 用于重构面向服务的应用的方法及其设备 | |
| Hong et al. | Software modeling and analysis using a hierarchical object-oriented Petri net | |
| EP0676707B1 (en) | Expression promotion for hierarchical netlisting | |
| De Caso et al. | Automated abstractions for contract validation | |
| Miranda et al. | Domain‐specific language for automatic generation of UML models | |
| Hauschildt et al. | WOFLAN: a Petri-net-based Workflow Analyzer | |
| JPH06348482A (ja) | オブジェクト指向分析・設計支援システム | |
| Hilken et al. | From UML/OCL to base models: transformation concepts for generic validation and verification | |
| Mellor et al. | Softwareplatform-independent, precise action specifications for UML | |
| Burge et al. | Rationale support for maintenance of large scale systems | |
| Regep et al. | LfP: a specification language for rapid prototyping of concurrent systems | |
| Christensen et al. | Modelling and simulation of a network management system using hierarchical coloured Petri nets | |
| Dick et al. | 7.1. 2 The Systems Engineering Sandwich: combining requirements, models and design | |
| Cleidson et al. | Using critiquing systems for inconsistency detection in software engineering models | |
| US6898782B1 (en) | Reference-based associations using reference attributes in an object modeling system | |
| KR101044182B1 (ko) | 시스템의 검증을 용이하게 하는 방법, 소프트웨어 애플리케이션의 검증을 용이하게 하는 장치 및 컴퓨터 판독 가능 기록 매체 | |
| Mouheb et al. | Unified modeling language | |
| KR100456631B1 (ko) | 객체지향 프로그래밍 시스템의 설계 모델 적용장치와 그적용방법 및 이에 관련된 프로그램의 기록매체 | |
| Garcia et al. | Performance model interchange format: Semantic validation | |
| Bokhari et al. | Translation of UML Models to Object Coloured Petri Nets with a view to Analysis. | |
| Slotosch et al. | Modeling and safety-certification of model-based development processes |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 19960521 |