The Evolution of Automated Software Repair

被引:0
|
作者
Le Goues, Claire [1 ]
Nguyen, Thanhvu [2 ]
Forrest, Stephanie [3 ]
Weimer, Westley [4 ]
机构
[1] Carnegie Mellon Univ, Pittsburgh, PA 15213 USA
[2] George Mason Univ, Fairfax, VA 22030 USA
[3] Arizona State Univ, Tempe, AZ 85287 USA
[4] Univ Michigan, Ann Arbor, MI 48109 USA
关键词
Maintenance engineering; Computer bugs; Software; Codes; Standards; Manuals; Debugging; Testing; Genetic programming; Evolution (biology); Automatic programming; corrections; testing and debugging; evolutionary computation; PROGRAM REPAIR; BUGS;
D O I
10.1109/TSE.2025.3533309
中图分类号
TP31 [计算机软件];
学科分类号
081202 ; 0835 ;
摘要
GenProg implemented a novel method for automatically evolving patches to repair test suite failures in legacy C programs. It combined insights from genetic programming and software engineering. Many of the original design decisions in GenProg were ultimately less important than its impact as an existence proof. In particular, it demonstrated that useful patches for non-trivial bugs and programs could be generated automatically. Since the original publication, research in automated program repair has expanded to consider and evaluate many new methods, contexts and defects. As code synthesis and debugging techniques based on machine learning have become popular, it is informative to consider how views on perennial issues in program repair have changed, or remained static, over time. This retrospective discusses the issues of repair quality (including the role of tests), use cases for automated repairs (including the role of humans), and why these approaches work at all.
引用
收藏
页码:870 / 873
页数:4
相关论文
共 50 条
  • [21] A Software-Repair Robot Based on Continual Learning
    Baudry, Benoit
    Chen, Zimin
    Etemadi, Khashayar
    Fu, Han
    Ginelli, Davide
    Kommrusch, Steve
    Martinez, Matias
    Monperrus, Martin
    Ron Arteaga, Javier
    Ye, He
    Yu, Zhongxing
    IEEE SOFTWARE, 2021, 38 (04) : 28 - 35
  • [22] Software for automated reading of sunshine duration by Digital Image Processing
    Raniero, M. R.
    Calca, M. V. C.
    Fernando, D. M. Z.
    de Almeida, O. C. P.
    Dal Pai, A.
    IEEE LATIN AMERICA TRANSACTIONS, 2020, 18 (09) : 1599 - 1605
  • [23] Automated Software Test Data Generation With Generative Adversarial Networks
    Guo, Xiujing
    Okamura, Hiroyuki
    Dohi, Tadashi
    IEEE ACCESS, 2022, 10 : 20690 - 20700
  • [24] Trimmer: An Automated System for Configuration-Based Software Debloating
    Ahmad, Aatira Anum
    Noor, Abdul Rafae
    Sharif, Hashim
    Hameed, Usama
    Asif, Shoaib
    Anwar, Mubashir
    Gehani, Ashish
    Zaffar, Fareed
    Siddiqui, Junaid Haroon
    IEEE TRANSACTIONS ON SOFTWARE ENGINEERING, 2022, 48 (09) : 3485 - 3505
  • [25] How do Developers Really Feel About Bug Fixing? Directions for Automatic Program Repair
    Winter, Emily
    Bowes, David
    Counsell, Steve
    Hall, Tracy
    Haraldsson, Saemundur
    Nowack, Vesna
    Woodward, John
    IEEE TRANSACTIONS ON SOFTWARE ENGINEERING, 2023, 49 (04) : 1823 - 1841
  • [26] Automatic Software Repair: A Bibliography
    Monperrus, Martin
    ACM COMPUTING SURVEYS, 2018, 51 (01)
  • [27] FixMiner: Mining relevant fix patterns for automated program repair
    Koyuncu, Anil
    Liu, Kui
    Bissyande, Tegawende F.
    Kim, Dongsun
    Klein, Jacques
    Monperrus, Martin
    Le Traon, Yves
    EMPIRICAL SOFTWARE ENGINEERING, 2020, 25 (03) : 1980 - 2024
  • [28] FixMiner: Mining relevant fix patterns for automated program repair
    Anil Koyuncu
    Kui Liu
    Tegawendé F. Bissyandé
    Dongsun Kim
    Jacques Klein
    Martin Monperrus
    Yves Le Traon
    Empirical Software Engineering, 2020, 25 : 1980 - 2024
  • [29] STUBCODER: Automated Generation and Repair of Stub Code for Mock Objects
    Zhu, Hengcheng
    Wei, Lili
    Terragni, Valerio
    Liu, Yepang
    Cheung, Shing-Chi
    Wu, Jiarong
    Sheng, Qin
    Zhang, Bing
    Song, Lihong
    ACM TRANSACTIONS ON SOFTWARE ENGINEERING AND METHODOLOGY, 2024, 33 (01)
  • [30] Automatic Software Repair: A Survey
    Gazzola, Luca
    Micucci, Daniela
    Mariani, Leonardo
    IEEE TRANSACTIONS ON SOFTWARE ENGINEERING, 2019, 45 (01) : 34 - 67