Abstract
Software defect prediction (SDP) plays an important role in new research areas of software engineering. Cross-project defect prediction (CPDP) technique achieved success for prediction of defects in innovating projects having lack of data. In this study, we have developed predictive models using different machine learning algorithms. Two approaches for DP were discussed in this study. One approach is heterogeneous defect prediction (HDP), and another approach is within-project defect prediction (WPDP). We have used different projects in HDP. The metrics matching analyzer is used for identifying matching metrics across different projects. The concept of transfer learning helps to improve DP by using HDP. HDP takes one project for training and testing against another project. We have shown the best machine learning algorithm for the DP model. The DP helps us in identifying defects before its delivery to the customer. To achieve our goal, we have taken twelve datasets from NASA and PROMISE repository. The machine learning algorithms are compared using statistical tests. The performance of the developed prediction model has been evaluated using area under curve performance measure
Similar content being viewed by others
Data Availability
Enquiries about data availability should be directed to the authors.
References
Bekkar M, Djemaa HK, Alitouche TA (2013) Evaluation measures for models assessment over imbalanced data sets. J Info Eng Applicat 3(10):1–13
Benavoli A, Corani G, Mangili F (2016) Should we really use post-hoc tests based on mean-ranks? J Machine Learn Res 7(1):152–161
Bird C, Nagappan N, Murphy B, Gall H, Devanbu P(2011)“Don’t touch my code!: examining the effects of ownership on software quality,”In ACM SIGSOFT Symposium and the european conference on foundations of software engineering, pp. 4–14
Bowes D, Hall T, Petric J (2018) Software defect prediction: do different classifiers find the same defects? Softw Qual J 26:525–552
Canfora G, De Lucia A, Di Penta M, Oliveto R, Panichella A, Panichella S(2013) “Multi-objective Cross-Project Defect Prediction,”In 2013 IEEE International Conference on Software Testing, Verification and Validation, pp. 252–261
Cao Q, Sun Q, Cao Q, Tan H(2015) “Software defect prediction via transfer learning based neural network,”2015 First international conference on reliability systems engineering (ICRSE), pp. 1–10
Caruana R (1997) Multitask Learning. Machine Learn 28:41–75
Forman G, Scholz M (2010) Apples-to-apples in cross-validation studies: pitfalls in classifier performance measurement. ACM SIGKDD Explorat Newslett 12(1):49–57
He Z, Shu F, Yang Y, Li M, Wang Q (2012) An investigation on the feasibility of cross-project defect prediction. Automat Soft Eng 19(2):167–199
Jing X, Wu F, Dong X, Qi F, Xu B(2015) “Heterogeneous cross-company defect prediction by unified metric representation and CCA-based transfer learning,”In Proceedings of the joint meeting on foundations of software engineering, association for computing machinery, pp. 496–507
Kamei Y, Shihab E(2016) “Defect prediction: accomplishments and future challenges,”2016 IEEE 23rd International conference on software analysis, evolution, and reengineering (SANER), pp. 33–45
Kohavi R (1995) A study of cross-validation and bootstrap for accuracy estimation and model selection. In Ijcai 14(2):1137–1145
Krishna R, Menzies T (2019) Bellwethers: a baseline method for transfer learning. IEEE Trans Softw Eng 45(11):1081–1105
Lessmann S, Baesens B, Mues C, Pietsch S (2008) Benchmarking classification models for software defect prediction: a proposed framework and novel findings. IEEE Trans Softw Eng 34(4):485–496
Liu X, Liu Z, Wang G, Cai Z, Zhang H (2018) Ensemble transfer learning algorithm. IEEE. Access 6:2389–2396
Long M, Wang J, Ding G, Pan SJ, Yu PS (2014) Adaptation regularization: a general framework for transfer learning. IEEE Trans Knowl Data Eng 26(5):1076–1089
Long M, Wang J, Sun J, Yu PS (2015) Domain invariant transfer kernel learning. IEEE Trans Knowl Data Eng 27(6):1519–1532
Ma Y, Luo G, Zeng X, Chen A (2012) Transfer learning for cross-company software defect prediction. Info Softw Tech 54(3):248–256
Malhotra R (2015) Empirical research in software engineering concepts, analysis and applications. CRC Press, Florida
Malhotra R, Bansal A. J(2014) “Cross project change prediction using open source projects,”2014 International conference on advances in computing, communications and informatics (ICACCI), 2014, pp. 201–207
Nam J, Fu W, Kim S, Menzies T, Tan L (2018) Heterogeneous defect prediction. IEEE Trans Soft Eng 44(9):874–896
Nam J, Pan S. J, Kim S(2013) “Transfer defect learning,”International conference on software engineering (ICSE), pp. 382–391
Pan SJ, Yang Q (2010) A survey on transfer learning. IEEE Trans Knowl Data Eng 22(10):1345–1359
Pan W, Liu M, Ming Z (2016) Transf Learn Heterogen One-Class Collaborat Filter. IEEE Intell Sys 31(4):43–49
Panichella A, Oliveto R, De Lucia A(2014) “Cross-project defect prediction models: L’union fait la force,”In Software maintenance, reengineering and reverse engineering (CSMR-WCRE), 2014 Software Evolution Week - IEEE conference, pp. 164–173
Pan S. J, Kwok J. T, Yang Q(2008) Transfer learning via Dimensionality Reduction. In Proceedings of the 23rd national conference on Artificial intelligence - Volume 2 (AAAI’08), AAAI Press, pp. 677–82
Peters F, Menzies T(2012) “Privacy and utility for defect prediction: experiments with MORPH,”2012 34th International conference on software engineering (ICSE), pp. 189–199
Qing H, Biwen L, Beijun S, Xia Y (2015) “Cross-project software defect prediction using feature-based transfer learning,”In: Asia-pacific symposium on internetware. ACM, New York, USA, pp 74–82
Rahman F, Posnett D, Devanbu P(2012) “Recalling the “imprecision”of cross-project defect prediction,”In International symposium on the foundations of software engineering, pp 1–11
Ryu D, Jang J, Baik J (2017) A transfer cost-sensitive boosting approach for cross-project defect prediction. Softw Qual J 25(1):235–272
Taheri SM, Hesamian G (2013) A generalization of the Wilcoxon signed-rank test and its applications. Stat Paper 54(2):457–470
Tantithamthavorn C, McIntosh S, Hassan AE, Matsumoto K (2017) An empirical comparison of model validation techniques for defect prediction models. IEEE Trans Softw Eng 43(1):1–18
Turhan B, Menzies T, Bener AB, Di Stefano J (2009) On the relative value of cross-company and within-company data for defect prediction. Empir Softw Eng 14:540–578
Xu Y et al (2017) A unified framework for metric transfer learning. IEEE Trans Knowl Data Eng 29(6):1158–1171
Yan S, Shen B, Mo W, Li N(2017) “Transfer Learning for Cross-Platform Software Crowdsourcing Recommendation,”2017 24th Asia-Pacific software engineering conference (APSEC), pp. 269–278
Yuand Q, Jiang S, Zhang Y (2017) A feature matching and transfer approach for cross-company defect prediction. J Sys Softw 132:366–378
Zhang Y, Lo D, Xia X, Sun J(2015) “An empirical study of classifier combination for cross-project defect prediction,”2015 IEEE 39th Annual computer software and applications conference, pp. 264–269
Zimmermann T, Nagappan N, Gall H, Giger E, Murphy B(2009) “Cross-project defect prediction: a large scale experiment on data vs. domain vs. process,”In Proceedings of the 7th joint meeting of the european software engineering conference and the ACM SIGSOFT symposium on The foundations of software engineering (ESEC/FSE’09), pp. 91–100
Acknowledgements
This research is not supported under any funding.
Funding
Authors certify that no funding has been received for the conduct of this study and preparation of this manuscript.
Author information
Authors and Affiliations
Ethics declarations
Conflict of interest
The authors declare that they have no conflict of interest.
Ethical approval
This article does not contain any studies with human participants or animals performed by any of the authors.
Additional information
Publisher's Note
Springer Nature remains neutral with regard to jurisdictional claims in published maps and institutional affiliations.
Rights and permissions
About this article
Cite this article
Malhotra, R., Meena, S. Defect prediction model using transfer learning. Soft Comput 26, 4713–4726 (2022). https://doi.org/10.1007/s00500-022-06846-x
Accepted:
Published:
Issue Date:
DOI: https://doi.org/10.1007/s00500-022-06846-x