PR

 ソフトウエアテストで最初に実施するプロセスが「テスト計画」だ。よくあるアンチパターンが、最初にスケジュールを作ってしまうというもの。テストは積み上げで計画を立てないと、品質低下や納期遅延のリスクが高まる。あるSIベンダーの若手社員「ワカテくん」もテスト計画の進め方の落とし穴に陥ったようだ。

ワカテ:ソフトウエアテストの最初は計画とのことなので、早速スケジュール表を作ってみました。

センパイ:いきなりスケジュールを作ったんだ。それは結構危ないなあ。どうやってテスト設計やテスト実行の実施期間を決めたの?

ワカテ:リリース日が6カ月後だったので、そこから逆算してテスト設計を2カ月、テスト実行を2カ月としました。過去のプロジェクトもそのくらいだったので。

センパイ:本当にその期間内で終わるという裏付けはあるかな。テストが期間内に終わらないと、ボロボロの品質でリリースすることになったり、納期に間に合わなくなってしまったりするよ。テスト計画では、まずはどんなテストをやるのかを決めるのが大事なんだ。スケジュールを立てるのはその後だよ。

 ソフトウエアテストの準備段階から終了段階までの一連の作業を「テストプロセス」と呼ぶ。テストプロセスには、「テスト計画」「テスト設計」「テスト実行」と、各プロセスの状況を確認する「テスト管理」の4つがある。テスト計画は最初に実施するテストプロセスだ。

 テスト計画では、限られた期間の中で何をテストするかを初めに決める。決して、スケジュールの作成が最初ではない。テストの対象や種類を決めずにテスト設計に進むと、必要なテストが実施されないままリリースを迎えるかもしれない。大きなトラブルを生むリスクを抱えたまま、製品を世に出すようなものだ。

 お弁当を作ると想像してほしい。最初に考えることは、誰のどんなイベントのために作るのか。主食となるのは米なのかパンなのか。限られた弁当箱にどのようなおかずを入れるか。最初にそれらを考えてから調理を始めるだろう。ソフトウエアテストも同じだ。

 以下ではテスト計画の最初の一歩である、テスト対象の決定について順を追って説明する。この作業は次の3ステップに分解できる。

STEP1 テスト対象の候補を洗い出す
STEP2 テスト対象の優先順位を決める
STEP3 テスト対象が変更されるリスクを想定する