Concepedia

TLDR

Open‑source projects maintain bug repositories that must be triaged, but the high volume of new reports burdens large developments. This paper proposes a semi‑automated method to streamline assigning bug reports to developers. A machine‑learning classifier learns each developer’s resolved report types and, upon a new report, recommends a small set of suitable developers, with applicability conditions and lessons learned noted. The approach achieves 57 % and 64 % precision on Eclipse and Firefox, performs less well on gcc, and reveals insights into applying ML to open‑source repositories.

Abstract

Open source development projects typically support an open bug repository to which both developers and users can report bugs. The reports that appear in this repository must be triaged to determine if the report is one which requires attention and if it is, which developer will be assigned the responsibility of resolving the report. Large open source developments are burdened by the rate at which new bug reports appear in the bug repository. In this paper, we present a semi-automated approach intended to ease one part of this process, the assignment of reports to a developer. Our approach applies a machine learning algorithm to the open bug repository to learn the kinds of reports each developer resolves. When a new report arrives, the classifier produced by the machine learning technique suggests a small number of developers suitable to resolve the report. With this approach, we have reached precision levels of 57% and 64% on the Eclipse and Firefox development projects respectively. We have also applied our approach to the gcc open source development with less positive results. We describe the conditions under which the approach is applicable and also report on the lessons we learned about applying machine learning to repositories used in open source development.

References

YearCitations

Page 1