テストの本質を探る ――30年の歴史を持つ 「ソフトウェア工学」の知恵に学ぶ

伊藤昌夫

tag: 組み込み

技術解説 2004年4月24日

●「時間がない」の問題をどう解消するか

 次に,現実の問題に触れます.以下の理由から,テストに十分な時間が取れないケースがあります.すなわち,仕様調整や設計フェーズが延びたにもかかわらず,出荷時期が変わらない場合です.また,テストをいくら実行しても,不ぐあいが出る場合があります.不ぐあいを修正しないと作業が先に進みません.そして,不ぐあいが修正されたと思ったら,その修正が別の不ぐあいを生みます.これを繰り返す状況に陥ることがあります.

 この問題への対処法はいくつかあります.

1)エラーを早期に発見するように努める

 「まずは作る.そして,とりあえずテストしてみる」という行き当たりばったりの作業を繰り返している限り,この状況は改善しません.

 よく言われるように,テストの終盤になるほど修正は困難になります.例えば,仕様の誤りは設計に影響し,実装に影響します.後工程になるほど,広い範囲に影響する可能性があります.したがって,エラーは早期のフェーズで見つけることが重要です.

 もう一つは,後工程に影響が出ないように,それぞれのフェーズをきちんと終了するようにします.例えば,コラム「V&Vのいろいろ」で説明したように,コーディングが終わったら必ずコード・インスペクションを実施します.これらにより,テスト・フェーズの過剰な負荷を取り除くことが可能となります注3

 注3;今の時期,こういうことを書くのも少し気が引ける.「それは昔から言われていることではないのか」,あるいは,「そういう大がかりなことをするからいけなくて,XP(eXtreme Programming)のように『作ってはテスト』を繰り返せばよいのではないか」.このような声が聞こえてきそうだ.しかし,筆者自身は決してそうは思わない.前者の意見に対しては,どのような開発プロセスを採用しようが,設計なしにコーディングはできないはずである(大量のドキュメントを書くかどうかは別にして...).どのような開発プロセスを採用したとしても,ライフ・サイクルはつねに単一のものとして存在している.後者の意見に対しては,「きちんとした設計と実装がない限り,細分化された問題が増大するだけではないのか?」と思っている.

組み込みキャッチアップ

お知らせ 一覧を見る

電子書籍の最新刊! FPGAマガジン No.12『ARMコアFPGA×Linux初体験』好評発売中

FPGAマガジン No.11『性能UP! アルゴリズム×手仕上げHDL』好評発売中! PDF版もあります

PICK UP用語

EV(電気自動車)

関連記事

EnOcean

関連記事

Android

関連記事

ニュース 一覧を見る
Tech Villageブログ

渡辺のぼるのロボコン・プロモータ日記

2年ぶりのブログ更新w

2016年10月 9日

Hamana Project

Hamana-8最終打ち上げ報告(その2)

2012年6月26日