ソースコードの読み方がパッチレビューに与える影響の分析

西薗 和希 (1051078)


レビュアがソースコードの読み方(レビュー戦略)を意識して変えることで,レビューの効率や効果が改善されるか否かを確かめた研究について発表する.レビューには様々な種類があるが,今回は派生開発で作成されるパッチファイルに対するレビューを想定した.レビュー戦略は大きく2つの意味を持つ.パッチファイルを読んで理解するには,オリジナルのソースコードをしっかりと理解しておく必要がある.そこで元のソースコードの読解をじっくり行ったか否か,を(1)レビュー時間の使い方,とした.次に,パッチファイルをどのように読んだかをレビュアの自由に申告してもらい,分類したものを(2)パッチの読み進め方,とした.ソフトウェア開発に携わる58名の実務経験者を対象に行った実験の結果,上で述べた二種類のレビュー戦略を変えることでレビューの効率が向上することが分かった.具体的には,オリジナルのソースコードをじっくり読む,何に着目するかを決めてからパッチファイルを読むというレビュー戦略を取ると,レビューの効率が良い傾向が得られた.一方,レビューの効果を向上させる要因は,被験者の専門知識の豊富さであることが分かった. 保守,派生開発におけるパッチレビューにおいて,パッチファイルの読み進め方およびレビュー時間の使い方をレビュアが意識的に変えることによって,パッチレビューコストの低減と,また広い観点からの指摘を得ることができるか否かを,実験を通して調べた.分析の対象となった被験者は,58名のソフトウェア開発の実務者である.被験者はペイントアプリケーションのソースコードを読解した後,それに変更を加える6種類のパッチファイルをレビューした.実験の結果,変更前のソースコードをじっくり読んでからパッチレビューを始めた被験者,および何に着目するかを明確に定めた上でパッチを読み進めた被験者は,それ以外の被験者と比べてパッチレビューにかかったコストが低かった.一方,レビュー対象のアプリケーションに関係する専門知識を持つ被験者は,ソースコード中のコメント反映漏れ,他の部分の設計方針との不整合,潜在的不具合など多面的な着眼点からレビューをしていることが分かった.