Leveraging Fault Localisation to Enhance Defect Prediction

Jeongju Sohn, Yasutaka Kamei, Shane McIntosh, Shin Yoo

Research output: Chapter in Book/Report/Conference proceedingConference contribution

Abstract

Software Quality Assurance (SQA) is a resource constrained activity. Research has explored various means of sup-porting that activity. For example, to aid in resource investment decisions, defect prediction identifies modules or changes that are likely to be defective in the future. To support repair activities, fault localisation identifies areas of code that are likely to require change to address known defects. Although the identification and localisation of defects are interdependent tasks, the synergy between defect prediction and fault localisation remains largely underexplored.We hypothesise that modifying code that was suspicious in the past is riskier than modifying code that was not. To validate our hypothesis, in this paper, we employ fault localisation, which localises the root cause of a program failure. We compute the past suspiciousness score of code changes to each fault, and use those scores to (1) define new features for training defect prediction models; and (2) guide the next actions of developers for a commit labelled as fix-inducing. An empirical study of three open-source projects confirms our hypothesis. The new suspiciousness features improve F1 score and balanced accuracy of Just-In-Time (JIT) defect prediction models by 4.2% to 92.2% and by 1.2% to 3.7%, respectively. When guiding developer actions, past code suspiciousness successfully guides developers to a defective file, inspecting two to nine fewer files on average, compared to the baselines based on previous findings on past faults. These results demonstrate the potential of synergies of fault localisation and defect prediction, and lay the groundwork for explorations of that combined space.

Original languageEnglish
Title of host publicationProceedings - 2021 IEEE International Conference on Software Analysis, Evolution and Reengineering, SANER 2021
PublisherInstitute of Electrical and Electronics Engineers Inc.
Pages284-294
Number of pages11
ISBN (Electronic)9781728196305
DOIs
Publication statusPublished - Mar 2021
Event28th IEEE International Conference on Software Analysis, Evolution and Reengineering, SANER 2021 - Virtual, Honolulu, United States
Duration: Mar 9 2021Mar 12 2021

Publication series

NameProceedings - 2021 IEEE International Conference on Software Analysis, Evolution and Reengineering, SANER 2021

Conference

Conference28th IEEE International Conference on Software Analysis, Evolution and Reengineering, SANER 2021
Country/TerritoryUnited States
CityVirtual, Honolulu
Period3/9/213/12/21

All Science Journal Classification (ASJC) codes

  • Artificial Intelligence
  • Software
  • Safety, Risk, Reliability and Quality

Fingerprint

Dive into the research topics of 'Leveraging Fault Localisation to Enhance Defect Prediction'. Together they form a unique fingerprint.

Cite this