振る舞い~状態遷移モデルとテスト~
ソフトウエアの振る舞いをモデリングするツールとして良く用いられるのは状態遷移図(図1)です。状態遷移図を状態遷移表(図2)に変換する際に生まれる空白部分を埋めることで、振る舞いの漏れ抜けを防止できます。これが状態遷移表を用いた開発のポイントです。
図1:状態遷移図の例参考1
図2:状態遷移表の例参考2
状態遷移表を用いた開発を支援するツールZIPC Designer参考3は、自動コード生成、モデルシミュレーションなどの機能を持ちます。状態遷移表からテストケースを生成するツールZIPC Tester参考4は、NTTデータの開発ツールTERASOLUNA IDE3参考5にアドインされています(図3)。
図3:TERASOLUNA IDE3にプラグインされたZIPC Tester
組み合わせ~フィーチャモデルとテスト~
ソフトウエアは多くの因子(パラメーター)と水準(パラメーター値)を扱います。それらの数が増加すると、水準の組み合わせの数は指数関数的に増加します。モデリングツールZIPC Feature参考6を用いると、因子の関係性や構造をわかりやすく表現した図、フィーチャモデルで整理することができます(図4上画面)。このフィーチャモデルから、パラメーターの組み合わせが網羅されるように絞り込むペアワイズなどの方法を用いて水準の組み合わせ数を削減するには、ZIPC FOT参考7を用います(図4下画面)。ZIPC FOTは産総研の研究成果を利用しています参考8。
図4:フィーチャモデル
トレーサビリティ~レビューのIT化~
近年、安全・安心な社会に向けて機能安全やセキュリティが重要なテーマになっています。機能安全規格やセキュリティ評価基準ではソフトウエアのトレーサビリティが重要となります。ソフトウエアのトレーサビリティとは、「ソフトウエア開発の成果物である文書間において追跡が可能である」ことです。良好な安全性や高いセキュリティの指標としてトレーサビリティを示すことが説明責任を果たすことになります。見積もり精度を上げるためや、仕様変更や障害改修がシステムにどのような影響を与えるかを正確に解析する上でもトレーサビリティを活用する企業が増えてきています。
そこで、多種多様なツールから生成される多種多様なソフトウエア成果物間のトレーサビリティ管理を実現するために、オープンなトレーサビリティツールプラットフォームを提供するのがTERAS参考9です(図5)。TERASのソースコードは一般にも公開されており、キャッツでは公開されたソースコードをベースに商用版ZIPC TERAS参考10を提供しています。TERASは、これまで人力レビューによって机上確認されてきたトレーサビリティをIT化していきます。
図5:TERAS
参考文献
- 参考1Tucker!『憂鬱なプログラマのためのオブジェクト指向開発講座』翔泳社
- 参考2渡辺 政彦「UMLを補完するEHSTM~組み込みシステム開発の現実的ソリューション」翔泳社『DDJ』1999年2月号
- 参考3ZIPC 導入実績No.1を獲得し続ける組込みCASEツールの決定版!(外部リンク)
- 参考4
- 参考5多様なシステムを短期間で構築するTERASOLUNA(外部リンク)
- 参考6ZIPC Feature 多品種開発時代の要件モデリングツール(外部リンク)
- 参考7ZIPC FOT テスト設計支援/Pairwise法テストケース生成ツール(外部リンク)
- 参考8平成25年度第2回【起業挑戦】【産学共同促進】(外部リンク)
- 参考9TERAS Web Site(外部リンク)
- 参考10