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 Survey on Transfer Learning for Cross-Project Defect Prediction
    Sotto-Mayor, Bruno
    Kalech, Meir
    IEEE ACCESS, 2024, 12 : 93398 - 93425
  • [4] Cross-Project Defect Prediction: A Literature Review
    Pal, Sourabh
    Sillitti, Alberto
    IEEE ACCESS, 2022, 10 : 118697 - 118717
  • [5] On the time-based conclusion stability of cross-project defect prediction models
    Bangash, Abdul Ali
    Sahar, Hareem
    Hindle, Abram
    Ali, Karim
    EMPIRICAL SOFTWARE ENGINEERING, 2020, 25 (06) : 5047 - 5083
  • [6] Multi-Objective Cross-Project Defect Prediction
    Canfora, Gerardo
    De Lucia, Andrea
    Di Penta, Massimiliano
    Oliveto, Rocco
    Panichella, Annibale
    Panichella, Sebastiano
    2013 IEEE SIXTH INTERNATIONAL CONFERENCE ON SOFTWARE TESTING, VERIFICATION AND VALIDATION (ICST 2013), 2013, : 252 - 261
  • [7] DeepCPDP: Deep Learning Based Cross-Project Defect Prediction
    Chen, Deyu
    Chen, Xiang
    Li, Hao
    Xie, Junfeng
    Mu, Yanzhou
    IEEE ACCESS, 2019, 7 : 184832 - 184848
  • [8] Data Transformation in Cross-project Defect Prediction
    Feng Zhang
    Iman Keivanloo
    Ying Zou
    Empirical Software Engineering, 2017, 22 : 3186 - 3218
  • [9] 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
  • [10] 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