TailorFix: An Automated Repair Framework for Assignment Statements - Ma, Chunyan; Zhao, Tong; Li, Shangru; Zhang, Tao (Proceedings (IEEE International Conference on Software Engineering and Service Sciences. Print), 2018)
The repair of software faults is an important task of software engineering. In this paper, an automated repair framework, called TailorFix is designed and implemented based on abstract syntax tree and repair operators, which is easily expandable by adding different types of repair operators. The TailorFix can be combined with a variety of fault localization technologies. In this paper, we integrate the Delta Debugging technique, as an example, into TailorFix, to achieve a fully automated fault localization and repair for assignment statements of C programs. By classifying faults of assignment statements and designing nine kinds of repair operators, a repair method that applies mutation technology to abstract syntax tree is proposed based on the location information of the Delta Debugging. Finally, experimental subjects of SIR (Software-artifact Infrastructure Repository) are used to verify the effectiveness of the TailorFix. With TailorFix, the average rate is high (on average 85.67%for various types of faults) for assignment statements. The proposed TailorFix framework can achieves more accurate repairs using the corresponding repair operators with respect to abstract syntax tree of different grammar structures, and does not require manual repair patterns, specifications, constraint solving, or search space.