Software Defect Prediction Analysis Using Machine Learning Techniques
DOI:
https://doi.org/10.26438/ijcse/v13i10.2431Keywords:
Software defect, Artificial intelligence, Neural Network, Fuzzy logic, Data predictionAbstract
Software Quality is a critical aspect of any software. Software Defect Prediction directly impacts quality and has gained significant popularity in recent years. Defective software modules have a massive impact on software quality, leading to cost overruns, delayed timelines, and higher maintenance costs. This paper analyzes the most popular and widely used Machine Learning algorithms: ANN (Artificial Neural Network), PSO (Particle Swarm Optimization), DT (Decision Trees), NB (Naive Bayes), and LC (Linear Classifier). The five algorithms were analyzed using the KEEL tool and validated using k-fold cross-validation. Datasets were obtained from the open-source NASA Promise dataset repository. Seven datasets were selected for defect prediction analysis. Classification was performed on these datasets and validated using 10-fold cross-validation. The results demonstrated the Linear Classifier`s dominance over other algorithms in terms of defect prediction accuracy.
References
[1] I. Arora, V. Tetarwal, and A. Saha, "Open issues in software defect prediction," Procedia Comput. Sci., vol. 46, pp. 906–912, 2015.
[2] M. Rawat and S. K. Dubey, "Software Defect Prediction Models for Quality Improvement: A Literature Study," Int. J. Comput. Sci., vol. 9, pp. 288–296, 2012.
[3] A. Iqbal et al., "Performance analysis of machine learning techniques on software defect prediction using NASA datasets," Int. J. Adv. Comput. Sci. Appl., vol. 10, no. 8, pp. 300–308, 2019.
[4] M. Cetiner and O. K. Sahingoz, "A Comparative Analysis for Machine Learning based Software Defect Prediction Systems," in Proc. 11th Int. Conf. Comput. Commun. Netw. Technol. (ICCCNT), Kharagpur, India, 2020, pp. 1–7.
[5] N. E. Fenton and M. Neil, "A critique of software defect prediction models," IEEE Trans. Softw. Eng., vol. 25, no. 5, pp. 675–689, Sept. 1999.
[6] M. S. Naidu and N. Geethanjali, "Classification of defects in software using decision tree algorithm," Int. J. Eng. Sci. Technol., vol. 5, no. 6, p. 1332, 2013.
[7] A. Hammouri, M. Hammad, M. Alnabhan, and F. Alsarayrah, "Software bug prediction using machine learning approach," Int. J. Adv. Comput. Sci. Appl., vol. 9, no. 2, pp. 78–83, 2018.
[8] P. Paramshetti and D. A. Phalk, "Software defect prediction for quality improvement using hybrid approach," Int. J. Appl. Innov. Eng. Manag., vol. 4, no. 6, pp. 99–104, 2015.
[9] R. Jinsheng, Q. Ke, M. Ying, and L. Guangchun, "On Software Defect Prediction Using Machine Learning," J. Appl. Math., vol. 2014, Art. no. 785435, 2014.
[10] L. Perreault, S. Berardinelli, C. Izurieta, and J. Sheppard, "Using classifiers for software defect detection," in Proc. 26th Int. Conf. Softw. Eng. Data Eng., Sydney, Australia, 2017, pp. 2–4.
[11] L. G. Yong, X. L. Ying, and Q. Z. C. Research, "Software defect prediction based on CART," Int. J. Adv. Comput. Sci. Appl., vol. 602, pp. 3871–3876, 2014.
[12] C. Manjula and L. Florence, "A Deep neural network based hybrid approach for software defect prediction using software metrics," Clust. Comput., vol. 22, pp. 9847–9863, 2019.
[13] P. Kumudha and R. Venkatesan, "Cost-sensitive radial basis function neural network classifier for software defect prediction," Sci. World J., vol. 2016, Art. no. 2401496, 2016.
[14] A. V. Phan, M. L. Nguyen, and L. T. Bui, "Convolutional neural networks over control flow graphs for software defect prediction," in Proc. IEEE 29th Int. Conf. Tools Artif. Intell. (ICTAI), Boston, MA, USA, 2017, pp. 45–52.
[15] B. Mumtaz, S. Kanwal, S. Alamri, and F. Khan, "Feature selection using artificial immune network: An approach for software defect prediction," Intell. Autom. Soft Comput., vol. 29, no. 3, pp. 669–684, 2021.
[16] M. M. Ali et al., "A parallel framework for software defect detection and metric selection on cloud computing," Clust. Comput., vol. 20, no. 3, pp. 2267–2281, 2017.
[17] N. Fenton and J. Bieman, Software Metrics: A Rigorous and Practical Approach, 3rd ed. Boca Raton, FL, USA: CRC Press, 2020.
[18] H. B. Yadav and D. K. Yadav, "A fuzzy logic based approach for phase-wise software defects prediction using software metrics," Inf. Softw. Technol., vol. 63, pp. 44–57, 2015.
[19] S. Herbold, A. Trautsch, and J. Grabowski, "A comparative study to benchmark cross-project defect prediction approaches," IEEE Trans. Softw. Eng., vol. 44, no. 9, pp. 811–833, 2018.
[20] B. R. Grishma and C. Anjali, "Software root cause prediction using clustering techniques: A review," in Proc. IEEE Global Conf. Commun. Technol. (GCCT), Red Hook, NY, USA, 2015, pp. 511–515.
[21] S. R. Chidamber and C. F. Kemerer, "A metrics suite for object oriented design," IEEE Trans. Softw. Eng., vol. 20, no. 6, pp. 476–493, June 1994.
[22] V. U. B. Challagulla, "Reliability analysis of real-time software systems using machine learning models," in Proc. IEEE Int. Conf. Softw. Eng. Qual. Control, 2008, pp. 112–120.
[23] A. G. Koru and H. Liu, "An investigation of software metrics in medical device software," IEEE IT Prof., vol. 9, no. 6, pp. 50–54, Nov.–Dec. 2007.
[24] A. Chug and S. Dhall, "Software defect prediction using clustering and classification techniques: A comparative study," in Proc. 4th Int. Conf. Rel. Infocom Technol. Optim. (ICRITO), Noida, India, 2015, pp. 1–6.
[25] S. Shanthini and R. S. D. Wahidabanu, "Analysis of software defect prediction using SVM and other machine learning classifiers," Int. J. Comput. Appl., vol. 45, no. 14, pp. 22–27, 2012.
[26] C. A. Devi and K. S. Kavitha, "A hybrid feature selection and classification model for software defect prediction," in Proc. IEEE Int. Conf. Innov. Green Energy Healthcare (IGEHC), 2017, pp. 1–5.
[27] A. Okutan and O. T. Y?ld?z, "Software defect prediction using Bayesian networks," Empir. Softw. Eng., vol. 19, no. 1, pp. 154–181, Feb. 2014.
[28] M. Shepperd, Q. Song, Z. Sun, and H. Jia, "Data quality: Some comments on the NASA software defect datasets," IEEE Trans. Softw. Eng., vol. 39, no. 9, pp. 1208–1215, Sept. 2013.
[29] V. Jayaraj and S. Muthamil Selvan, "Boosting techniques for software defect prediction using system level metrics," in Proc. Int. Conf. Recent Trends Inf. Technol. (ICRTIT), 2013, pp. 312–317.
[30] M. Singh and P. S. Sandhu, "A neural network based approach for software defect estimation," in Proc. World Acad. Sci. Eng. Technol., vol. 75, pp. 1045–1049, 2011.
[31] M. Shepperd, "A critique of software defect prediction research," in Proc. IEEE 15th Int. Conf. Softw. Eng. Adv. Appl., 2012, pp. 12–18.
[32] T. P. Pushpavathi, V. P. Arunachalam, and S. Karthik, "Integrated approach of genetic algorithm based fuzzy C-means clustering with random forest for defect prediction," Int. J. Softw. Eng. Knowl. Eng., vol. 24, no. 1, pp. 89–105, 2014.
[33] S. Ratanothayanon and X. He, "A comparative study of software defect prediction using BPNN and RBF," in Proc. 3rd Int. Conf. Softw. Eng. Inf. Eng., 2010, pp. 45–50.
Downloads
Published
How to Cite
Issue
Section
License

This work is licensed under a Creative Commons Attribution 4.0 International License.
Authors contributing to this journal agree to publish their articles under the Creative Commons Attribution 4.0 International License, allowing third parties to share their work (copy, distribute, transmit) and to adapt it, under the condition that the authors are given credit and that in the event of reuse or distribution, the terms of this license are made clear.
