Improving effort-aware just-in-time defect prediction with weighted code churn and multi-objective slime mold algorithm

被引:0
|
作者
Dai, Hongming [1 ,2 ]
Xi, Jianqing [1 ]
Dai, Hong-Liang [3 ]
机构
[1] South China Univ Technol, Sch Software, Guangzhou 510006, Peoples R China
[2] Guangdong Polytech Sci & Trade, Sch Informat, Guangzhou 510430, Peoples R China
[3] Guangzhou Univ, Sch Econ & Stat, Guangzhou 510006, Peoples R China
关键词
Weighted code churn; Multi-objective slime mold algorithm; Just-in-time defect prediction; Effort aware; Software quality assurance; EVOLUTIONARY ALGORITHM; GENETIC ALGORITHM; OPTIMIZATION; ATTRIBUTES; ENSEMBLE; METRICS;
D O I
10.1016/j.heliyon.2024.e37360
中图分类号
O [数理科学和化学]; P [天文学、地球科学]; Q [生物科学]; N [自然科学总论];
学科分类号
07 ; 0710 ; 09 ;
摘要
Effort-aware just-in-time software defect prediction (JIT-SDP) aims to effectively utilize the limited resources of software quality assurance (SQA) to detect more software defects. This improves the efficiency of SQA work and the quality of the software. However, there is disagreement regarding the representation of the key feature variable, SQA effort, in the field of effort-aware JIT-SDP. Additionally, the most recent metaheuristic optimization algorithms (MOAs) have not yet been effectively integrated with multi-objective effort-aware JIT-SDP tasks. These deficiencies, in both feature representation and model optimization (MO), result in a significant disparity between the performance of effort-aware JIT-SDP techniques and the expectations of the industry. In this study, we present a novel method called weighted code churn (CC) and improved multi-objective slime mold algorithm (SMA) (WCMS) for effort-aware JIT-SDP. It comprises two stages: feature improvement (FI) and MO. In the FI phase, we normalize the two feature variables: number of modified files (NF) and distribution of modified code across each file (Entropy). We then use an exponential function to quantify the level of difficulty of the change. The equation is as follows: DD = NFEntropy, where DD is an acronym for the degree of difficulty, NF denotes the base number, and Entropy denotes the index. We define change effort as the product of the difficulty degree in implementing the change and CC, with weighted CC representing the change effort. During the MO stage, we improve the SMA by incorporating multi-objective handling capabilities and devising mechanisms for multi-objective synchronization and conflict resolution. We develop a multi-objective optimization algorithm for hyperparameter optimization (HPO) of the JIT-SDP model in WCMS. To evaluate the performance of our method, we conducted experiments using six well-known open-source projects and employed two effort-aware performance evaluation metrics. We evaluated our method based on three scenarios: cross-validation, time-wise cross-validation, and across-project prediction. The experimental results indicate that the proposed method outperforms the benchmark method. Furthermore, the proposed method demonstrates greater scalability and generalization capabilities.
引用
收藏
页数:27
相关论文
共 25 条
  • [1] MULTI: Multi-objective effort-aware just-in-time software defect prediction
    Chen, Xiang
    Zhao, Yingquan
    Wang, Qiuping
    Yuan, Zhidan
    INFORMATION AND SOFTWARE TECHNOLOGY, 2018, 93 : 1 - 13
  • [2] Code churn: A neglected metric in effort-aware just-in-time defect prediction
    Liu, Jinping
    Zhou, Yuming
    Yang, Yibiao
    Lu, Hongmin
    Xu, Baowen
    11TH ACM/IEEE INTERNATIONAL SYMPOSIUM ON EMPIRICAL SOFTWARE ENGINEERING AND MEASUREMENT (ESEM 2017), 2017, : 11 - 19
  • [3] Effort-aware and just-in-time defect prediction with neural network
    Qiao, Lei
    Wang, Yan
    PLOS ONE, 2019, 14 (02):
  • [4] DEJIT: A Differential Evolution Algorithm for Effort-Aware Just-in-Time Software Defect Prediction
    Yang, Xingguang
    Yu, Huiqun
    Fan, Guisheng
    Yang, Kang
    INTERNATIONAL JOURNAL OF SOFTWARE ENGINEERING AND KNOWLEDGE ENGINEERING, 2021, 31 (03) : 289 - 310
  • [5] Effort-Aware semi-Supervised just-in-Time defect prediction
    Li, Weiwei
    Zhang, Wenzhou
    Jia, Xiuyi
    Huang, Zhiqiu
    INFORMATION AND SOFTWARE TECHNOLOGY, 2020, 126
  • [6] A Novel Effort Measure Method for Effort-Aware Just-in-Time Software Defect Prediction
    Chen, Liqiong
    Song, Shilong
    Wang, Can
    INTERNATIONAL JOURNAL OF SOFTWARE ENGINEERING AND KNOWLEDGE ENGINEERING, 2021, 31 (08) : 1145 - 1169
  • [8] A compositional model for effort-aware Just-In-Time defect prediction on android apps
    Zhao, Kunsong
    Xu, Zhou
    Yan, Meng
    Xue, Lei
    Li, Wei
    Catolino, Gemma
    IET SOFTWARE, 2022, 16 (03) : 259 - 278
  • [9] Revisiting supervised and unsupervised models for effort-aware just-in-time defect prediction
    Huang, Qiao
    Xia, Xin
    Lo, David
    EMPIRICAL SOFTWARE ENGINEERING, 2019, 24 (05) : 2823 - 2862
  • [10] Revisiting supervised and unsupervised models for effort-aware just-in-time defect prediction
    Qiao Huang
    Xin Xia
    David Lo
    Empirical Software Engineering, 2019, 24 : 2823 - 2862