Software Fault Prediction Using Machine Learning Algorithms
Main Article Content
Abstract
Software quality, development time, and cost can all be improved by finding and fixing bugs as soon as possible. Machine learning (ML) has been widely used for software failure prediction (SFP), but there is a wide range in how well different ML algorithms predict SFP failures. The impressive results that deep learning can produce are useful in many different fields of study, including computer vision, natural language processing, speech recognition, and many others. This investigation into Multi-Layer Perceptrons (MLPs) and Convolutional Neural Networks seeks to address the factors that may affect the performance of both methods (CNNs). The earlier software errors are found and fixed, the less time, money, and energy are wasted and the higher the likelihood of success and customer satisfaction. While machine learning (ML) and deep learning (DL) have been widely applied to SFP, the results that different algorithms produce can be somewhat inconsistent. This research uses ANN-MLP-based boosting models like XGBoost and CatBoost to enhance accuracy on NASA datasets (Artificial Neural Network-Multi Layer Perceptron). We will use a voting ensemble consisting of ANN-MLP and booster models such as XGBoost and CatBoost to increase precision.
Article Details

This work is licensed under a Creative Commons Attribution-NonCommercial 4.0 International License.
IJCERT Policy:
The published work presented in this paper is licensed under the Creative Commons Attribution 4.0 International (CC BY 4.0) license. This means that the content of this paper can be shared, copied, and redistributed in any medium or format, as long as the original author is properly attributed. Additionally, any derivative works based on this paper must also be licensed under the same terms. This licensing agreement allows for broad dissemination and use of the work while maintaining the author's rights and recognition.
By submitting this paper to IJCERT, the author(s) agree to these licensing terms and confirm that the work is original and does not infringe on any third-party copyright or intellectual property rights.
References
S. Parnerkar, A. V. Jain, and C. Birchha, ‘‘An approach to efficient software bug prediction using regression analysis and neural networks,’’ Int. J. Innov. Res. Computer. Commun. Eng., vol. 3, no. 10, Oct. 2015.
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), Nov. 2017, pp. 45–52.
E. Erturk and E. A. Sezer, ‘‘Iterative software fault prediction with a hybrid approach,’’ Appl. Soft Comput., vol. 49, pp. 1020–1033, Dec. 2016.
R. Kumar and D. Gupta, ‘‘Software Bug Prediction System Using Neural Network,’’ Eur. J. Adv. Eng. Technol., vol. 3, no. 7, pp. 78–84, 2016.
I. B. Y. Goodfellow and A. Courville, Deep Learning, 1st ed. Cambridge, U.K.: MIT Press, 2016.
S. Haykin, Networks and Learning Machines. London, U.K.: Pearson, 2009.
Y.-S. Su and C.-Y. Huang, ‘‘Neural-network-based approaches for software reliability estimation using dynamic weighted combinational models,’’ J. Syst. Softw., vol. 80, no. 4, pp. 606–615, Apr. 2007.
A. Pahal and R. S. Chillar, ‘‘A hybrid approach for software fault prediction using artificial neural network and simplified swarm optimization,’’ IJARCCE, vol. 6, no. 3, pp. 601–605, Mar. 2017.
Y. LeCun and Y. H. Bengio And Hinton, ‘‘Deep learning,’’ Nature, vol. 521, no. 7553, pp. 436-444, 2015.
S. Yang, L. Chen, T. Yan, Y. Zhao, and Y. Fan, ‘‘An ensemble classification algorithm for convolutional neural network based on AdaBoost,’’ in Proc. IEEE/ACIS 16th Int. Conf. Comput. Inf. Sci., May 2017, pp. 401–406.
C. Farabet, B. Martini, P. Akselrod, S. Talay, Y. LeCun, and E. Culurciello, ‘‘Hardware accelerated convolutional neural networks for synthetic vision systems,’’ in Proc. IEEE Int. Symp. Circuits Syst., May 2010, pp. pp. 257–260.
C. W. S. Jin Jin and M. J. Ye, ‘‘Artificial neural network-based metric selection for software fault-prone prediction model,’’ IET Software, vol. 6, no. 6, pp. 479–487, Dec. 2012.
C. Zhang, P. Patras, and H. Haddadi, ‘‘Deep learning in mobile and wireless networking: A survey,’’ IEEE Commun. Surveys Tuts., vol. 21, no. 3, pp. 2224–2287, 3rd Quart., 2019.
D. Kaur, A. Kaur, S. Gulati, and M. Aggarwal, ‘‘A clustering algorithm for software fault prediction,’’ in Proc. Int. Conf. Comput. Commun. Technol. (ICCCT), Sep. 2010, pp. 603–607.
M. Park and H. Hong, ‘‘Software fault prediction model using clustering algorithms determining the number of clusters automatically,’’ Int. J. Softw. Eng. Appl., vol. 8, no. 7, pp. 199–204, 2014.
R. S. Wahono and N. S. Herman, ‘‘Genetic feature selection for software defect prediction,’’ Adv. Sci. Lett., vol. 20, no. 1, pp. 239–244, Jan. 2014.
H. Wang, T. M. Khoshgoftaar, J. Van Hulse, and K. Gao, ‘‘Metric selection for software defect prediction,’’ Int. J. Softw. Eng. Knowl. Eng., vol. 21, no. 02, pp. 237–257, Mar. 2011.
J. Li, P. He, J. Zhu, and M. R. Lyu, ‘‘Software defect prediction via convolutional neural network,’’ in Proc. IEEE Int. Conf. Softw. Qual., Rel. Secur. (QRS), Jul. 2017, pp. 318–328.
H. Khanh Dam, T. Pham, S. Wee Ng, T. Tran, J. Grundy, A. Ghose, T. Kim, and C.-J. Kim, ‘‘A deep tree-based model for software defect prediction,’’ 2018, arXiv:1802.00921. [Online]. Available: http://arxiv.org/abs/1802.00921
S. D. Chandra, ‘‘Software defect prediction based on classification rule mining,’’ Dept. Comput. Sci. Eng., Nat. Inst. Technol. Rourkela, Rourkela, India, Tech. Rep., 2013.