论文标题
部分可观测时空混沌系统的无模型预测
Bug Fix Time Optimization Using Matrix Factorization and Iterative Gale-Shaply Algorithms
论文作者
论文摘要
Bug Triage是软件维护阶段的重要任务。它分配开发人员(修复程序)来错误报告修复它们。此过程是由Triager手动执行的,他分析了开发人员资料并提交错误报告以进行合适的作业。错误的三角轴过程很耗时,因此自动化此过程对于提高软件的质量至关重要。先前的工作将问题问题作为信息检索或分类问题解决。本文将此问题作为资源分配问题解决,该问题旨在旨在开发人员的最佳作业来解决错误报告,这减少了新提交的错误报告的总修复时间,除了对开发人员进行错误报告的均匀分发。在本文中,首先引入了由差分进化支持的矩阵分解和大风构造算法的组合,以优化总修复时间并归一化开发人员的工作负载。矩阵分解用于建立针对大风 - 夏普利做出分配决策的建议系统。差分演化提供了最佳的权重,以构建开发人员得分概况。在三个存储库中评估了所提出的方法,即Linux,Apache和Eclipse。实验结果表明,与手动分类相比,所提出的方法可减少错误固定时间,分别比Linux,Eclipse和Apache分别减少了80.67%,23.61%和60.22%。此外,开发人员的工作量是统一的。
Bug triage is an essential task in software maintenance phase. It assigns developers (fixers) to bug reports to fix them. This process is performed manually by a triager, who analyzes developers profiles and submitted bug reports to make suitable assignments. Bug triaging process is time consuming thus automating this process is essential to improve the quality of software. Previous work addressed triaging problem either as an information retrieval or classification problem. This paper tackles this problem as a resource allocation problem, that aims at the best assignments of developers to bug reports, that reduces the total fixing time of the newly submitted bug reports, in addition to the even distribution of bug reports over developers. In this paper, a combination of matrix factorization and Gale Shapely algorithm, supported by the differential evolution is firstly introduced to optimize the total fix time and normalize developers work load. Matrix factorization is used to establish a recommendation system for Gale-Shapley to make assignment decisions. Differential evolution provides the best set of weights to build developers score profiles. The proposed approach is assessed over three repositories, Linux, Apache and Eclipse. Experimental results show that the proposed approach reduces the bug fixing time, in comparison to the manual triage, by 80.67%, 23.61% and 60.22% over Linux, Eclipse and Apache respectively. Moreover, the workload for the developers is uniform.