Improved bug localization based on code change histories and bug reports

被引:82
作者
Youm, Klaus Changsun [1 ,2 ]
Ahn, June [1 ]
Lee, Eunseok [1 ]
机构
[1] Sungkyunkwan Univ, Dept Informat & Commun Engn, Suwon, South Korea
[2] Samsung Elect, Mobile Commun & Business, Suwon, South Korea
基金
新加坡国家研究基金会;
关键词
Bug localization; Information retrieval; Bug reports; Stack traces; Code change history; Method analysis; CHANGE IMPACT ANALYSIS;
D O I
10.1016/j.infsof.2016.11.002
中图分类号
TP [自动化技术、计算机技术];
学科分类号
0812 ;
摘要
Context: Several issues or defects in released software during the maintenance phase are reported to the development team. It is costly and time-consuming for developers to precisely localize bugs. Bug reports and the code change history are frequently used and provide information for identifying fault locations during the software maintenance phase. Objective: It is difficult to standardize the style of bug reports written in natural languages to improve the accuracy of bug localization. The objective of this paper is to propose an effective information retrieval based bug localization method to find suspicious files and methods for resolving bugs. Method: In this paper, we propose a novel information retrieval-based bug localization approach, termed Bug Localization using Integrated Analysis (BLIA). Our proposed BLIA integrates analyzed data by utilizing texts, stack traces and comments in bug reports, structured information of source files, and the source code change history. We improved the granularity of bug localization from the file level to the method level by extending previous bug repository data. Results: We evaluated the effectiveness of our approach based on experiments using three open-source projects, namely AspectJ, SWT, and ZXing. In terms of the mean average precision, on average our approach improves the metric of BugLocator, BLUiR, BRTracer, AmaLgam and the preliminary version of BLIA by 54%, 42%, 30%, 25% and 15%, respectively, at the file level of bug localization. Conclusion: Compared with prior tools, the results showed that BLIA outperforms these other methods. We analyzed the influence of each score of BLIA from various combinations based on the analyzed information. Our proposed enhancement significantly improved the accuracy. To improve the granularity level of bug localization, a new approach at the method level is proposed and its potential is evaluated. (C) 2016 Elsevier B.V. All rights reserved.
引用
收藏
页码:177 / 192
页数:16
相关论文
共 60 条
[1]  
Acharya M, 2011, 2011 33RD INTERNATIONAL CONFERENCE ON SOFTWARE ENGINEERING (ICSE), P746, DOI 10.1145/1985793.1985898
[2]   Combining Deep Learning with Information Retrieval to Localize Buggy Files for Bug Reports [J].
An Ngoc Lam ;
Anh Tuan Nguyen ;
Hoan Anh Nguyen ;
Nguyen, Tien N. .
2015 30TH IEEE/ACM INTERNATIONAL CONFERENCE ON AUTOMATED SOFTWARE ENGINEERING (ASE), 2015, :476-481
[3]  
Anh Tuan Nguyen, 2011, 2011 26th IEEE/ACM International Conference on Automated Software Engineering, P263, DOI 10.1109/ASE.2011.6100062
[4]  
[Anonymous], 2011, P ACM SIGSOFT S EURO
[5]  
[Anonymous], 1999, FDN STAT NATURAL LAN
[6]  
[Anonymous], 2008, INTRO INFORM RETRIEV, DOI DOI 10.1017/CBO9780511809071
[7]   Recovering traceability links between code and documentation [J].
Antoniol, G ;
Canfora, G ;
Casazza, G ;
De Lucia, A ;
Merlo, E .
IEEE TRANSACTIONS ON SOFTWARE ENGINEERING, 2002, 28 (10) :970-983
[8]  
Arong, 2014, PROCEEDINGS OF 2014 IEEE INTERNATIONAL CONFERENCE ON PROGRESS IN INFORMATICS AND COMPUTING (PIC), P51, DOI 10.1109/PIC.2014.6972294
[9]   SOFTWARE COMPLEXITY AND MAINTENANCE COSTS [J].
BANKER, RD ;
DATAR, SM ;
KEMERER, CF ;
ZWEIG, D .
COMMUNICATIONS OF THE ACM, 1993, 36 (11) :81-94
[10]  
Bettenburg N., 2007, P 2014 WORKSH ECL TE, P21, DOI [10.1145/1328279.1328284, 10]