🤖 AI Summary
To address the manual, subjective, and inefficient nature of bug priority prediction in open-source projects—where priorities dynamically evolve over time—this paper proposes the first two-stage predictive framework that separately models priority evolution during the bug reporting and bug fixing phases. Methodologically, it extracts repair-evolution features from historical defect data, integrates oversampling with cost-sensitive learning to mitigate class imbalance, and supports cross-project and multi-priority generalization. Empirical evaluation on Apache projects achieves an F1-score of 0.798 in the reporting phase and weighted/macro-average F1-scores of 0.712/0.613 in the fixing phase; robust performance is maintained under cross-project and multi-priority settings. This work constitutes the first systematic modeling of dynamic priority evolution, significantly enhancing the accuracy and practicality of automated priority scheduling in software maintenance.
📝 Abstract
Bug fixing is a critical activity in the software development process. In issue tracking systems such as JIRA, each bug report is assigned a priority level to indicate the urgency and importance level of the bug. The priority may change during the bug fixing process, indicating that the urgency and importance level of the bug will change with the bug fixing. However, manually evaluating priority changes for bugs is a tedious process that heavily relies on the subjective judgment of developers and project managers, leading to incorrect priority changes and thus hindering timely bug fixes. Given the lack of research on bug priority change prediction, we propose a novel two-phase bug report priority change prediction method based on bug fixing evolution features and class imbalance handling strategy. Specifically, we divided the bug lifecycle into two phases: bug reporting and bug fixing, and constructed bug priority change prediction models for each phase. To evaluate the performance of our method, we conducted experiments on a bug dataset constructed from 32 non-trivial Apache projects. The experimental results show that our proposed bug fixing evolution features and the adopted class imbalance handling strategy can effectively improve the performance of prediction models. The F1-score of the prediction model constructed for the bug reporting phase reached 0.798, while the F1-weighted and F1-macro of the prediction model constructed for the bug fixing phase were 0.712 and 0.613, respectively. Furthermore, we explored the cross-project applicability of our prediction models and their performance at different priority levels. The findings indicate large variations in model performance across different projects, although the overall scores remain decent. Meanwhile, the predictive performance across various priority levels remained relatively consistently high.