论文标题

S-DABT:开源错误跟踪系统中的时间表和依赖性意识到的错误分流

S-DABT: Schedule and Dependency-Aware Bug Triage in Open-Source Bug Tracking Systems

论文作者

Jahanshahi, Hadi, Cevik, Mucahit

论文摘要

及时修复错误可以降低软件维护的各种潜在成本。但是,手动错误修复计划可能是耗时,繁琐且容易出错的。在本文中,我们提出了时间表和依赖感知的错误分类(S-DABT),这是一种使用整数编程和机器学习技术来为合适的开发人员分配错误的方法。与主要关注错误报告单个组成部分的先前工作不同,我们的方法考虑了文本数据,错误确定成本和错误依赖性。我们进一步将开发人员的时间表纳入我们的配方中,以为这个多方面的问题提供更全面的模型。结果,这种完整的配方考虑了开发人员的时间表和错误的阻塞效应,同时涵盖了先前提出的方法的最重要方面。我们对四个开源软件系统的数值研究,即Eclipsejdt,Libreoffice,GCC和Mozilla,这表明考虑到开发人员的时间表减少了平均错误固定时间。我们发现,S-DABT通过在开发人员中的任务进行公平分配以及在其计划中的自由位置的有效利用,从而导致了高水平的开发人员利用率。通过对问题跟踪系统的仿真,我们还展示了如何在模型公式中纳入时间表如何减少错误修复时间,提高了分配的准确性,并利用了每个开发人员的功能,而无需在模型运行时间中构成太多。我们发现,S-DABT通过优先确定阻塞错误并有效地降低由于错误依赖性而有效降低不可行的分配比率来降低错误依赖图的复杂性。因此,我们建议在自动化错误分类时考虑开发人员的时间表。

Fixing bugs in a timely manner lowers various potential costs in software maintenance. However, manual bug fixing scheduling can be time-consuming, cumbersome, and error-prone. In this paper, we propose the Schedule and Dependency-aware Bug Triage (S-DABT), a bug triaging method that utilizes integer programming and machine learning techniques to assign bugs to suitable developers. Unlike prior works that largely focus on a single component of the bug reports, our approach takes into account the textual data, bug fixing costs, and bug dependencies. We further incorporate the schedule of developers in our formulation to have a more comprehensive model for this multifaceted problem. As a result, this complete formulation considers developers' schedules and the blocking effects of the bugs while covering the most significant aspects of the previously proposed methods. Our numerical study on four open-source software systems, namely, EclipseJDT, LibreOffice, GCC, and Mozilla, shows that taking into account the schedules of the developers decreases the average bug fixing times. We find that S-DABT leads to a high level of developer utilization through a fair distribution of the tasks among the developers and efficient use of the free spots in their schedules. Via the simulation of the issue tracking system, we also show how incorporating the schedule in the model formulation reduces the bug fixing time, improves the assignment accuracy, and utilizes the capability of each developer without much comprising in the model run times. We find that S-DABT decreases the complexity of the bug dependency graph by prioritizing blocking bugs and effectively reduces the infeasible assignment ratio due to bug dependencies. Consequently, we recommend considering developers' schedules while automating bug triage.

扫码加入交流群

加入微信交流群

微信交流群二维码

扫码加入学术交流群,获取更多资源