研究課題
本研究は,より現実的な自動リファクタリングの実現に向けて,様々な観点を考慮したリファクタリング探索を実現すると共に,探索の対話的制御のためのリファクタリング結果の効率的なレビュー方法の確立を目指すものである.令和3年度では,主に以下の成果を得た.(1)前年度に引き続き,探索に基づくリファクタリング自動推薦手法の検討を進めた.開発者間の議論経験やモジュールの所有者情報に基づいてリファクタリング結果のレビュー労力を見積もる適応度関数を設計し,ソースコード品質に基づく適応度関数と組み合わせることにより,ヒューリスティック探索に基づく多目的最適化としてリファクタリング探索を定式化し,これを解くことにより実現可能性の高いリファクタリング操作を導出する手法を開発した.また,評価のためのリファクタリング実例を効率よく収集するための環境の整備を行った.(2)リファクタリングを含むソースコード変更パターンを版管理履歴から抽出し,自動的にそれらを適用できる箇所を特定する手法を発展させ,複数のプロジェクトに横断的に出現するような汎用的なパターンを特定する方式について検討した.(3)リファクタリングを適用すべきソフトウェア成果物中の低品質箇所である不吉な臭いを,精度良く,また開発のより早い段階で特定する手法を開発した.(4)これまでに開発してきたJavaモジュールの細粒度追跡手法の速度性能を向上させ,より効率よく細粒度モジュールの開発者情報を得ることを可能にした.
すべて 2022 2021 その他
すべて 国際共同研究 (1件) 雑誌論文 (9件) (うち国際共著 1件、 査読あり 9件、 オープンアクセス 9件) 学会発表 (10件) (うち国際学会 5件、 招待講演 1件)
IEICE Transactions on Information and Systems
巻: 105-D(5) ページ: 837-848
10.1587/transinf.2021KBP0006
巻: 105-D(5) ページ: 849-863
10.1587/transinf.2021KBP0008
Proceedings of the 30th IEEE/ACM International Conference on Program Comprehension
巻: - ページ: 565-569
10.1145/3524610.3528386
巻: - ページ: 162-172
10.1145/3524610.3527870
コンピュータソフトウェア
巻: - ページ: -
Proceedings of the 29th IEEE/ACM International Conference on Program Comprehension
巻: - ページ: 495-499
10.1109/ICPC52881.2021.00058
Proceedings of the 18th IEEE/ACM International Conference on Mining Software Repositories
巻: - ページ: 460-470
10.1109/MSR52588.2021.00058
Journal of Systems and Software
巻: 178(110986) ページ: 1-17
10.1016/j.jss.2021.110986
巻: E104-D(10) ページ: 1601-1615
10.1587/transinf.2020EDP7255