DevRanker: An Effective Approach to Rank Developers for Bug Report Assignment
Mohammad Reza Kardoost, Mohammad Reza Moosavi, Reza Akbari · 2022
Bug assignment, which routes software projects’ bug reports to the appropriate fixers, is an important part of the development of software and its maintenance. Manual bug assignment is a time-consuming process that delays debugging. So various machine learning and information retrieval approaches have been used in order to automate the process of bug assigning. However, Most previous deep learning-based studies have focused on developers assigned to bug reports and have not specifically considered developers’ collaboration and interaction to resolve bug reports. Here, we propose a novel approach for automatic bug assignment based on Bidirectional Encoder Representations from Transformers (BERT) and Preference Neural Network (PNN). First, we preprocess the textual data in the bug reports. Second, we use BERT as a word embedding technique to get vector representation of bug reports. Third, we calculate the developers’ suitability score based on different developers’ activity features for each bug report. Finally, PNN is used to rank developers for each bug report. Experiments are performed on open-source projects, namely Eclipse UI, Birt, JDT and SWT, and top-k accuracy is measured as an evaluation metric. The results obtained from our experiments can prove that our approach could markedly improve the performance of automatic bug assignment.