TailorFix: An Automated Repair Framework for Assignment Statements

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 Tai...

Ausführliche Beschreibung

Gespeichert in:
Bibliographische Detailangaben
Veröffentlicht in:Proceedings (IEEE International Conference on Software Engineering and Service Sciences. Print) S. 978 - 982
Hauptverfasser: Ma, Chunyan, Zhao, Tong, Li, Shangru, Zhang, Tao
Format: Tagungsbericht
Sprache:Englisch
Veröffentlicht: IEEE 01.11.2018
Schlagworte:
ISSN:2327-0594
Online-Zugang:Volltext
Tags: Tag hinzufügen
Keine Tags, Fügen Sie den ersten Tag hinzu!
Beschreibung
Zusammenfassung: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.
ISSN:2327-0594
DOI:10.1109/ICSESS.2018.8663714