Skip to main navigation Skip to search Skip to main content

Feature assortment for deep learning-based bug localization with a program graph

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

Abstract

Bug localization can effectively reduce software maintenance costs. Recently, deep learning-based bug localization (DLBL) has demonstrated its effectiveness in bridging the lexical gaps between bug reports (BRs) and source code files (SFs). Deliberate feature selection that considers the unique characteristics of SFs can boost DLBL. Using the various features of SFs, we propose the following three methods to identify the features that can improve DLBL 1) text token restriction, 2) program graph construction, and 3) projection. First, the text token information of SFs is used to avoid selecting a text token that can become a noise feature. Second, we propose a five rules to construct a program graph that can supplement the textual features. Our program graph can highlight the difference between buggy and non-buggy SFs while preserving the individual characteristics of each SF and interleaved relationships of SFs. We treat the entire program of the project as a knowledge graph, whose subgraphs are SFs. Even if the features of the SFs are presented well by existing approaches, these approaches have a limitation in that they choose parts irrelevant to the bug as a feature, because the same features represent the SF for all of the different input BRs. Therefore, we propose projecting the SF feature vectors onto the BR feature vectors to highlight the BR-relative features of the SF for different BRs. We evaluated our proposed method on widely used open-source Java projects. The experimental results on 1,928 BRs from 10 Java projects showed the effectiveness of the proposed method. The proposed method can improve bug localization accuracy by an average of 34%.

Original languageEnglish
Title of host publicationProceedings of the 37th ACM/SIGAPP Symposium on Applied Computing, SAC 2022
PublisherAssociation for Computing Machinery
Pages1536-1544
Number of pages9
ISBN (Electronic)9781450387132
DOIs
StatePublished - 25 Apr 2022
Event37th ACM/SIGAPP Symposium on Applied Computing, SAC 2022 - Virtual, Online
Duration: 25 Apr 202229 Apr 2022

Publication series

NameProceedings of the ACM Symposium on Applied Computing

Conference

Conference37th ACM/SIGAPP Symposium on Applied Computing, SAC 2022
CityVirtual, Online
Period25/04/2229/04/22

Keywords

  • abstract syntax tree
  • bug localization
  • deep learning-based bug localization
  • feature selection
  • knowledge graph

Fingerprint

Dive into the research topics of 'Feature assortment for deep learning-based bug localization with a program graph'. Together they form a unique fingerprint.

Cite this