2016 · 44 citations · 12 references
ComputingComputer ScienceOperating SystemsProgramming LanguagesSoftware EngineeringPatch AnalysisPatch ManagementSoftware MaintenanceSoftware RefactoringSoftware TestingAutomated Program RepairAutomatic Error RepairBug FixingBug LocalizationProgram Repair
Many implementations of research techniques that automatically repair software bugs target programs written in C. Work that targets Java often begins from or compares to direct translations of such techniques to a Java context. However, Java and C are very different languages, and Java should be studied to inform the construction of repair approaches to target it. We conduct a large-scale study of bug-fixing commits in Java projects, focusing on assumptions underlying common search-based repair approaches. We make observations that can be leveraged to guide high quality automatic software repair to target Java specifically, including common and uncommon statement modifications in human patches and the applicability of previously-proposed patch construction operators in the Java context.
12
Automatic patch generation by learning correct code
Fan Long, Martin Rinard · 2016 · 488 citations · Full text
Automatic patch generation learned from human-written patches
2013 · 457 citations