Do automated program repair techniques repair hard and important bugs?

被引:0
|
作者
Manish Motwani
Sandhya Sankaranarayanan
René Just
Yuriy Brun
机构
[1] University of Massachusetts,College of Information and Computer Science
来源
关键词
Automated program repair; Repairability;
D O I
暂无
中图分类号
学科分类号
摘要
Existing evaluations of automated repair techniques focus on the fraction of the defects for which the technique can produce a patch, the time needed to produce patches, and how well patches generalize to the intended specification. However, these evaluations have not focused on the applicability of repair techniques and the characteristics of the defects that these techniques can repair. Questions such as “Can automated repair techniques repair defects that are hard for developers to repair?” and “Are automated repair techniques less likely to repair defects that involve loops?” have not, as of yet, been answered. To address such questions, we annotate two large benchmarks totaling 409 C and Java defects in real-world software, ranging from 22K to 2.8M lines of code, with measures of the defect’s importance, the developer-written patch’s complexity, and the quality of the test suite. We then analyze relationships between these measures and the ability to produce patches for the defects of seven automated repair techniques —AE, GenProg, Kali, Nopol, Prophet, SPR, and TrpAutoRepair. We find that automated repair techniques are less likely to produce patches for defects that required developers to write a lot of code or edit many files, or that have many tests relevant to the defect. Java techniques are more likely to produce patches for high-priority defects. Neither the time it took developers to fix a defect nor the test suite’s coverage correlate with the automated repair techniques’ ability to produce patches. Finally, automated repair techniques are less capable of fixing defects that require developers to add loops and new function calls, or to change method signatures. These findings identify strengths and shortcomings of the state-of-the-art of automated program repair along new dimensions. The presented methodology can drive research toward improving the applicability of automated repair techniques to hard and important bugs.
引用
收藏
页码:2901 / 2947
页数:46
相关论文
共 50 条
  • [1] Do automated program repair techniques repair hard and important bugs?
    Motwani, Manish
    Sankaranarayanan, Sandhya
    Just, Rene
    Brun, Yuriy
    EMPIRICAL SOFTWARE ENGINEERING, 2018, 23 (05) : 2901 - 2947
  • [2] Do Automated Program Repair Techniques Repair Hard and Important Bugs?
    Motwani, Manish
    Sankaranarayanan, Sandhya
    Just, Rene
    Brun, Yuriy
    PROCEEDINGS 2018 IEEE/ACM 40TH INTERNATIONAL CONFERENCE ON SOFTWARE ENGINEERING (ICSE), 2018, : 25 - 25
  • [3] Extending the range of bugs that automated program repair can handle
    Al-Bataineh, Omar I.
    Moonen, Leon
    Vidziunas, Linas
    JOURNAL OF SYSTEMS AND SOFTWARE, 2024, 209
  • [4] Towards Extending the Range of Bugs That Automated Program Repair Can Handle
    Al-Bataineh, Omar I.
    Moonen, Leon
    2022 IEEE 22ND INTERNATIONAL CONFERENCE ON SOFTWARE QUALITY, RELIABILITY AND SECURITY, QRS, 2022, : 209 - 220
  • [5] Applying CodeBERT for Automated Program Repair of Java']Java Simple Bugs
    Mashhadi, Ehsan
    Hemmati, Hadi
    2021 IEEE/ACM 18TH INTERNATIONAL CONFERENCE ON MINING SOFTWARE REPOSITORIES (MSR 2021), 2021, : 505 - 509
  • [6] Automated program repair for variability bugs in software product line systems
    Nguyen, Thu-Trang
    Zhang, Xiao-Yi
    Arcaini, Paolo
    Ishikawa, Fuyuki
    Vo, Hieu Dinh
    JOURNAL OF SYSTEMS AND SOFTWARE, 2025, 221
  • [7] Experience Report: How Do Techniques, Programs, and Tests Impact Automated Program Repair?
    Kong, Xianglong
    Zhang, Lingming
    Wong, W. Eric
    Li, Bixin
    2015 IEEE 26TH INTERNATIONAL SYMPOSIUM ON SOFTWARE RELIABILITY ENGINEERING (ISSRE), 2015, : 194 - 204
  • [8] Automatic dataset generation for automated program repair of bugs and vulnerabilities through SonarQube
    del-Hoyo-Gabaldon, Jesus -Angel
    Moreno-Cediel, Antonio
    Garcia-Lopez, Eva
    Garcia-Cabot, Antonio
    de-Fitero-Dominguez, David
    SOFTWAREX, 2024, 26
  • [9] Automated Program Repair
    Le Goues, Claire
    Pradel, Michael
    Roychoudhury, Abhik
    COMMUNICATIONS OF THE ACM, 2019, 62 (12) : 56 - 65
  • [10] An Enhanced Patch Optimization Technique for Multi-Chunk Bugs in Automated Program Repair
    Safarovich, Abdinabiev Aslan
    Kim, Jisung
    Lee, Byungjeong
    JOURNAL OF INFORMATION PROCESSING SYSTEMS, 2024, 20 (05): : 627 - 639