Feature Construction for Effort-aware Just-In-Time Software Defect Prediction Based on Multi-objective Optimization
Just-in-time software defect prediction(JIT-SDP)is a software defect prediction technology for code changes,which has the advantages of fine granularity,instantaneity,and traceability.Effort-aware JIT-SDP further considers the cost of code in-spection and aims to detect more defective code changes with limited testing resources.Although many effort-aware JIT-SDPs have been proposed,most of them only optimize model algorithms.In order to improve the performance and generalizability of ef-fort-aware JIT-SDP,an effort-aware evolutionary feature construction method EEF is proposed for the first time from the aspect of feature engineering.Firstly,EEF represents features through genetic programming trees.From the two aspects of classification performance and effort-aware performance,a new feature transformation is obtained through an evolutionary feature construction method based on multi-objective optimization.After that,a new feature set is constructed through the obtained feature transfor-mation,and the classification model is trained and tested on the new feature set.In order to verify the effectiveness of EEF,expe-riments are conducted in three different evaluation schemes on six open source datasets.The results prove that EEF can improve the performance of the classification model in effort-aware scenarios and performs better than other feature engineering methods.Moreover,under the premise of ensuring the diversity of feature selection,EEF based on a single model can also improve the per-formance of other models.