Reducing Bug Triaging Confusion by Learning from Mistakes with a Bug Tossing Knowledge Graph

被引:14
作者
Su, Yanqi [1 ]
Xing, Zhenchang [1 ]
Peng, Xin [2 ]
Xia, Xin [3 ]
Wang, Chong [2 ]
Xu, Xiwei [4 ]
Zhu, Liming [4 ,5 ]
机构
[1] Australian Natl Univ, Canberra, ACT, Australia
[2] Fudan Univ, Shanghai, Peoples R China
[3] Monash Univ, Clayton, Vic, Australia
[4] CSIRO, Data61, Canberra, ACT, Australia
[5] Univ New South Wales, Sydney, NSW, Australia
来源
2021 36TH IEEE/ACM INTERNATIONAL CONFERENCE ON AUTOMATED SOFTWARE ENGINEERING ASE 2021 | 2021年
关键词
Bug Triaging; Learning to Rank; Knowledge Graph; ACCURATE;
D O I
10.1109/ASE51524.2021.9678574
中图分类号
TP31 [计算机软件];
学科分类号
081202 ; 0835 ;
摘要
Assigning bugs to the right components is the prerequisite to get the bugs analyzed and fixed. Classification-based techniques have been used in practice for assisting bug component assignments, for example, the BugBug tool developed by Mozilla. However, our study on 124,477 bugs in Mozilla products reveals that erroneous bug component assignments occur frequently and widely. Most errors are repeated errors and some errors are even misled by the BugBug tool. Our study reveals that complex component designs and misleading component names and bug report keywords confuse bug component assignment not only for bug reporters but also developers and even bug triaging tools. In this work, we propose a learning to rank framework that learns to assign components to bugs from correct, erroneous and irrelevant bug-component assignments in the history. To inform the learning, we construct a bug tossing knowledge graph which incorporates not only goal-oriented component tossing relationships but also rich information about component tossing community, component descriptions, and historical closed and tossed bugs, from which three categories and seven types of features for bug, component and bug-component relation can be derived. We evaluate our approach on a dataset of 98,587 closed bugs (including 29,100 tossed bugs) of 186 components in six Mozilla products. Our results show that our approach significantly improves bug component assignments for both tossed and non-tossed bugs over the BugBug tool and the BugBug tool enhanced with component tossing relationships, with >20% Top-k accuracies and >30% NDCG@k (k=1,3,5,10).
引用
收藏
页码:191 / 202
页数:12
相关论文
共 25 条
[1]  
Anvik J., 2006, Proceedings of the 28th International Conference on Software Engineering, P361, DOI DOI 10.1145/1134285.1134336
[2]  
Bhattacharya P., 2010, 2010 IEEE INT C SOFT, P1, DOI DOI 10.1109/ICSM.2010.5609736
[3]   Automated, highly-accurate, bug assignment using machine learning and tossing graphs [J].
Bhattacharya, Pamela ;
Neamtiu, Lulian ;
Shelton, Christian R. .
JOURNAL OF SYSTEMS AND SOFTWARE, 2012, 85 (10) :2275-2292
[4]   Fast unfolding of communities in large networks [J].
Blondel, Vincent D. ;
Guillaume, Jean-Loup ;
Lambiotte, Renaud ;
Lefebvre, Etienne .
JOURNAL OF STATISTICAL MECHANICS-THEORY AND EXPERIMENT, 2008,
[5]   Continuous Incident Triage for Large-Scale Online Service Systems [J].
Chen, Junjie ;
He, Xiaoting ;
Lin, Qingwei ;
Zhang, Hongyu ;
Hao, Dan ;
Gao, Feng ;
Xu, Zhangwei ;
Dang, Yingnong ;
Zhang, Dongmei .
34TH IEEE/ACM INTERNATIONAL CONFERENCE ON AUTOMATED SOFTWARE ENGINEERING (ASE 2019), 2019, :364-375
[6]  
Christopher JC, 2010, Learning, V11, P81
[7]  
Han J., 2020, ABS200300703 CORR
[8]   Effective Bug Triage based on Historical Bug-Fix Information [J].
Hu, Hao ;
Zhang, Hongyu ;
Xuan, Jifeng ;
Sun, Weigang .
2014 IEEE 25TH INTERNATIONAL SYMPOSIUM ON SOFTWARE RELIABILITY ENGINEERING (ISSRE), 2014, :122-132
[9]   Improving Bug Triage with Bug Tossing Graphs [J].
Jeong, Gaeul ;
Kim, Sunghun ;
Zimmerman, Thomas .
7TH JOINT MEETING OF THE EUROPEAN SOFTWARE ENGINEERING CONFERENCE AND THE ACM SIGSOFT SYMPOSIUM ON THE FOUNDATIONS OF SOFTWARE ENGINEERING, 2009, :111-120
[10]  
Khomh F., 2011, 2011 18th Working Conference on Reverse Engineering, P261, DOI 10.1109/WCRE.2011.39