リファクタリングにより破壊されるテストスイート予測技術の開発:自動修正への挑戦
Project/Area Number |
21K17725
|
Research Category |
Grant-in-Aid for Early-Career Scientists
|
Allocation Type | Multi-year Fund |
Review Section |
Basic Section 60050:Software-related
|
Research Institution | Nara Institute of Science and Technology (2022) Kyushu University (2021) |
Principal Investigator |
柏 祐太郎 奈良先端科学技術大学院大学, 先端科学技術研究科, 助教 (20886650)
|
Project Period (FY) |
2021-04-01 – 2024-03-31
|
Project Status |
Granted (Fiscal Year 2022)
|
Budget Amount *help |
¥4,550,000 (Direct Cost: ¥3,500,000、Indirect Cost: ¥1,050,000)
Fiscal Year 2023: ¥1,430,000 (Direct Cost: ¥1,100,000、Indirect Cost: ¥330,000)
Fiscal Year 2022: ¥1,430,000 (Direct Cost: ¥1,100,000、Indirect Cost: ¥330,000)
Fiscal Year 2021: ¥1,690,000 (Direct Cost: ¥1,300,000、Indirect Cost: ¥390,000)
|
Keywords | テストスイート / リファクタリング / 自動修正 / テストコード自動修正 |
Outline of Research at the Start |
従来,ソフトウェア品質を向上させるためにリファクタリングが広く実施されているが,リファクタリングは多大な時間と労力を要するため,開発期間が短く限られているプロジェクトでは敬遠される傾向にある.開発者にリファクタリングを躊躇させる心理的要因の一つとして「リファクタリングによるテストスイートの破壊」が挙げられる.本応募課題では,どのようなリファクタリングがテストスイートを破壊するかを分析し,リファクタリングによるテストスイートの影響範囲および必要修正箇所の特定技術を確立する.さらに,リファクタリング種別ごとにテストスイート修正パターンを分類し,実現性が高くかつ重要な修正パターンの自動修正を試みる.
|
Outline of Annual Research Achievements |
近年のソフトウェア開発では,短期間で品質の高いソフトウェアを開発することが求められている.ソフトウェア品質を向上させるためにリファクタリングが広く実施されているが,リファクタリングは多大な時間と労力を要することが多く,開発期間が短く限られている場合は敬遠される傾向にある.開発者にリファクタリングを躊躇させる心理的要因の一つが「リファクタリングによるテストスイートの破壊」である.本応募課題では,どのようなリファクタリングがテストスイートを破壊するかを分析し,リファクタリングによるテストスイートの影響範囲および必要修正箇所の特定技術を確立する.さらに,リファクタリング種別ごとにテストスイート修正パターンを分類し,テストスイートの自動修正を試みる.
本年度では,リファクタリングに伴って破壊されるテストケースや補修必要箇所を予測するモデルを構築した.予測モデルを構築するにあたって,プロダクションコードから様々なメトリクス(リファクタリングの種別,対象クラスの規模数,変更行数等)を取得した.その後,様々な予測アルゴリズム(ランダムフォレスト等)を試行しながら,最も精度の良いアルゴリズムとメトリクスを検討した.また,破壊されたテストを修復するために自動修正モデルを試作した.試作モデルの初期評価を纏め,ソフトウェア工学におけるトップカンファレンス(CORE A)のひとつであるSANERに投稿した結果,論文が採録された.
|
Current Status of Research Progress |
Current Status of Research Progress
1: Research has progressed more than it was originally planned.
Reason
当初の予定であった,リファクタリングの影響箇所の分析や補修箇所の予測に加えて,自動修正モデルの試作まで実施できたため.
|
Strategy for Future Research Activity |
当初の計画通り,テストの自動修正モデルをより多くのデータ(すなわち様々なシナリオ)を用いて評価する.また,国内外の研究会に積極的に参加し,多面的から意見を伺い,より精度の高いモデルの構築を目指す
|
Report
(2 results)
Research Products
(10 results)