Skip to main navigation Skip to search Skip to main content

Improving Fault Localization and Program Repair with Deep Semantic Features and Transferred Knowledge

  • Beihang University
  • University of Newcastle

Research output: Chapter in Book/Report/Conference proceedingConference contributionpeer-review

Abstract

Automatic software debugging mainly includes two tasks of fault lo-calization and automated program repair. Compared with the traditional spectrum-based and mutation-based methods, deep learning-based methods are proposed to achieve better performance for fault localization. However, the existing methods ignore the deep seman-tic features or only consider simple code representations. They do not leverage the existing bug-related knowledge from large-scale open-source projects either. In addition, existing template-based program repair techniques can incorporate project specific information better than deep-learning approaches. However, they are weak in selecting the fix templates for efficient program repair. In this work, we propose a novel approach called TRANSFER, which lever-ages the deep semantic features and transferred knowledge from open-source data to improve fault localization and program repair. First, we build two large-scale open-source bug datasets and design 11 BiLSTM-based binary classifiers and a BiLSTM-based multi-classifier to learn deep semantic features of statements for fault localization and program repair, respectively. Second, we combine semantic-based, spectrum-based and mutation-based features and use an MLP-based model for fault localization. Third, the semantic-based features are leveraged to rank the fix templates for program repair. Our extensive experiments on widely-used benchmark De-fects4J show that TRANSFER outperforms all baselines in fault localization, and is better than existing deep-learning methods in automated program repair. Compared with the typical template-based work TBar, TRANSFER can correctly repair 6 more bugs (47 in total) on Defects4J.

Original languageEnglish
Title of host publicationProceedings - 2022 ACM/IEEE 44th International Conference on Software Engineering, ICSE 2022
PublisherIEEE Computer Society
Pages1169-1180
Number of pages12
ISBN (Electronic)9781450392211
DOIs
StatePublished - 5 Jul 2022
Event44th ACM/IEEE International Conference on Software Engineering, ICSE 2022 - Hybrid, Pittsburgh, United States
Duration: 22 May 202227 May 2022

Publication series

NameProceedings - International Conference on Software Engineering
Volume2022-May
ISSN (Print)0270-5257

Conference

Conference44th ACM/IEEE International Conference on Software Engineering, ICSE 2022
Country/TerritoryUnited States
CityHybrid, Pittsburgh
Period22/05/2227/05/22

Keywords

  • Fault localization
  • neural networks
  • program repair
  • software debugging
  • transfer learning

Fingerprint

Dive into the research topics of 'Improving Fault Localization and Program Repair with Deep Semantic Features and Transferred Knowledge'. Together they form a unique fingerprint.

Cite this