組み込みソフトウェア・テスト・クライシスの「傾向と対策」 ――「品質」をつねに念頭に置きながらソフトウェアを開発する
●ソフト開発者自身によるテストには限界がある
ソフトウェアの品質を確保するには,そのソフトウェアを使用する現場で発生しうる欠陥をあらかじめ予測し,その欠陥に対する対処を上流工程で済ませておくことが理想です.できるだけ上流の工程で品質を確保するためには,前述のように開発プロセスの中にいくつかのチェック・ポイントを設ける必要があります.その上で,ソフトウェア・テストに求められる要件は表1のようになります.
つまり,ソフトウェア・テストは開発作業内容の検証であり,開発作業品質の評価ということができます.ただし,現実には,開発作業内容の検証であるべきソフトウェア・テストは,品質確保のための最後のとりでとして機能しています.
〔表1〕 ソフトウェア・テストに求められる要件
テストの種類
|
目 的
|
目 標
|
ポリシ(方針)
|
|
単 |
単体結合
テスト |
CPU単位のサブシステムの制 御ソフトウェアの品質確認 | 制御ソフトウェアが仕様どおりに動作す ることを網羅テストで確認する | 開発したプログラムに対して,網羅テス トを行う |
単体結合
テスト |
CPU単位のサブシステムの品 質確認 | ハードウェアに組み込んだソフトウェア が仕様どおりに動作することを確認する | ハードウェアの要求のすべてを満足して いることを,実際にハードウェアを使っ てテストする | |
結合テスト
|
複数のCPUを持つシステムの 制御ソフトウェアの品質確認 | システムを構成するすべての制御ソフト ウェアがインターフェース仕様を守って 制御できていることを確認する | システムのモジュール間のインターフェ ースについて網羅テストを行う | |
結合テスト
|
複数のCPUを持つシステムの 品質確認 | システムが上位の要求を満足することを 確認する | すべてのシステム要求に関して,網羅テ ストを行う |