Automatically finding patches using genetic programming
University of Virginia · University of New Mexico
Abstract
Automatic program repair has been a longstanding goal in software engineering, yet debugging remains a largely manual process. We introduce a fully automated method for locating and repairing bugs in software. The approach works on off-the-shelf legacy applications and does not require formal specifications, program annotations or special coding practices. Once a program fault is discovered, an extended form of genetic programming is used to evolve program variants until one is found that both retains required functionality and also avoids the defect in question. Standard test cases are used to exercise the fault and to encode program requirements. After a successful repair has been discovered, it is minimized…
Citation impact
- FWCI
- 58.29
- Percentile
- 100%
- References
- 45
Authors
4Topics & keywords
- Debugging
- Computer science
- Genetic programming
- Programming language
- Software bug
- Coding (social sciences)
- Software engineering
- Software