はじめる前に頭に入れておきたいこと!
レビューの効果
多くの企業が、成果物の品質を作り込むために実施したルールに基づいたレビューにより得られた利益について説明しています。具体的にどのような効果が得られているのかを見てみましょう。以下は、「ピアレビュー」(詳細は参考文献参照)の8ページから抽出したものです。
・IBMの報告によれば、インスペクションを1時間実施すると、インスペクションで発見された欠陥が仮に残ったままリリースされた場合にテストにかかる工数20時間と手戻りにかかる工数82時間が節約されることがわかった。
・Imperial chemical Industries で、インスペクションを実施した一群の約400本のプログラムのLOC(Line Of Code:コードの行数)当たりの保守コストは、インスペクションを実施していない同様の400本のプログラムの保守コストの10分の1であった。
・Litton Data Systemsでは、プロジェクト総工数のうち3%だけをインスペクションに充てた。その結果、結合テストとシステムテストで発見されたエラーの数が30%減少した。設計インスペクションおよびコードインスペクションによって、製品統合化の工数は半減した。
あるプラクティスを特定の組織やチームに新規に導入する際、ROI(Return Of Investment:投資資本利益率)がいくらになるかは、誰も正確には予測できません。しかし、上記のように多くの企業が目覚ましい利益について説明しています。レビュー活動を導入したいけど最初の一歩を踏み出せないという方々には、まずは上記のような効果を信じて活動を開始するのが良いと思います。マネジャーの方は、清水の舞台から飛び降りる覚悟で、レビュー活動へ積極的な投資を考えてみてください。
ただ、やみくもに「レビューしろ、レビューしろ」と叫んでも逆効果ですので、組織やチームなりの「ルールに基づいたレビューのやり方」を決めたうえで推進することが大切です。
レビューの重要性
ここまで、レビュー活動に対する課題、レビュー活動をうまく実践するためのポイント、レビューの効果を文献からの引用などを紹介しながら説明してきました。ここであらためて、レビューの重要性を再確認してみます。
レビューの重要性を、コスト低減、高品質化、リスク管理、文化伝播と教育、という4つの視点で整理してみました(図2参照)。
開発工程の後期になってバグを検出したときの修正コストと、開発工程の初期段階でバグを検出し修正コストを比較すると大きな差があることはわかると思います。バグは早くとると結局安くつきます。レビューでバグの早期検出を心がけることが大事です。
高品質化のところで、「認識的不協和」という難しい言葉を使っています。フリー百科事典(Wikipedia)には、以下のような説明があります。
『認知的不協和(にんちてきふきょうわ、英:cognitive dissonance)は、人がある認知(知識、経験、行動など)と矛盾した認知に遭遇した時に感じる不協和(不快感)を解決しようとする心理状態、社会心理学用語。イソップ物語のすっぱい葡萄としても知られる。アメリカの心理学者レオン・フェスティンガーによって提唱された。』
次週、レビュー教育の説明をする際に、認知的不協和に関する話題をもう少し掘り下げてみます。