ベースコーディングが完了したタイミングで、開発者とは別の第三者によるコードレビューを実施している。ベースコーディング完了後という開発序盤でレビューを実施しているのは「リスクを早い段階で検知し、影響を最小限にする」という理由からである。
コーディング内容の正否以外に、どのようなポイントでチェックしているかというと、
などである。
具体的に次のようなメリットがあった。
レビューでは問題点を指摘するだけでなく、評価すべき実装があれば、当人に伝えるようにしている。この仕組みを「称賛」と呼んでいる。良い設計や実装は本人が意識していないことが多い。他の人が伝えることで、本人が自覚しさらに応用して次へのステップへスキルアップするきっかけとなる。そしてモチベーションアップにもつながっている。
他のエンジニアでも発生する可能性がある問題は、当事者間のレビューで終わらせてしまうのではなく、他のエンジニアとも共有して再発防止につとめている。また、共有することでエンジニア間の持っている知識の差を減らし、認識違いで発生する問題を回避する効果もある。
当社でコードレビューをワークフローの一部としておこなうようになってから、ちょうど一年ほど経過したが、実施する前と後では明らかに後工程で発生する問題の件数は減少した。また、以前と比べコードが洗練されたためか改修やメンテナンスもしやすくなったと思う。当初想定していた効果は見られている。
レビューの方法についてはチェックを自動化するなど、まだまだ改善の余地はあるが、確実に良い効果は見られているので、引き続き続けていくようにする。