グーグルのクラウドを支えるテクノロジー > 第42回 Googleのソフトウェア開発におけるコードレビューの役割
- 編集部の見解や意向と異なる内容の場合があります
- 編集部は内容について正確性を保証できません
- 画像が表示されない場合、編集部では対応できません
- 内容の追加・修正も編集部では対応できません
CTC教育サービスはコラム「グーグルのクラウドを支えるテクノロジー > 第42回 Googleのソフトウェア開発におけるコードレビューの役割」を公開しました。
###
はじめに
今回は、2018年に公開された論文「Modern Code Review: A Case Study at Google」をもとにして、Googleのソフトウェア開発におけるコードレビューのプロセスを紹介したいと思います。Googleでは、オープンソースの開発で広く用いられる、変更リスト(Change List:CL)単位の軽量なコードレビュープロセスを採用しており、この論文では、1回のレビューにおけるコードの変更量や平均的なレビュアー数についての興味深い統計データも紹介されています。
コードレビュープロセスの概要
Googleのソフトウェア開発におけるコード変更のプロセスについては、第20回の記事を参考にしてください。ソフトウェア開発者は、リポジトリ上のソースコードをローカルのワークステーションに(仮想的に)クローンした後に、ローカルでコードの修正を行います。その後、修正部分についてのコードレビューを経て、リポジトリに対するコミット(変更の反映)が行われます。
一般に、ソフトウェア開発のコードレビューにはいくつかのスタイルがあり、たとえば、「コードインスペクション」と呼ばれる手法では、ソフトウェアのすべてのソースコードを最初から最後まで人間の目でチェックして、その動作を論理的に検証していきます。このような徹底的なレビュー手法については、学術的には一定の有効性が認められているものの、一般的なソフトウェア開発の現場では、時間と手間がかかりすぎるという理由で、それほど広く普及することはありませんでした。オープンソース・ソフトウェアを始めとする多くのソフトウェア開発においては、コードの変更部分を中心にレビューツールを用いてコメントをやり取りする、ややインフォーマルな手法が広く用いられています。
この続きは以下をご覧ください
https://www.school.ctc-g.co.jp/columns/nakai2/nakai242.html
ソーシャルもやってます!