
TL;DR
This paper introduces a new approach to automatic program repair that incorporates natural-language software artifacts to improve patch correctness and reduce overfitting, validated through an automated evaluation methodology.
Contribution
It proposes integrating natural-language artifacts into APR, along with novel methods for fault localization and test suite enhancement, to produce higher-quality patches.
Findings
Natural-language artifacts improve patch correctness.
Enhanced fault localization increases repair accuracy.
Better test suites lead to more acceptable patches.
Abstract
Automatic program repair (APR) has recently gained attention because it proposes to fix software defects with no human intervention. To automatically fix defects, most APR tools use the developer-written tests to (a) localize the defect, and (b) generate and validate the automatically produced candidate patches based on the constraints imposed by the tests. While APR tools can produce patches that appear to fix the defect for 11-19% of the defects in real-world software, most of the patches produced are not correct or acceptable to developers because they overfit to the tests used during the repair process. This problem is known as the patch overfitting problem. To address this problem, I propose to equip APR tools with additional constraints derived from natural-language software artifacts such as bug reports and requirements specifications that describe the bug and intended software…
Peer Reviews
No public reviews on file for this paper yet. If you reviewed it on a platform where reviews are public (OpenReview, ICLR, NeurIPS, ICML), you can paste yours below so the community can read it here.
Videos
No videos yet. Explain this paper in a talk, walkthrough, or lecture? Add one.
