タイトル通りですが、そんな調査をやってみた結果を5月のリポジトリマイニングの国際会議 (MSR) で発表しました。
論文の内容をまとめると、以下の通りです。
- 投稿されたパッチ(Pull Request) の最初の版と、最後の版で、n-gram ベースで見て、対象プロジェクトのコード「らしさ」を比べた。
- コードレビューの前と後では、後のほうが、対象プロジェクト「らしさ」は上がっているので、レビューで何かしらコードが整えられている。
- 受理されたパッチと、拒否されたパッチでは、前者のほうが対象プロジェクト「らしさ」が高い。
「コーディングスタイル」というと、ぼやっとした印象がありますが、そういうのも数値化できるのか?、ということを実験的に試してみた論文となっています。結果として、コードレビューはやっぱり機能しているんだなというのを数値で確認できました。スタイルを整えるのもレビューのうちかもしれませんが、レビューでそういう作業をするぐらいなら、パッチ投稿前に、ちゃんとそのプロジェクトのスタイルに合わせてコードを整えておくのも、レビュアーの手間が減るので大事と言えそうです。また、これは相関関係であって因果関係ではないのですが、対象プロジェクトのコードの書き方を守っているほうが、パッチが受け入れられやすかった可能性もあります。