一方,異なる側面からコード片の特徴を計測する方法として,メソッドの変更回数,変更に関わった開発者数などの開発履歴から得られるプロセスメトリクスがある. 開発プロセスはソースコードの品質に影響を与えるものであり,品質の良し悪しはコード片をリファクタリングするか否かの判断材料になるため,プロセスメトリクスとリファクタリングの実施には相関がある可能性がある. そこで本研究では,プロセスメトリクスとメソッド抽出リファクタリングの関係を調査した. 調査の結果,メソッド抽出対象となるメソッドと対象ではないメソッドの間で,いくつかのプロセスメトリクスの値に有意差が確認できた.
次に,調査によって有効性が確認されたプロセスメトリクスを利用して,メソッド抽出リファクタリングの候補となるメソッドを推薦する機械学習モデルを構築し,その精度を評価した. 実験の結果,プロダクトメトリクスと今回の調査対象であるプロセスメトリクスの両方を利用した推薦モデルが,F値で0.827と最も高い精度を示した.
本発表では,前述したプロセスメトリクスの調査実験と,それらのメトリクスをメソッド抽出リファクタリングの推薦モデルに適用した実験について報告する.