arrow
Return

Automatic Software Repair: A Survey

delete2019-01-01
delete249
delete
OA
AI
L
Luca Gazzola
D
Daniela Micucci
L
Leonardo Mariani *
DOI:10.1109/TSE.2017.2755013delete
deleteOriginal
deleteShare
deleteSave
View PDF
Abstract

Abstract

En 中文
Despite their growing complexity and increasing size, modern software applications must satisfy strict release requirements that impose short bug fixing and maintenance cycles, putting significant pressure on developers who are responsible for timely producing high-quality software. To reduce developers workload, repairing and healing techniques have been extensively investigated as solutions for efficiently repairing and maintaining software in the last few years. In particular, repairing solutions have been able to automatically produce useful fixes for several classes of bugs that might be present in software programs. A range of algorithms, techniques, and heuristics have been integrated, experimented, and studied, producing a heterogeneous and articulated research framework where automatic repair techniques are proliferating. This paper organizes the knowledge in the area by surveying a body of 108 papers about automatic software repair techniques, illustrating the algorithms and the approaches, comparing them on representative examples, and discussing the open challenges and the empirical evidence reported so far.
Keywords:
Automatic program repair
generate and validate
search-based
semantics-driven repair
correct by construction
program synthesis
self-repairing
AI Summary

AI Summary

Key information extracted from the uploaded paper, including a brief overview, abstract, background, key highlights, visual analysis, and future outlook.

Journal

IEEE Transactions on Software Engineering cover
IEEE Transactions on Software Engineering
IF:
5.6
Papers:
2.8K
Citations:
1.1W

Organization

U
university of milano-bicocca
Scholars:
2.0W
Papers: 1.5W
Citations: 22