2021 Fiscal Year Annual Research Report
A Study on Fault Localization for Automated Program Repair
Project/Area Number |
20H04166
|
Research Institution | Osaka University |
Principal Investigator |
肥後 芳樹 大阪大学, 情報科学研究科, 准教授 (70452414)
|
Co-Investigator(Kenkyū-buntansha) |
丸山 勝久 立命館大学, 情報理工学部, 教授 (30330012)
松本 真佑 大阪大学, 情報科学研究科, 助教 (90583948)
|
Project Period (FY) |
2020-04-01 – 2024-03-31
|
Keywords | 欠陥限局 / 自動プログラム修正 / テストケース選択 / テストケース重み付け |
Outline of Annual Research Achievements |
2021年度については,テストケースに重み付けを行いSBFLに利用する手法の考案に取り組んだ.先行研究においてもすでにテストケースに重み付けを行う研究は行われていた.しかし,単に実行経路の類似度を比較するのみでは,精度があまり向上しないことが報告されている.そのため,本研究では,ブロック化という手順を踏んだ後に類似度を比較する.ブロック化とは,ある行を実行するテストケースの集合が,その前後の行を実行するテストケースの集合と一致する場合に,それらの行を1つのブロックにまとめる処理である.ブロック化を行なった状態での重み付けにより,SBFLと差異が生じた欠陥を含む行の順位が最大17.05%向上することを確認した. また,テストケースの選択を組み込んだ自動プログラム修正技術についても取り組んだ.従来の自動プログラム修正は全てのテストケースを利用するためにパッチ生成に長い時間を要することがあった.本研究では,テストケースのカバレッジを用いた選択手法とパッチのキルカウントを利用する手法を提案し,これらを利用することで正しいパッチ生成の数を減らすことなくより短時間でバグ修正ができるようになることを確認した.
|
Current Status of Research Progress |
Current Status of Research Progress
2: Research has progressed on the whole more than it was originally planned.
Reason
2021年度については,当初の予定通り,与えられたプログラムがどの程度欠陥限局に向いているのかを自動的に計測する手法について,詳細を詰めると共にツールを実装して実験を行った.その結果を基にして論文化することができた. また,テストケースの実行経路の近似度を用いた新しいSBFLについてもそのアイデアを着想し,プロトタイプツールを実装するところまで進めることができた. 以上のことから,特に問題は発生しておらず,予定通り本研究は進んでいる.
|
Strategy for Future Research Activity |
プログラムの構造と欠陥限局の関係についての調査を行い,その調査結果に基づいて高い精度で欠陥限局できる手法の考案を行う.バグのあるメソッドについて,その欠陥を限局するのに最も向いていると思われるテストケース群を手動で作成する.ある場合では簡単にそのようなテストケースを作れるだろうし,また別の場合ではそのようなテストケースの生成が難しい場合もあると考えられる.そのような難しい場合についてどのような戦略でテストケースを生成していけば良いのかをパターン化できれば,欠陥限局に向いているテストケースの生成を高い精度で自動的に行えるようになる.
|
Research Products
(10 results)