J Shanghai Jiaotong Univ Sci ›› 2024, Vol. 29 ›› Issue (3): 566-578.doi: 10.1007/s12204-022-2448-z

• • 上一篇    下一篇

基于时间的自动化多标准缺陷分类方法:开发人员工作效率和基于社交网络的开发人员推荐

YADAV Asmita1, SINGH Kumar Sandeep1,2   

  1. (1. Krishna Engineering College, Ghaziabad 201007, India; 2. JIIT, Noida 201309, India)
  • 收稿日期:2020-08-24 接受日期:2021-06-08 出版日期:2024-05-28 发布日期:2024-05-28

Automated Time Based Multi-Criteria Bug Triage Approach: Developer Working Efficiency and Social Network Based Developer Recommendation

YADAV Asmita1*, SINGH Kumar Sandeep1,2   

  1. (1. Krishna Engineering College, Ghaziabad 201007, India; 2. JIIT, Noida 201309, India)
  • Received:2020-08-24 Accepted:2021-06-08 Online:2024-05-28 Published:2024-05-28

摘要: 在软件开发项目中,漏洞(Bug)是常见的现象。开发者在开源存储库中报告这些漏洞。这需要开发一个高质量的开发者预测模型,该模型应考虑开发者的工作满意度、控制开发成本以及提高漏洞修复时间。当告知新的漏洞时,尽快解决和修复漏洞报告是问题追踪者(Triager)的主要关注点。因此,开发者的工作效率是漏洞修复中的一个重要因素。为了解决这些问题,提出了一种方法,推荐一组可能互相分享知识来修复新漏洞报告的开发者。该方法被称为基于开发者工作效率和社交网络的开发者推荐(DweSn)。它是一个复合模型,通过利用开发者的平均漏洞修复时间、修复各种漏洞的工作效率以及与其他开发者的社交互动来构建开发者的个人档案。在语料库中的新漏洞和已有漏洞之间应用相似度度量,从语料库中提取出有能力解决漏洞的开发者列表。该方法只选择那些活跃且工作负荷较轻的开发者。将具有最高个人档案得分的开发者分配去修复漏洞。在五个大型开源项目(包括Mozilla、Netbeans、Eclipse、Firefox和OpenOffice)的子集上评估了我们的方法,并将其与最新技术进行了比较。结果表明,将开发者的效率、平均漏洞修复时间和他们在社交网络中的互动结合起来,可以提高准确性并有效减少漏洞抛延时间。这种方法在预测准确性、精确度、召回率、F-score和减少漏洞传递长度方面分别提高了93.89%、93.12%、93.46%、93.27%和93.25%。提出的方法达到了93%的命中率和93.34%的平均倒排序值,这表明提出的Triager能够高效地将漏洞分配给正确的开发者。

关键词: 开放源代码仓库,漏洞报告,漏洞分配,传递时间,漏洞追踪者,开发者社交网络,开发者推荐

Abstract: In software development projects, bugs are common phenomena. Developers report bugs in open source repositories. There is a need to develop high quality developer prediction model that considers developer work satisfaction, keep within limited development cost, and improve bug resolution time. To address and resolve bug report as soon as possible is the main focus of triager when a new bug is reported. Thus, developer work efficiency is an important factor in bug-fixing. To address these issues, a proposed approach recommends a set of developers that could potentially share their knowledge with each other to fix new bug reports. The proposed approach is called developer working efficiency and social network based developer recommendation (DweSn). It is a composite model that builds developers’ profile by using developer average bug fixing time, work efficiency to fix variety of bugs, as well as the developer’s social interactions with other developers. A similarity measure is applied between new bug and bugs in corpus to extract the list of capable developers from the corpus. The proposed approach only selects those developers who are active and less loaded with work. The developer with the highest profile score is assigned the bugs. We evaluated our approach on the subset of five large open-source projects including Mozilla, Netbeans, Eclipse, Firefox and OpenOffice, and compared it with the state-of-the-art. The results demonstrate that combination of developers’ efficiency with their average bug fixing time and interactions in their social network gives good accuracy and efficiently reduces bug tossing length. This approach shows an improvement in prediction accuracy, precision, recall, F-score and reduced bug tossing length up to 93.89%, 93.12%, 93.46%, 93.27% and 93.25%, respectively. The proposed approach achieved a 93% hit ratio and 93.34% mean reciprocal rank, indicating that our proposed triager is able to efficiently assign bugs to correct developers.

Key words: open-source repository, bug report, bug assignment, tossing length, bug triager, developer social network, developer recommendation CLC number: TP31 Document

中图分类号: