English
Related papers

Related papers: Estimating the Potential of Program Repair Search …

200 papers

Automated program repair is an emerging technology which consists of a suite of techniques to automatically fix bugs or vulnerabilities in programs. In this paper, we present a comprehensive survey of the state of the art in program repair.…

Software Engineering · Computer Science 2022-11-24 Xiang Gao , Yannic Noller , Abhik Roychoudhury

Being able to automatically repair programs is an extremely challenging task. In this paper, we present MintHint, a novel technique for program repair that is a departure from most of today's approaches. Instead of trying to fully automate…

Software Engineering · Computer Science 2013-09-17 Shalini Kaleeswaran , Varun Tulsian , Aditya Kanade , Alessandro Orso

Defects4J is a large, peer-reviewed, structured dataset of real-world Java bugs. Each bug in Defects4J is provided with a test suite and at least one failing test case that triggers the bug. In this paper, we report on an experiment to…

Software Engineering · Computer Science 2015-12-24 Matias Martinez , Thomas Durieux , Jifeng Xuan , Romain Sommerard , Martin Monperrus

The lack of comprehensive sources of accurate vulnerability data represents a critical obstacle to studying and understanding software vulnerabilities (and their corrections). In this paper, we present an approach that combines heuristics…

Software Engineering · Computer Science 2025-03-18 Daan Hommersom , Antonino Sabetta , Bonaventura Coppola , Dario Di Nucci , Damian A. Tamburri

We propose a method combining machine learning with a static analysis tool (i.e. Infer) to automatically repair source code. Machine Learning methods perform well for producing idiomatic source code. However, their output is sometimes…

Software Engineering · Computer Science 2023-04-24 Ruba Mutasim , Gabriel Synnaeve , David Pichardie , Baptiste Rozière

Automated program repair techniques aim to aid software developers with the challenging task of fixing bugs. In heuristic-based program repair, a search space of program variants, created via mutations on software, is explored to find…

Software Engineering · Computer Science 2024-05-07 Carol Hanna , Aymeric Blot , Justyna Petke

Defects4J is a large, peer-reviewed, structured dataset of real-world Java bugs. Each bug in Defects4J comes with a test suite and at least one failing test case that triggers the bug. In this paper, we report on an experiment to explore…

Software Engineering · Computer Science 2021-11-12 Matias Martinez , Thomas Durieux , Romain Sommerard , Jifeng Xuan , Martin Monperrus

The characterization of bug datasets is essential to support the evaluation of automatic program repair tools. In a previous work, we manually studied almost 400 human-written patches (bug fixes) from the Defects4J dataset and annotated…

Software Engineering · Computer Science 2018-07-31 Fernanda Madeiral , Thomas Durieux , Victor Sobreira , Marcelo Maia

Automated program repair (APR) has great potential to reduce the effort and time-consumption in software maintenance and becomes a hot topic in software engineering recently with many approaches being proposed. Multi-location program repair…

Software Engineering · Computer Science 2019-01-08 Shangwen Wang , Xiaoguang Mao , Nan Niu , Xin Yi , Anbang Guo

Debugging imperative network programs is a challenging task for developers because understanding various network modules and complicated data structures is typically time-consuming. To address the challenge, this paper presents an automated…

Software Engineering · Computer Science 2021-10-22 Lei Shi , Yuepeng Wang , Rajeev Alur , Boon Thau Loo

In the field of automated program repair, the redundancy assumption claims large programs contain the seeds of their own repair. However, most redundancy-based program repair techniques do not reason about the repair ingredients---the code…

Software Engineering · Computer Science 2023-10-13 Martin White , Michele Tufano , Matias Martinez , Martin Monperrus , Denys Poshyvanyk

Automated Program Repair (APR) techniques typically rely on a given test-suite to guide the repair process. Apart from the need to provide test oracles, this makes the produced patches prone to test data over-fitting. In this work, instead…

Software Engineering · Computer Science 2023-08-02 Yuntong Zhang , Andreea Costea , Ridwan Shariffdeen , Davin McCall , Abhik Roychoudhury

High-quality and large-scale repositories of real bugs and their concise patches collected from real-world applications are critical for research in software engineering community. In such a repository, each real bug is explicitly…

Software Engineering · Computer Science 2021-03-02 Yanjie Jiang , Hui Liu , Nan Niu , Lu Zhang , Yamin Hu

A long-standing open challenge for automated program repair is the overfitting problem, which is caused by having insufficient or incomplete specifications to validate whether a generated patch is correct or not. Most available repair…

Software Engineering · Computer Science 2021-11-11 Omar I. Al-Bataineh , Anastasiia Grishina , Leon Moonen

Automated generation of feedback on programming assignments holds significant benefits for programming education, especially when it comes to advanced assignments. Automated Program Repair techniques, especially Large Language Model based…

Software Engineering · Computer Science 2024-04-03 Qianhui Zhao , Fang Liu , Li Zhang , Yang Liu , Zhen Yan , Zhenghao Chen , Yufei Zhou , Jing Jiang , Ge Li

Large language models (LLMs) have recently demonstrated strong potential for automated program repair (APR). However, existing LLM-based techniques primarily rely on coarse-grained external feedback (e.g.,test results) to guide iterative…

Software Engineering · Computer Science 2025-11-25 Jiaolong Kong , Xiaofei Xie , Yiheng Xiong , Yuekun Wang , Jian Wang

Learning-based program repair has achieved good results in a recent series of papers. Yet, we observe that the related work fails to repair some bugs because of a lack of knowledge about 1) the application domain of the program being…

Software Engineering · Computer Science 2023-04-20 He Ye , Matias Martinez , Xiapu Luo , Tao Zhang , Martin Monperrus

Providing personalized and timely feedback for student's programming assignments is useful for programming education. Automated program repair (APR) techniques have been used to fix the bugs in programming assignments, where the Large…

Computers and Society · Computer Science 2024-10-30 Fang Liu , Zhenwei Liu , Qianhui Zhao , Jing Jiang , Li Zhang , Ge Li , Zian Sun , Zhongqi Li , Yuchi Ma

Maintenance is a dominant component of software cost, and localizing reported defects is a significant component of maintenance. We propose a scalable approach that leverages the natural language present in both defect reports and source…

Software Engineering · Computer Science 2012-11-14 Zachary P. Fry , Westley Weimer

Code analyzers such as Error Prone and FindBugs detect code patterns symptomatic of bugs, performance issues, or bad style. These tools express patterns as quick fixes that detect and rewrite unwanted code. However, it is difficult to come…

Software Engineering · Computer Science 2018-09-11 Reudismam Rolim , Gustavo Soares , Rohit Gheyi , Titus Barik , Loris D'Antoni