A component recommendation model for issues in software projects - Kangwanwisit P. (2023)
In modern software development projects, developer teams usually adopt an issue-driven approach to increase their productivity. The component of an issue report implicitly or-ganize issues in a software project (e.g, defects, new feature requests, and tasks) into a group of issues that have similar characteristics. A component of an issue report is an important attribute needed to be identified in an issue triaging process. Thus, assigning the correct component(s) to an issue is crucial in issue resolution. However, it is a challenging task since large-scale projects contain a considerable amount of components (e.g. almost one-hundred components in the Bamboo project) and it can increase significantly as the project evolves over time. In this paper, we propose an approach that uses textual feature extraction and machine learning techniques with Binary Relevance (BR) to develop a component recommendation model to support the task of assigning component(s) to an issue. The empirical evaluation over 60,000 issue reports shows that our proposed models outperform the baseline benchmarks and other techniques by achieving on average 0.480 Precision@1, 0.616 Recall@3, 0.432 MAP, and 0.596 MRR.