Publication Type

Conference Proceeding Article

Version

publishedVersion

Publication Date

11-2014

Abstract

Recently, many information retrieval (IR) based bug localization approaches have been proposed in the literature. These approaches use information retrieval techniques to process a textual bug report and a collection of source code files to find buggy files. They output a ranked list of files sorted by their likelihood to contain the bug. Recent approaches can achieve reasonable accuracy, however, even a state-of-the-art bug localization tool outputs many ranked lists where buggy files appear very low in the lists. This potentially causes developers to distrust bug localization tools. Parnin and Orso recently conduct a user study and highlight that developers do not find an automated debugging tool useful if they do not find the root cause of a bug early in a ranked list. To address this problem, we build an oracle that can automatically predict whether a ranked list produced by an IR-based bug localization tool is likely to be effective or not. We consider a ranked list to be effective if a buggy file appears in the top-N position of the list. If a ranked list is unlikely to be effective, developers do not need to waste time in checking the recommended files one by one. In such cases, it is better for developers to use traditional debugging methods or request for further information to localize bugs. To build this oracle, our approach extracts features that can be divided into four categories: score features, textual features, topic model features, and metadata features. We build a separate prediction model for each category, and combine them to create a composite prediction model which is used as the oracle. We name our proposed approach APRILE, which stands for Automated Prediction of IR-based Bug Localization's Effectiveness. We have evaluated APRILE to predict the effectiveness of three state-of-the-art IR based bug localization tools on more than three thousands bug reports from AspectJ, Eclipse, and SWT. APRILE can achieve an average precision, recall, and - -measure of at least 70.36%, 66.94%, and 68.03%, respectively. Furthermore, APRILE outperforms a baseline approach by 84.48%, 17.74%, and 31.56% for the AspectJ, Eclipse, and SWT bug reports, respectively.

Keywords

Bug Localization, Bug Reports, Effectiveness Prediction, Information Retrieval, Text Classification

Discipline

Software Engineering

Research Areas

Software and Cyber-Physical Systems

Publication

2014 IEEE 25th International Symposium on Software Reliability Engineering: ISSRE: Proceedings: 3-6 November, Naples, Italy

First Page

335

Last Page

345

ISBN

9781479960323

Identifier

10.1109/ISSRE.2014.39

Publisher

IEEE Computer Society

City or Country

Los Alamitos, CA

Copyright Owner and License

Publisher

Additional URL

https://doi.org/10.1109/ISSRE.2014.39

Share

COinS