Learning to rank software modules for effort-aware defect prediction

Published: 01 Jan 2021, Last Modified: 13 Nov 2024QRS Companion 2021EveryoneRevisionsBibTeXCC BY-SA 4.0
Abstract: Effort-Aware Software Defect Prediction (EADP) ranks software modules according to the defect density of software modules, which allows testers to find more defects while reviewing a certain amount of code, and allocates testing resources more effectively. However, the recently proposed CBS+ and EASC methods tend to rank the software modules with more LOC (Lines of Code) first. Therefore, there are less inspected modules when inspecting the top 20% LOC via CBS+ and EASC. Although the two methods achieve the high Precision@20% value, the Recall@20% and PofB@20% (Proportion of the found Bugs when inspecting the top 20% LOC) values of the two methods are low. Therefore, we propose a method called EALTR to construct the EADP model by directly maximizing the found bugs when inspecting the top 20% LOC. EALTR uses the linear model to build the EADP model, and then employs the composite differential evolution algorithm to generate a set of coefficient vectors for the linear model. Finally, EALTR selects the coefficient vector that achieves the highest PofB@20% value on the training dataset to construct the EADP model. Our experimental results on eleven project datasets with 41 releases show that the EALTR method performs better than CBS+ and EASC in terms of Recall@20% and PofB@20%.
Loading

OpenReview is a long-term project to advance science through improved peer review with legal nonprofit status. We gratefully acknowledge the support of the OpenReview Sponsors. © 2025 OpenReview