• システム開発に関わる内容をざっくりと書いていく

コードレビューの有用性、メリット、デメリット

レビューについて諸説あるが、メリット、デメリット

メリット

・メンバーのコーディングレベルが低い場合、レベルの低いコーディングを事前に発見し、修正することができる。再利用性が無かったり、無駄に複雑なコードを保守するのは工数やデグレの観点からかなり大きなものになるケースがあるので防げる。

・コーディングを担当していた人が気づかなかった要件の漏れや矛盾を発見できる可能性が高くなる。

・ヒューマンミス、ケアレスミスによる不具合を発見できる可能性が高くなる。

デメリット

・レビュー者の時間というコストがかかる。

・どの程度の粒度のレビューを行うか等のルールを決める必要がある。

・細かすぎる指摘をされると余計にコストがかかる。

・レビュー者のレビュースキルに依存する。

・設計志向やコーディングのデザイン面の価値観で意見対立が発生し、無駄なコスト(時間)や人間関係の悪化につながる可能性がある。

有用性

まとめると、レビューが有用になるのは、コーディング者の経験が浅かったり、まだその現場に慣れてないなどでコーディングレベルが低いもしくは不明な場合や、既に製品化している等で時間よりも不具合を出さないことの方が優先の場合に有効かと思われる。それなりにデメリットも多いので、スピード重視の開発期間中はコストパフォーマンスとして逆効果となるケースも多いかと考えられる。時間というコストが無視できないレベルでかかるので、コーディング者がそれなりのレベルならデメリットの方が大きくなりがち。