研究概要 |
ソフトウェアの安全性妥当性を論理的数学的な手段で保証することは情報爆発する情報社会にとってますます重要である.その手段の1つとしてソフトウェアモデル検査が近年注目を浴びている.本研究は,ソフトウェアモデル検査の有用性適用限界を規模に対するスケーラビリティの観点から調べることをその目的とする.具体的には(1)実時間システムのコンポーネントベースの時間性質の設計検証と(2)Strutsを用いて作成されたコンポーネントベースのWEBアプリケーションの各種例題に対して,ソフトウェアモデル検査を適用し,規模の観点から有用性を調べていく.また,状態爆発などによって生じる適用限界の壁をブレークスルーするための方法論をコンポーネントの分割を用いた一般性のある形で考案していく.状態爆発を克服する1つの方法はシステムを複数のサブシステムからなるコンポーネントベースシステムとしてとらえ,各コンポーネントの検証とシステム全体の検証に問題を分割することである.一般にソフトウェアシステムを設計する際,そのようなコンポーネントに分割して設計を行うことは自然なことである.本手法はそのことに着目し,設計段階の途中生産物(UML記述,WEB遷移図)を有効利用し,モデル検査する方法を提案し,実際に検査ツールを作成し,その有効性を調べた.ここでの課題は,システム全体の検証を行う際,コンポーネント分割したメリットを失うことなく,スケーラビリティを維持する方法を考案することや,計算機支援を通じて,適切なモデル化を効率良く行うことである.これまでのこの研究プロジェクトでは,UML記述されたコンポーネントベースの実時間システムに対して,効率よく時間QoS性質を検証する方法論とStrutsで記述されたWEBアプリケーションに対するページ遷移や内部動作のモデル検査を行う方法について研究成果を挙げてきた.実時間システムのコンポーネントベースの時間性質の設計検証においては,Bang&Olulfsenのプロトコル例題に対して,検証可能なことを示した.WEBアプリケーションについては企業新人研修で作成したオンラインショップの設計に対して適用可能であることを示した.このことはこのアプローチが有効であることを示していると考える.また後者についてはEclipse上のプラグインを開発した.
|