Litcius/Paper detail

Neural Program Repair : Systems, Challenges and Solutions

Wenkang Zhong, Chuanyi Li, Jidong Ge, Bin Luo

202224 citationsDOI

Abstract

Automated Program Repair (APR) aims to automatically fix bugs in the source code. Recently, with advances in Deep Learning (DL) field, there has been an increase of Neural Program Repair (NPR) studies that use neural networks to model the patch-generation process. NPR approaches have a significant benefit in applicability over prior APR techniques because they do not require any specifications (e.g., a test suite) when generating patches. For this reason, NPR has recently become a popular research topic. In this paper, We undertake a literature review of latest NPR systems to help interested readers understand advancements in this emerging field. We begin by introducing background information of NPR. Next, to make the various NPR systems more understandable, we split them into a four-phase pipeline and discuss various design choices for each phase. To investigate the motivations of different design choices, We further highlight a number of challenges and summarize corresponding solutions adopted by existing NPR systems. Finally, we suggest some intriguing directions for the future research.

Topics & Concepts

Computer scienceSuiteField (mathematics)Code (set theory)Software engineeringArtificial neural networkArtificial intelligenceDeep learningSource codeMachine translationTask (project management)Test suiteMachine learningEncoderProgramming languageSystems engineeringTest caseEngineeringOperating systemArchaeologyRegression analysisPure mathematicsMathematicsSet (abstract data type)HistorySoftware Testing and Debugging TechniquesSoftware Reliability and Analysis ResearchSoftware Engineering Research