上流品質を担保するために必要な3つのこと
高橋氏は、講演の冒頭で次の図を紹介した。
「これは、ケイパー・ジョーズという有名な学者さんの図です。データ自体はちょっと古いけど、開発プロセスのカオスな状態を示すのにいいと思っています。皆さんが、よくご存じの通り、開発プロセスの各段階で発生したバグは、その段階のうちに始末する必要があります。でも残念ながら、どこの組織でも、要求仕様のバグが最後のテストフェーズで見つかります。最悪の場合、保守フェーズつまり市場で見つかって、カオスな状態になってしまいます」
そして、上流で品質を担保する重要性をいくつかの例を挙げて力説した。たとえば、上流テストを十分におこなってバグを検出したグループと、上流で十分にバグを検出しなかったグループを比較したデータも示した。こちらでも、上流でテストを十分に行ったグループ出荷後の品質が大きく改善していた。
「これは、アジャイルやスクラムという、短いイテレーション・ライフサイクルの場合でも同じで、上流工程・初期の段階から品質を担保するのが重要です」
でも、具体的にどうやってやるのだろうか?
高橋氏は、日々の開発活動で上流品質を担保する必要があり、そのためには次の3つが必要だと説明した。
- 単体テスト
- リファクタリング
- 要求仕様のテストケース展開
「この3つは、ぼく自身が経験から学んだやり方です。まだIEEEやISOのスタンダードになっている訳ではありませんが、今日の講演でインスパイアされたところから使ってもらえたらウレシイです」