• Search Research Projects
  • Search Researchers
  • How to Use
  1. Back to project page

2021 Fiscal Year Annual Research Report

機械がバグを修正する時代―擬似オラクル生成・適用と自動バグ修正技術の深化

Research Project

Project/Area Number 21H04877
Research InstitutionKyushu University

Principal Investigator

亀井 靖高  九州大学, システム情報科学研究院, 准教授 (10610222)

Co-Investigator(Kenkyū-buntansha) 馬 雷  九州大学, システム情報科学研究院, 准教授 (70842061)
肥後 芳樹  大阪大学, 大学院情報科学研究科, 教授 (70452414)
松本 真佑  大阪大学, 大学院情報科学研究科, 助教 (90583948)
林 晋平  東京工業大学, 情報理工学院, 准教授 (40541975)
Project Period (FY) 2021-04-05 – 2025-03-31
Keywords自動プログラム修正 / テストスイート / 自動生成 / 開発コンテキスト
Outline of Annual Research Achievements

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種類の故障パターンに対して従来法よりも高い修復性能を達成した.

Current Status of Research Progress
Current Status of Research Progress

2: Research has progressed on the whole more than it was originally planned.

Reason

分散実行環境を構築し,プログラム自動修正に関するビルド実行,欠陥限局,パッチ生成,及び,テスト実行を行うことができるようになった.自動バグ修正の要の1つである欠陥限局の高度化も計画通り進められている.また,それぞれの研究成果は研究会や国際会議において発表できており,さらには一部の成果は,論文誌としても採録されている.そのため,研究の進捗として順調に進展していると考える.

Strategy for Future Research Activity

現在までの進捗状況は,おおむね順調に進展している.擬似オラクルの生成を実現するため,今年度取り組んだテストの実行経路と自動プログラム修正に与える影響の分析を深堀りする予定である.また,今年度でも行ったように,今後も国内外の研究会に積極的に参加し(オンライン開催を含む),多面的に意見を取り入れることで問題の早期解決を目指す.

  • Research Products

    (39 results)

All 2022 2021 Other

All Journal Article (11 results) (of which Int'l Joint Research: 6 results,  Peer Reviewed: 11 results,  Open Access: 11 results) Presentation (27 results) (of which Int'l Joint Research: 2 results,  Invited: 1 results) Remarks (1 results)

  • [Journal Article] The Ghost Commit Problem When Identifying Fix-Inducing Changes: An Empirical Study of Apache Projects2022

    • Author(s)
      Rezk Christophe、Kamei Yasutaka、McIntosh Shane
    • Journal Title

      IEEE Transactions on Software Engineering

      Volume: 48 Pages: 3297~3309

    • DOI

      10.1109/TSE.2021.3087419

    • Peer Reviewed / Open Access / Int'l Joint Research
  • [Journal Article] An empirical study on self-admitted technical debt in Dockerfiles2022

    • Author(s)
      Azuma Hideaki、Matsumoto Shinsuke、Kamei Yasutaka、Kusumoto Shinji
    • Journal Title

      Empirical Software Engineering

      Volume: 27 Pages: 1~26

    • DOI

      10.1007/s10664-021-10081-7

    • Peer Reviewed / Open Access
  • [Journal Article] NPC: Neuron Path Coverage via Characterizing Decision Logic of Deep Neural Networks2022

    • Author(s)
      Xie Xiaofei、Li Tianlin、Wang Jian、Ma Lei、Guo Qing、Juefei-Xu Felix、Liu Yang
    • Journal Title

      ACM Transactions on Software Engineering and Methodology

      Volume: 31 Pages: 1~27

    • DOI

      10.1145/3490489

    • Peer Reviewed / Open Access / Int'l Joint Research
  • [Journal Article] DeepRepair: Style-Guided Repairing for Deep Neural Networks in the Real-World Operational Environment2022

    • Author(s)
      Yu Bing、Qi Hua、Guo Qing、Juefei-Xu Felix、Xie Xiaofei、Ma Lei、Zhao Jianjun
    • Journal Title

      IEEE Transactions on Reliability

      Volume: 71 Pages: 1401~1416

    • DOI

      10.1109/TR.2021.3096332

    • Peer Reviewed / Open Access / Int'l Joint Research
  • [Journal Article] Evaluating the impact of falsely detected performance bug-inducing changes in JIT models2021

    • Author(s)
      Quach Sophia、Lamothe Maxime、Adams Bram、Kamei Yasutaka、Shang Weiyi
    • Journal Title

      Empirical Software Engineering

      Volume: 26 Pages: 1~33

    • DOI

      10.1007/s10664-021-10004-6

    • Peer Reviewed / Open Access / Int'l Joint Research
  • [Journal Article] Does Refactoring Break Tests and to What Extent?2021

    • Author(s)
      Kashiwa Yutaro、Shimizu Kazuki、Lin Bin、Bavota Gabriele、Lanza Michele、Kamei Yasutaka、Ubayashi Naoyasu
    • Journal Title

      Proceedings of International Conference on Software Maintenance and Evolution (ICSME)

      Volume: 1 Pages: 1~12

    • DOI

      10.1109/ICSME52107.2021.00022

    • Peer Reviewed / Open Access / Int'l Joint Research
  • [Journal Article] Learning to Adversarially Blur Visual Object Tracking2021

    • Author(s)
      Guo Qing、Cheng Ziyi、Juefei-Xu Felix、Ma Lei、Xie Xiaofei、Liu Yang、Zhao Jianjun
    • Journal Title

      Proceedings of International Conference on Computer Vision

      Volume: 1 Pages: 10819-10828

    • DOI

      10.1109/ICCV48922.2021.01066

    • Peer Reviewed / Open Access / Int'l Joint Research
  • [Journal Article] Applying Multi-Objective Genetic Algorithm for Efficient Selection on Program Generation2021

    • Author(s)
      Watanabe Hiroto、Matsumoto Shinsuke、Higo Yoshiki、Kusumoto Shinji、Kurabayashi Toshiyuki、Kirinuki Hiroyuki、Tanno Haruto
    • Journal Title

      Proceedings of Asia-Pacific Software Engineering Conference (APSEC)

      Volume: 1 Pages: 515-519

    • DOI

      10.1109/APSEC53868.2021.00060

    • Peer Reviewed / Open Access
  • [Journal Article] Detecting Functional Differences using Automatic Test Generation for Automated Assessment in Programming Education2021

    • Author(s)
      Izuta Ryoko、Matsumoto Shinsuke、Igaki Hiroshi、Saiki Sachio、Fukuyasu Naoki、Kusumoto Shinji
    • Journal Title

      Proceedings of Asia-Pacific Software Engineering Conference (APSEC)

      Volume: 1 Pages: 520-524

    • DOI

      10.1109/APSEC53868.2021.00062

    • Peer Reviewed / Open Access
  • [Journal Article] JTDog: a Gradle Plugin for Dynamic Test Smell Detection2021

    • Author(s)
      Taniguchi Masayuki、Matsumoto Shinsuke、Kusumoto Shinji
    • Journal Title

      Proceedings of International Conference on Automated Software Engineering (ASE)

      Volume: 1 Pages: 1271-1275

    • DOI

      10.1109/ASE51524.2021.9678529

    • Peer Reviewed / Open Access
  • [Journal Article] Supporting Proactive Refactoring: An Exploratory Study on Decaying Modules and Their Prediction2021

    • Author(s)
      SAE-LIM Natthawute、HAYASHI Shinpei、SAEKI Motoshi
    • Journal Title

      IEICE Transactions on Information and Systems

      Volume: E104.D Pages: 1601~1615

    • DOI

      10.1587/transinf.2020EDP7255

    • Peer Reviewed / Open Access
  • [Presentation] JavaScriptを対象としたスペクトラムに基づく欠陥限局ツールの試作2022

    • Author(s)
      小田 郁弥, まつ本 真佑, 楠本 真二
    • Organizer
      情報処理学会研究報告
  • [Presentation] 自動生成コードの可読性向上を目的とした探索的ソースコード整形手法の提案2022

    • Author(s)
      岩瀬 匠, まつ本 真佑, 楠本 真二
    • Organizer
      電子情報通信学会技術研究報告
  • [Presentation] フォーラムを教師データとしたアプリケーションレビュー分類手法の提案2022

    • Author(s)
      市川 直人, まつ本 真佑, 楠本 真二
    • Organizer
      電子情報通信学会技術研究報告
  • [Presentation] 意味情報と入出力例を用いた正規表現の用例検索システムresemの提案2022

    • Author(s)
      竹重 拓輝, まつ本 真佑, 楠本 真二
    • Organizer
      電子情報通信学会技術研究報告
  • [Presentation] プログラミング教育における課題達成状況比較システムの試作2022

    • Author(s)
      長谷川 和輝, まつ本 真佑, 楠本 真二
    • Organizer
      電子情報通信学会技術研究報告
  • [Presentation] ソースコードの時間変化がバグ限局に与える影響の調査2022

    • Author(s)
      三井 亮称, 林 晋平
    • Organizer
      電子情報通信学会技術研究報告
  • [Presentation] ソースコード変更パターンのプロジェクト共通性を考慮した変更推薦2022

    • Author(s)
      安藤 直樹, 林 晋平
    • Organizer
      電子情報通信学会技術研究報告
  • [Presentation] Pythonにおける機械学習関連ライブラリの自動推薦手法の初期評価2022

    • Author(s)
      小栁 慶, 秋山 楽登, 山手 響介, 近藤 将成, 亀井 靖高, 鵜林 尚靖
    • Organizer
      情報処理学会ソフトウェア工学研究会
  • [Presentation] DVCリポジトリにおけるMLパイプラインの進化に関する調査2022

    • Author(s)
      中村 悠人, 松尾 春紀, 松田 雄河, 近藤 将成, 亀井 靖高, 鵜林 尚靖
    • Organizer
      情報処理学会ソフトウェア工学研究会
  • [Presentation] 型を考慮したコードクローンの集約リファクタリングに関する研究2022

    • Author(s)
      杉原 裕太, 沖野 健太郎, 清水 一輝, 近藤 将成, 亀井 靖高, 鵜林 尚靖
    • Organizer
      情報処理学会ソフトウェア工学研究会
  • [Presentation] トレースログを用いたバグ予測の性能評価2022

    • Author(s)
      森田 一成, 柏 祐太郎, 中村 司, 山本 大貴, 近藤 将成, 亀井 靖高, 鵜林 尚靖
    • Organizer
      電子情報通信学会技術研究報告
  • [Presentation] GitHubにおけるバグ報告等の動画および画像の活用実態に関する調査2022

    • Author(s)
      蔵元 宏樹, 石本 優太, 新堂 風, 近藤 将成, 柏 祐太郎, 亀井 靖高, 鵜林 尚靖
    • Organizer
      電子情報通信学会技術研究報告
  • [Presentation] プログラミング初学者の編集履歴を考慮した自動プログラム修正手法の評価2022

    • Author(s)
      松尾 春紀, 近藤 将成, 亀井 靖高, 谷口 雄太, 鵜林 尚靖
    • Organizer
      電子情報通信学会技術研究報告
  • [Presentation] Add Parameterリファクタリングにおけるメソッド実引数の自動推定2022

    • Author(s)
      清水 一輝, 柏 祐太郎, 近藤 将成, 亀井 靖高, 鵜林 尚靖
    • Organizer
      電子情報通信学会技術研究報告
  • [Presentation] プログラミング初学者のバグ修正履歴を用いたデバッグ問題自動生成の事例研究2021

    • Author(s)
      秋山 楽登, 中村 司, 近藤 将成, 亀井 靖高, 鵜林 尚靖
    • Organizer
      ソフトウェア工学の基礎ワークショップ(FOSE)
  • [Presentation] 実行経路を考慮した自動テストケース生成が自動プログラム修正に与える影響の分析2021

    • Author(s)
      松田 雄河, 山手 響介, 近藤 将成, 柏 祐太郎, 亀井 靖高, 鵜林 尚靖
    • Organizer
      ソフトウェア工学の基礎ワークショップ(FOSE)
  • [Presentation] プログラミング作問支援に向けた類似問題検索手法の評価2021

    • Author(s)
      山本 大貴, 松尾 春紀, 沖野 健太郎, 近藤 将成, 亀井 靖高, 鵜林 尚靖
    • Organizer
      ソフトウェア工学の基礎ワークショップ(FOSE)
  • [Presentation] 継続的インテグレーションに影響を及ぼすRinging Test Alarmsに関する実証調査2021

    • Author(s)
      浅田 翔, 柏 祐太郎, 近藤 将成, 亀井 靖高, 鵜林 尚靖
    • Organizer
      ソフトウェア工学の基礎ワークショップ(FOSE)
  • [Presentation] 木編集距離を用いた類似コード検索器における深層学習モデルの性能評価2021

    • Author(s)
      沖野 健太郎, 松尾 春紀, 山本 大貴, 近藤 将成, 亀井 靖高, 鵜林 尚靖
    • Organizer
      ソフトウェアエンジニアリングシンポジウム(SES)
  • [Presentation] コンテナ仮想化技術におけるSATDの削除に関する調査2021

    • Author(s)
      新堂 風, 近藤 将成, 柏 祐太郎, 東 英明, まつ本 真佑, 亀井 靖高, 鵜林 尚靖
    • Organizer
      ソフトウェアエンジニアリングシンポジウム(SES)
  • [Presentation] An Extensive Study on Smell-Aware Bug Localization2021

    • Author(s)
      Aoi Takahashi, Natthawute Sae-Lim, Shinpei Hayashi, Motoshi Saeki
    • Organizer
      International Conference on Automated Software Engineering (ASE)
    • Int'l Joint Research
  • [Presentation] On Tracking Java Methods with Git Mechanisms2021

    • Author(s)
      Yoshiki Higo, Shinpei Hayashi, Shinji Kusumoto
    • Organizer
      International Conference on Automated Software Engineering (ASE)
    • Int'l Joint Research
  • [Presentation] Gitの機能を用いたJavaメソッドの追跡2021

    • Author(s)
      Yoshiki Higo, Shinpei Hayashi, Shinji Kusumoto
    • Organizer
      ソフトウェアエンジニアリングシンポジウム2021
    • Invited
  • [Presentation] 細粒度履歴追跡のための増分的なリポジトリ変換ツールの設計と実装2021

    • Author(s)
      柴 駿太, 林 晋平
    • Organizer
      日本ソフトウェア科学会第38回大会
  • [Presentation] 複合メトリクスのトレンド分析の効率化に向けて:モジュール腐敗度への適用2021

    • Author(s)
      林 辰宜, ドゥルバドラハ テムーレン, 林 晋平
    • Organizer
      ソフトウェア工学の基礎ワークショップ(FOSE)
  • [Presentation] 自動プログラム修正技術の性能評価 -九州大学の基幹教育データを用いた事例研究-2021

    • Author(s)
      中村 司, 亀井 靖高, 近藤 将成, 鵜林 尚靖
    • Organizer
      ソフトウェアエンジニアリングシンポジウム2021
  • [Presentation] ソフトウェア開発者の知見を考慮した半自動バグ修正の性能調査2021

    • Author(s)
      山手 響介, 近藤 将成, 亀井 靖高, 鵜林 尚靖
    • Organizer
      情報処理学会ソフトウェア工学研究会
  • [Remarks] 研究室ホームページ(PDF公開)

    • URL

      http://posl.ait.kyushu-u.ac.jp/~kamei/publications.html

URL: 

Published: 2023-12-25  

Information User Guide FAQ News Terms of Use Attribution of KAKENHI

Powered by NII kakenhi