テストの本質を探る ――30年の歴史を持つ 「ソフトウェア工学」の知恵に学ぶ
ここではテスト(対象物が正しく動作することを確認する作業)の意味や,これまでソフトウェア工学の世界で議論されてきたテストに関する数々の話題を紹介する.主にソフトウェアの例をもとに解説しているが,多くの議論はHDL設計や回路設計,システム設計におけるテスト(検証)と共通している.テストの問題については,ソフトウェア工学から学ぶべきことが多い. (編集部)
テスト・チームに送り込まれたのは,不ぐあいとして現れる設計者のミスを見つけるためだった.そんなことがほんとうにできるのかどうか,わからなかった.
それはまだ会ったことのない,せっぱ詰まったプロジェクト・リーダの命令だった.プロジェクトにはお金がない.テストの工数は設計ほどまじめに見積もられることはない.スケジュールに対するスラック(余裕時間)に過ぎないのだ.
プロトタイプ版の納入に立ち会った.仲間が子どものように走り回る.携帯電話を振り回しながら,笑いながら....
大きな男が近づいてきた.握手をした.「何があったんだい」.男はニヤリと笑った.「客先でソフトが動かなかったんだよ.あんちゃん,頼んだぜ」.男の握る手に力が入る.手がしびれた.動かなかったことはわかった.だが,その意味を理解することができない.どう反応してよいのかわからない.
犯人探しのために相互参照ファイルを見た.そこには,動くこん跡はなかった.ほんとうのテストがなかったのだ.あったのは,全員の膨大な残業記録だけだった.