研究課題/領域番号 |
21H04877
|
研究機関 | 九州大学 |
研究代表者 |
亀井 靖高 九州大学, システム情報科学研究院, 准教授 (10610222)
|
研究分担者 |
馬 雷 九州大学, システム情報科学研究院, 准教授 (70842061)
肥後 芳樹 大阪大学, 大学院情報科学研究科, 教授 (70452414)
松本 真佑 大阪大学, 大学院情報科学研究科, 助教 (90583948)
林 晋平 東京工業大学, 情報理工学院, 准教授 (40541975)
|
研究期間 (年度) |
2021-04-05 – 2025-03-31
|
キーワード | 自動プログラム修正 / テストスイート / 自動生成 / 開発コンテキスト |
研究実績の概要 |
2021年度については,大きく3つのことに取り組んだ. A. 実験データの収集. 今後の実験を大規模化しやすくするために,(1) Javaシステムを用いていること,(2) ビルドシステムとしてMavenを用いていること,(3) テストフレームワークとしてJUnitを用いていること,(4) システムの構成にサブプロジェクトを用いていないこと,をプロジェクト選定の条件に設けた.Commons-IOやSpringといった計8つのプロジェクトから,約12,000リビジョンを収集できた.それぞれのリビジョンに対してビルド,及び,テストを実行し,テスト結果の成否を保存した.なお,ビルドやテストの実行には時間を要するため,解析用の分散実行環境を構築した. B. 欠陥限局の高度化. 得られた成果としては,例えば,(a) テストコード側に含まれる動的スメルの検出技術の確立,(b)情報検索ベースによる欠陥限局の分析,(c)JavaScriptに対するバグ限局ツールの試作,テストの実行経路と自動プログラム修正に与える影響の分析,などがあげられる. C. 欠陥の種類を広げることにも取り組んだ. 今年度は,非機能要件である性能に関する欠陥に注目して分析を行った.性能の欠陥はソフトウェア開発者にとっては原因箇所が見つけづらく,そのソフトウェアの利用者にとっては影響が大きいためである.性能に関する欠陥の修正コミットから原因箇所を追跡し,目視分類によって追跡結果の成否を確かめた.また,自動修復技術としては,Deep neural networks (DNNs) を運用環境下で修復するためのデータ増強法を提案し,15種類の故障パターンに対して従来法よりも高い修復性能を達成した.
|
現在までの達成度 (区分) |
現在までの達成度 (区分)
2: おおむね順調に進展している
理由
分散実行環境を構築し,プログラム自動修正に関するビルド実行,欠陥限局,パッチ生成,及び,テスト実行を行うことができるようになった.自動バグ修正の要の1つである欠陥限局の高度化も計画通り進められている.また,それぞれの研究成果は研究会や国際会議において発表できており,さらには一部の成果は,論文誌としても採録されている.そのため,研究の進捗として順調に進展していると考える.
|
今後の研究の推進方策 |
現在までの進捗状況は,おおむね順調に進展している.擬似オラクルの生成を実現するため,今年度取り組んだテストの実行経路と自動プログラム修正に与える影響の分析を深堀りする予定である.また,今年度でも行ったように,今後も国内外の研究会に積極的に参加し(オンライン開催を含む),多面的に意見を取り入れることで問題の早期解決を目指す.
|