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 条
  • [1] Software Maintenance and Evolution and Automated Software Engineering
    Carver, Jeffrey C.
    Serebrenik, Alexander
    IEEE SOFTWARE, 2018, 35 (02) : 102 - 104
  • [2] relifix: Automated Repair of Software Regressions
    Tan, Shin Hwei
    Roychoudhury, Abhik
    2015 IEEE/ACM 37TH IEEE INTERNATIONAL CONFERENCE ON SOFTWARE ENGINEERING, VOL 1, 2015, : 471 - 482
  • [3] Automated Planning for Software Architecture Evolution
    Barnes, Jeffrey M.
    Pandey, Ashutosh
    Garlan, David
    2013 28TH IEEE/ACM INTERNATIONAL CONFERENCE ON AUTOMATED SOFTWARE ENGINEERING (ASE), 2013, : 213 - 223
  • [4] Automated program repair: a step towards software automation
    Abhik ROYCHOUDHURY
    Yingfei XIONG
    Science China(Information Sciences), 2019, 62 (10) : 47 - 49
  • [5] Automatic Software Merging using Automated Program Repair
    Xing, Xiaoqian
    Maruyama, Katsuhisa
    2019 IEEE 1ST INTERNATIONAL WORKSHOP ON INTELLIGENT BUG FIXING (IBF '19), 2019, : 11 - 16
  • [6] Multiplicative Weights Algorithms for Parallel Automated Software Repair
    Renzullo, Joseph
    Weimer, Westley
    Forrest, Stephanie
    2021 IEEE 35TH INTERNATIONAL PARALLEL AND DISTRIBUTED PROCESSING SYMPOSIUM (IPDPS), 2021, : 984 - 993
  • [7] Automated program repair: a step towards software automation
    Abhik Roychoudhury
    Yingfei Xiong
    Science China Information Sciences, 2019, 62
  • [8] Automated Synthesis of CONNECtors to support Software Evolution
    Bennaceur, Amel
    Inverardi, Paola
    Issarny, Valerie
    Spalazzese, Romina
    ERCIM NEWS, 2012, (88): : 25 - 26
  • [9] Automated program repair: a step towards software automation
    Roychoudhury, Abhik
    Xiong, Yingfei
    SCIENCE CHINA-INFORMATION SCIENCES, 2019, 62 (10)
  • [10] Automated construction of reference model for software remodularization through software evolution
    Meng, Fanyi
    Yu, Hai
    Chong, Chun Yong
    Wang, Ying
    Zhu, Zhiliang
    JOURNAL OF SOFTWARE-EVOLUTION AND PROCESS, 2024, 36 (10)