研究概要 |
本研究ではオブジェクト指向分析(OOA)における3つのモデル(オブジェクトモデル、機能モデル、動的モデル)の正当性検証とモデル間の整合性検証手法の確立とその有効性確認を目標にして研究を行い、以下の成果を得た。 正当性検証について、オブジェクトモデルでは(1)属性とメソッドを持つかどうか、(2)他のオブジェクトと関係(関連,is-a,part-of)を持つかどうかを調べる。機能モデルについては、入力や出力のない機能がないかを、動的モデルについては、(1)各状態とそれを決定する属性の値が明示されているか、(2)各状態遷移での事象に伴う動作によって変化する属性の値が遷移前後で矛盾しないか、(3)状態を変化させる動詞とオブジェクトの状態遷移での事象に伴う動作と矛盾しないかを調べる。 モデル間の整合性検証についてはそれぞれ2つのモデル間での整合性を検証する。オブジェクトモデルと動的モデルの整合性検証については、まず動的モデルに対応するオブジェクトがあるかどうかを確認した上で(1)オブジェクトの属性と動的モデルでの状態を決める属性の間に矛盾がないか、(2)属性の取りうる値と状態を決める属性の値に矛盾がないか、(3)オブジェクトの操作と状態の活動や状態遷移に伴う動作の間に矛盾がないかを調べる。オブジェクトモデルと機能モデルの整合性検証については、オブジェクトと機能モデルのアクターが対応するかどうかを確認した上で(1)オブジェクト間の関連とデータフローに矛盾がないか、(2)オブジェクトの操作とデータフローに矛盾がないかを調べる。さらに動的モデルのイベントに順序付をすることによって、機能モデルにおけるデータの流れや装置の動きをシナリオ化し、そのシナリオを実行することによって、データの流れや装置の動きを逐次的にアニメーションとして表示する。これにより機能モデルと動的モデルの整合性を検証する。 これらの手法をもとにしたプロトタイプをUnixワークステーション上でC言語を用いて開発し、いくつかの例題に適用した。プロトタイプによってオブジェクト指向分析過程での誤りを検出でき、手法の有効性を確認した。
|