Title
MintHint: automated synthesis of repair hints
Abstract
Being able to automatically repair programs is at the same time a very compelling vision and 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 program repair, which is often an unachievable goal, MintHint performs statistical correlation analysis to identify expressions that are likely to occur in the repaired code and generates, using pattern-matching based synthesis, repair hints from these expressions. Intuitively, these hints suggest how to rectify a faulty statement and help developers find a complete, actual repair. We also present an empirical evaluation of MintHint in two parts. The first part is a user study that shows that, when debugging, developers’ productivity improved manyfold with the use of repair hints—instead of traditional fault localization information alone. The second part consists of applying MintHint to several faults in Unix utilities to further assess the effectiveness of the approach. Our results show that MintHint performs well even in common situations where (1) the repair space searched does not contain the exact repair, and (2) the operational specification obtained from the test cases for repair is incomplete or even imprecise, which can be challenging for approaches aiming at fully automated repair.
Year
DOI
Venue
2014
10.1145/2568225.2568258
Proceedings of the 36th International Conference on Software Engineering
Keywords
DocType
Volume
program synthesis,program repair,statistical correlations,repair hints,testing and debugging
Conference
abs/1306.1286
Citations 
PageRank 
References 
20
0.73
34
Authors
4
Name
Order
Citations
PageRank
Shalini Kaleeswaran1351.68
Varun Tulsian2261.12
Aditya Kanade326819.37
Alessandro Orso43550172.85