[学士論文] 時間的近接性を考慮した改版履歴の分析に基づく変更支援手法

小林研B4の森さんが学士論文の発表を行いました.

論文題目:時間的近接性を考慮した改版履歴の分析に基づく変更支援手法
論文概要:

ソフトウェアの大規模化に伴い保守工程の労力が増大している。不具合修正や機能追加の際に、依存関係によって変更の影響が波及し追加の変更が必要となる個所の特定はますます困難となっている。必要な変更箇所を見落とすことを防ぐために、開発者の開発履歴を用いた変更支援手法が近年盛んに研究されている。これまでに、改版履歴を分析することで頻繁に同時変更されているファイル集合を発見し、あるファイルが変更された際に別のファイルも同時に変更しなければならないことを示す同時変更ルールを用いて変更推薦を行う手法が提案されてきた。

本研究では、改版履歴に基づく変更推薦の性能向上を目的とし、ルールを抽出する改版履歴を選別する2 つの手法を提案する。1 つ目の手法は変更ルールを全ての履歴から抽出すると質が低下する可能性に着目し、時間的近接性を考慮して推薦対象の直近の履歴のみを用いる。2 つ目の手法は変更箇所間の関係性が低いとされる同時変更ファイル数の多い履歴を除去する。

提案手法によって変更推薦の性能が向上するかを検証するため、代表的な大規模OSS であるEclipse、Firefox、Tomcat の改版履歴を用いた従来法との比較実験を行った。実験の結果、直近のコミットのみを用いることで推薦の性能を表す指標であるF-measure が0.097 程度上昇すること、また、その上で同時変更ファイル数の多いコミットを除去することで一部のプロジェクトでは更に推薦の性能が向上することを示した。