- Does code review really remove coding convention violations? | IEEE Conference Publication
- https://ieeexplore.ieee.org/document/9252011
レポートを読んだまとめ。
2020 年の IEEE 国際会議で発表されたレポート。コードレビューがコーディング規約違反の除去にどの程度効果的かを実証分析している。 Eclipse コミュニティのプロジェクトの約 16,000 件のコードレビューリクエストを分析し、それらがコーディング規約違反の防止や除去にどの程度有効だったかを調査したもの。
なおコーディング規約違反はバグとは異なる。コーディング規約違反とは、機能に問題はないものの組織のコーディングスタイルに沿っていない状態を指す。
調査結果を要約すると次の通り。
- コードレビューが実施されていても、コードベースが成長するにつれて規約違反の数は増加する傾向がある。
- レビューのプロセスにおいて、規約違反がレビュイーによって自発的に修正されるケースは見受けられた一方、レビュアーにより違反が指摘されて修正されるケースは限られていた。
- 違反がレビュー中ではなく、その後のコミットで修正される場合も多く、レビューの直接的な効果は限定的であると結論づけられる。
- 規約違反の検出を人間によるレビューに頼るのではなく、静的解析ツールなどの自動化された手法を導入することが有効であると提案している。