1.扬州大学信息工程学院,江苏扬州 225127
2.高安全系统的软件开发与验证技术工业和信息化部重点实验室,江苏南京 211106
[ "薄莉莉 女, 1989年10月出生于山东省泰安市. 现为扬州大学信息工程学院讲师, 从事软件测试方面的研究工作.E-mail: lilibo@yzu.edu.cn" ]
[ "朱 程 男, 1997年11月出生于江苏省扬州市, 现为扬州大学信息工程学院硕士研究生, 主要研究方向为软件缺陷定位. E-mail: zhucheng0a@gmail.com" ]
[ "李 斌(通讯作者) 男, 1965年12月出生于江苏省扬州市. 现为扬州大学信息工程学院教授、博士生导师. 主要研究方向为软件工程. 在国内外发表学术论文150余篇." ]
[ "孙小兵 男, 1985年9月出生于江苏省泰州市. 现为扬州大学信息工程学院教授. 主要研究方向为智能化软件工程. 在国内外发表学术论文80余篇. E-mail: xbsun@yzu.edu.cn" ]
收稿:2021-07-09,
修回:2021-12-20,
纸质出版:2023-03-25
移动端阅览
薄莉莉,朱程,李斌等.文件信息增强的方法级软件缺陷定位[J].电子学报,2023,51(03):613-621.
BO Li-li,ZHU Cheng,LI Bin,et al.Method-Level Software Bug Localization Enhanced with File Information[J].ACTA ELECTRONICA SINICA,2023,51(03):613-621.
薄莉莉,朱程,李斌等.文件信息增强的方法级软件缺陷定位[J].电子学报,2023,51(03):613-621. DOI: 10.12263/DZXB.20210878.
BO Li-li,ZHU Cheng,LI Bin,et al.Method-Level Software Bug Localization Enhanced with File Information[J].ACTA ELECTRONICA SINICA,2023,51(03):613-621. DOI: 10.12263/DZXB.20210878.
软件开发与维护中会产生大量缺陷报告, 根据缺陷报告准确定位到缺陷代码的位置是极具挑战性的.目前大多数工作在文件粒度定位缺陷, 虽然少量工作定位在方法粒度, 但定位准确度较低. 本文提出一个文件信息增强的方法级软件缺陷定位技术FMBL(a File information enhanced Method-level Bug Localization technology), 考虑方法与文件之间的从属关系以增强缺陷定位准确性. 通过综合考虑代码与缺陷报告的词汇相似度、语义相似度和代码长度度量它们之间的相关性. 在六个开源软件项目上开展实验以评估FMBL的有效性. 结果表明, 本文方法在六个项目上的平均Accuracy@10、MAP(Mean Average Precision)和MRR(Mean Reciprocal Rank)值分别达到0.436、0.223、0.296.与现有方法BugLocator、BLIA(Bug Localization using Integrated Analysis)、BugPecker相比, 本文方法在MAP指标上分别提升153.1%、209.1%、22.8%.
A large number of bug reports are generated during software development and maintenance. Finding the location of the bug code based on the bug report is a challenging task. Most of the bug localization works focus on file granularity. Even though few works locate bugs in method granularity
the accuracy is relatively low. In this paper
we proposed FMBL (a File information enhanced Method-level Bug Localization technology)
a method-level software bug localization approach enhanced with file information. It considers the affiliation between methods and files to enhance the accuracy of bug localization. Lexical and semantic similarity between code and bug reports
together with code size are used to measure the correlation of methods and files. We conduct experiments on six open source software projects to evaluate the effectiveness of FMBL. The results show that
with FMBL
the average Accuracy@10
MAP (Mean Average Precision)
and MRR(Mean Reciprocal Rank) on the six projects can reach 0.436
0.223 and 0.296
respectively. Compared with BugLocator
BLIA (Bug Localization using Integrated Analysis) and BugPecker
our approach improves by 153.1%
209.1% and 22.8% in MAP
respectively.
郭肇强 , 周慧聪 , 刘释然 , 等 . 基于信息检索的缺陷定位: 问题、进展与挑战 [J]. 软件学报 , 2020 , 31 ( 9 ): 2826 - 2854 .
GUO Z Q , ZHOU H C , LIU S R , et al . Information retrieval based bug localization: Research problem, progress, and challenges [J]. Journal of Software , 2020 , 31 ( 9 ): 2826 - 2854 . (in Chinese)
ZHU Z Y , LI Y , WANG Y , et al . A deep multimodal model for bug localization [J]. Data Mining and Knowledge Discovery , 2021 , 35 ( 4 ): 1369 - 1392 .
ZHOU J , ZHANG H Y , LO D . Where should the bugs be fixed? More accurate information retrieval-based bug localization based on bug reports [C]// 2012 34th International Conference on Software Engineering (ICSE) . Zurich : IEEE , 2012 : 14 - 24 .
YOUM K C . Improved bug localization based on code change histories and bug reports [J]. Information and Software Technology , 2017 , 82 : 177 - 192 .
CAO J M , YANG S L , JIANG W H , et al . BugPecker: locating faulty methods with deep learning on revision graphs [C]// Proceedings of the 35th IEEE/ACM International Conference on Automated Software Engineering . Melbourne : IEEE/ACM , 2020 : 1214 - 1218 .
李斌 , 陈定山 , 孙小兵 , 等 . 面向缺陷知识的多特征匹配搜索算法 [J]. 电子学报 , 2021 , 49 ( 4 ): 661 - 664 .
LI B , CHEN D S , SUN X B , et al . Multi-feature matching search algorithm for bug knowledge [J]. Acta Electronica Sinica , 2021 , 49 ( 4 ): 661 - 664 . (in Chinese)
SISMAN B , KAK A C . Incorporating version histories in information retrieval based bug localization [C]// Proceedings of the 9th IEEE Working Conference on Mining Software Repositories . Zurich : IEEE , 2012 : 50 - 59 .
WANG S W , LO D . Version history, similar report, and structure: Putting them together for improved bug localization [C]// Proceedings of the 22nd International Conference on Program Comprehension . Hyderabad : ACM , 2014 : 53 - 63 .
SAHA R K , LEASE M , KHURSHID S , et al . Improving bug localization using structured information retrieval [C]// 2013 28th IEEE/ACM International Conference on Automated Software Engineering (ASE) . Piscataway : IEEE , 2013 : 345 - 355 .
HUO X , LI M , ZHOU Z H . Learning unified features from natural and programming languages for locating buggy source code [C]// Proceedings of the Twenty-Fifth International Joint Conference on Artificial Intelligence . New York : AAAI Press , 2016 : 1606 - 1612 .
WANG B , XU L , YAN M , et al . Multi-dimension convolutional neural network for bug localization [J]. IEEE Transactions on Services Computing , 2022 , 15 ( 3 ): 1649 - 1663 .
SOHN J , YOO S . Empirical evaluation of fault localisation using code and change metrics [J]. IEEE Transactions on Software Engineering , 2021 , 47 ( 8 ): 1605 - 1625 .
KIM Y , MUN S , YOO S , et al . Precise learn-to-rank fault localization using dynamic and static features of target programs [J]. ACM Transactions on Software Engineering and Methodology , 2019 , 28 ( 4 ): 1 - 34 .
LI X , LI W , ZHANG Y Q , et al . DeepFL: Integrating multiple fault diagnosis dimensions for deep fault localization [C]// ISSTA 2019: Proceedings of the 28th ACM SIGSOFT International Symposium on Software Testing and Analysis . Beijing : ACM Press , 2019 : 169 - 180 .
ZHANG W , LI Z Q , WANG Q , et al . FineLocator: A novel approach to method-level fine-grained bug localization by query expansion [J]. Information and Software Technology , 2019 , 110 : 121 - 135 .
YE X , BUNESCU R , LIU C . Learning to rank relevant files for bug reports using domain knowledge [C]// FSE 2014: Proceedings of the 22nd ACM SIGSOFT International Symposium on Foundations of Software Engineering . Hong Kong : Association for Computing Machinery 2014 : 689 - 699 .
BO L L , ZHU X R , SUN X B , et al . Are similar bugs fixed with similar change operations? An empirical study [J]. Chinese Journal of Electronics , 2021 , 30 ( 1 ): 55 - 63 .
WORTH D . Introduction to Modern Information Retrieval [M]. 3rd ed . Kingston, Australian : Australian Academic and Research Libraries , 2010 .
PENNINGTON J , SOCHER R , MANNING C D . GloVe: Global vectors for word representation [J]. British Journal of Neurosurgery , 2017 , 31 ( 6 ): 682 - 687 .
孙小兵 , 王璐 , 王经纬 , 等 . 基于知识图谱的bug问题探索性搜索方法 [J]. 电子学报 , 2018 , 46 ( 7 ): 1578 - 1583 .
SUN X B , WANG L , WANG J W , et al . Construct knowledge graph for exploratory bug issue searching [J]. Acta Electronica Sinica , 2018 , 46 ( 7 ): 1578 - 1583 . (in Chinese)
0
浏览量
11
下载量
0
CSCD
关联资源
相关文章
相关作者
相关机构
京公网安备11010802024621