テストの本質を探る ――30年の歴史を持つ 「ソフトウェア工学」の知恵に学ぶ
●リアルタイムに,自動的に記録を残す
ここでは,自動化ツールの例として,テスト担当者と開発者の間のコミュニケーションを円滑にし,さらにソフトウェア品質保証担当者の作業も容易にするツールについて考えてみたいと思います.一般に,このようなツールは「不ぐあい追跡ツール」と呼ばれています.
一般に,不ぐあいの発見から修正までは,次のようなフローになります.テスト担当者は不ぐあいを発見すると,発見の元になったテスト・ケース番号とともに,不ぐあいの状況を起票します.開発者はそれを見て,必要な修正を施します.(通常は)不ぐあいの発見者が修正を確認したところで,そのレポートは終了になります.
不ぐあい追跡ツールの利点は以下の三つです.
1番目の利点は,異なる役割のエンジニア(開発者,テスト担当者,ソフトウェア品質保証担当者)がリアルタイムに情報を共有することです.高頻度で発生する典型的なエラーをお互いに理解できるようになります.
2番目の利点は,開発プロセスに関するデータを容易に収集できることです.ここで言うデータとは,図2の不ぐあい成長曲線のようなものを指します.データの収集は一般に容易ではありません.また,データ収集についてはパラドックスがあります.すなわち,うまくいっているプロジェクトでは余裕があるので,さまざまなデータを彼らは提供できます.一方,うまくいっていないプロジェクトでは,そもそもそのような余裕がありません.また,心理的にデータを出したくないということもあるでしょう.本来知りたいのは,うまくいっていないプロジェクトの状況です.これがなかなか取れません.不ぐあい追跡ツールは,テスト担当者と開発者の間のやりとりから自然な形で状況をまとめて取得することを可能とします.
3番目の利点は,管理者がより良く,リアルタイムに不ぐあいの状況を知ることができることです.不ぐあい成長曲線のところで,横軸は時間ではなく,実際にはテスト担当者の労力を示すと書きました.しかし,即時に不ぐあいを記録することもまた重要です.もし,あるテスト担当者が1週間分をまとめて記録したとすると,成長曲線は不自然なものになります.リアルタイム性は,単に今役立つというだけではなく,適正な記録という面からも必要条件なのです.