Cross-project smell-based defect prediction

被引:11
|
作者
Sotto-Mayor, Bruno [1 ]
Kalech, Meir [1 ]
机构
[1] Ben Gurion Univ Negev, Beer Sheva, Israel
关键词
Cross-project defect prediction; Defect prediction; Code smell; Mining software repositories; Software quality; Software engineering; CODE; METRICS;
D O I
10.1007/s00500-021-06254-7
中图分类号
TP18 [人工智能理论];
学科分类号
081104 ; 0812 ; 0835 ; 1405 ;
摘要
Defect prediction is a technique introduced to optimize the testing phase of the software development pipeline by predicting which components in the software may contain defects. Its methodology trains a classifier with data regarding a set of features measured on each component from the target software project to predict whether the component may be defective or not. However, suppose the defective information is not available in the training set. In that case, we need to rely on an alternate approach that uses the training set of external projects to train the classifier. This approached is called cross-project defect prediction. Bad code smells are a category of features that have been previously explored in defect prediction and have been shown to be a good predictor of defects. Code smells are patterns of poor development in the code and indicate flaws in its design and implementation. Although they have been previously studied in the context of defect prediction, they have not been studied as features for cross-project defect prediction. In our experiment, we train defect prediction models for 100 projects to evaluate the predictive performance of the bad code smells. We implemented four cross-project approaches known in the literature and compared the performance of 37 smells with 56 code metrics, commonly used for defect prediction. The results show that the cross-project defect prediction models trained with code smells significantly improved 6.50% on the ROC AUC compared against the code metrics.
引用
收藏
页码:14171 / 14181
页数:11
相关论文
共 50 条
  • [1] Cross-project smell-based defect prediction
    Bruno Sotto-Mayor
    Meir Kalech
    Soft Computing, 2021, 25 : 14171 - 14181
  • [2] Exploring Design smells for smell-based defect prediction
    Sotto-Mayor, Bruno
    Elmishali, Amir
    Kalech, Meir
    Abreu, Rui
    ENGINEERING APPLICATIONS OF ARTIFICIAL INTELLIGENCE, 2022, 115
  • [3] A Framework for Homogeneous Cross-Project Defect Prediction
    Goel, Lipika
    Sharma, Mayank
    Khatri, Sunil Kumar
    Damodaran, D.
    INTERNATIONAL JOURNAL OF SOFTWARE INNOVATION, 2021, 9 (01) : 52 - 68
  • [4] DeepCPDP: Deep Learning Based Cross-Project Defect Prediction
    Chen, Deyu
    Chen, Xiang
    Li, Hao
    Xie, Junfeng
    Mu, Yanzhou
    IEEE ACCESS, 2019, 7 : 184832 - 184848
  • [5] An investigation on the feasibility of cross-project defect prediction
    Zhimin He
    Fengdi Shu
    Ye Yang
    Mingshu Li
    Qing Wang
    Automated Software Engineering, 2012, 19 : 167 - 199
  • [6] Data Transformation in Cross-project Defect Prediction
    Feng Zhang
    Iman Keivanloo
    Ying Zou
    Empirical Software Engineering, 2017, 22 : 3186 - 3218
  • [7] An investigation on the feasibility of cross-project defect prediction
    He, Zhimin
    Shu, Fengdi
    Yang, Ye
    Li, Mingshu
    Wang, Qing
    AUTOMATED SOFTWARE ENGINEERING, 2012, 19 (02) : 167 - 199
  • [8] Data Transformation in Cross-project Defect Prediction
    Zhang, Feng
    Keivanloo, Iman
    Zou, Ying
    EMPIRICAL SOFTWARE ENGINEERING, 2017, 22 (06) : 3186 - 3218
  • [9] eCPDP : Early Cross-Project Defect Prediction
    Kwon, Sunjae
    Ryu, Duksan
    Baik, Jongmoon
    2021 IEEE 21ST INTERNATIONAL CONFERENCE ON SOFTWARE QUALITY, RELIABILITY AND SECURITY (QRS 2021), 2021, : 470 - 481
  • [10] Cross-Project Defect Prediction: A Literature Review
    Pal, Sourabh
    Sillitti, Alberto
    IEEE ACCESS, 2022, 10 : 118697 - 118717