Genetic algorithm-based multi-objective optimization model for software bugs prediction
Abstract
The accuracy and reliability of software are critical factors for consideration in the operation of any electronic or computing device. Although, there exist several conventional methods of software bugs prediction which depend solely on static code metrics without syntactic structures or semantic information of programs which are more appropriate for developing accurate predictive models. In this paper, software bugs are predicted using a Genetic Algorithm (GA)-based multi-objective optimization model implemented in MATLAB on the National Aeronautics and Space Administration (NASA) dataset comprising thirty-eight distinct factors reduced to six (6) major factors via the use of the Principal Component Analysis (PCA) algorithm with SPSS, after which a linear regression equation was derived. The developed GA- based multi-objective optimization model was well-tried and tested. The accuracy and sensitivity level were also analyzed for successful bug detection. The results for optimal values ranging from 95% to 97% were recorded at an average accuracy of 96.4% derived through MATLAB-implemented measures of critical similarities. The research findings reveal that the model hereto proposed will provide an effective solution to the problem of predicting buggy software in general circulation.
References
Akmel, F., Birihanu, E. Siraj, B. (2017). A literature review study of software defect prediction using machine learning techniques. Int. J. Emerg. Res. Manag. Technology, 6(6), 300-306.
Crossref
Bavisi, S., Mehta, J., & Lopes, L. (2014). A comparative study of different data mining algorithms. International Journal of Current Engineering and Technology, 4(5), 3248-3252.
Catal C., Diri, B. (2009). A systematic review of software fault prediction studies. Expert Systems with Applications, 36 (4), 7346–7354.
Crossref
Cha, S. H., & Tappert, C. C. (2009). A genetic algorithm for constructing compact binary decision trees. Journal of pattern recognition research, 4(1), 1-13.
Crossref
Challagulla, V. U. B., Bastani, F. B., Yen, I. L., & Paul, R. A. (2008). Empirical assessment of machine learning based software defect prediction techniques. International Journal on Artificial Intelligence Tools, 17(02), 389-400.
Crossref
Chen, T., & Guestrin, C. (2016). Xgboost: A scalable tree boosting system. Proceedings of the 22nd ACM SIGKDD, International conference on knowledge discovery and data mining, (22), 785-794.
Crossref
Costa, E. O., de Souza, G. A., Pozo, A. T. R., & Vergilio S. R. (2007). Exploring Genetic Programming and Boosting Techniques to Model Software Reliability. IEEE Transactions on Reliability, (56): 422-434.
Crossref
Doval, D., Mancoridis, S. & Mitchell, B. S. (1999). Automatic clustering of software systems using a genetic algorithm. Proc. Conference of Software Technology and Engineering Practice, England, 73-81.
Crossref
Gupta, Dharmendra, L. & Kavita S. (2017). Software bug prediction using object-oriented metrics. Sādhanā (1), 1-15.
Haznedar, B. & Kalinli, A. (2016). Training ANFIS Using Genetic Algorithm for Dynamic Systems Identification. Int j Intell Sys appl eng, 4(1), 44-47.
Crossref
Jaspree, K. (2011). A k-means Based Approach for Prediction of Level of Severity of Faults in Software System. In Proceedings of International conference on Intelligent Computational Systems.
Jureczko, M., & Spinellis, D. (2010). Using object-oriented design metrics to predict software defects. Models and Methods of System Dependability. Oficyna Wydawnicza Politechniki Wrocławskiej, 69-81.
Kim, S., Zhang, H., Wu, R. and Gong, L. (2011). Dealing with noise in defect prediction. Proceeding of the 33rd International Conference on Software Engineering, ICSE (11), 481–490.
Crossref
Malhotra, R. & Singh, Y. (2011). On the applicability of machine learning techniques for object-oriented software fault prediction. Software Engineering: An International Journal 1(1), 24-37.
Naidu, M. S., & Geethanjali, N. (2013). Classification of defects in software using decision tree algorithm. International Journal of Engineering Science and Technology, 5(6), 1332-1342.
Okutan, A., & Yıldız, O. T. (2014). Software defect prediction using Bayesian networks. Empirical Software Engineering 19(1),154-181.
Crossref
Peng, Y., Kou, G., Wang, G., Wu, W., & Shi, Y. (2011). Ensemble of software defect predictors: an AHP-based evaluation method. International Journal of Information Technology & Decision Making, 10(01), 187-206.
Crossref
Rahman, F., Posnett, D. & Devanbu, P. (2012). Recalling the imprecision of cross-project defect prediction. In Proceedings of the ACM SIGSOFT 20th International Symposium on the Foundations of Software Engineering, (12) 1–61:11 New York, NY, USA. ACM.
Crossref
Sharma, D. & Chandra, P. (2018) Software Fault Prediction Using Machine Learning Techniques. In Smart Computing and Informatics (pp.541-549). Springer, Singapore.
Crossref
Shepperd, M., Bowes, D. & Hall, T. (2014). Researcher bias: The use of machine learning in software defect prediction. IEEE Transactions on Software Engineering, 40(6), 603-616.
Crossref
Shivaji, S., Whitehead, E. J., Akella, R. & Kim, S. (2012). Reducing features to improve code change-based bug prediction. IEEE Transactions on Software Engineering, 39(4), 552-569.
Crossref
Singh, P. & Chug, A. (2017). Software defect prediction analysis using machine learning algorithms. In 7th International Conference on Cloud Computing, Data Science & Engineering Confluence, 212-232. IEEE.
Crossref
Suman, B. (2004). Study of simulated annealing-based algorithms for multi-objective optimization of a constrained problem. Comput. Chem. Eng. 28(9) 1849–1871.
Crossref
Yamaguchi, F., Lottmann, M. & Rieck, K. (2012). Generalized vulnerability extrapolation using abstract syntax trees. In Proceedings of the 28th Annual Computer Security Applications Conference, ACM, (pp.359–368), Orlando, FL, USA.
Crossref
Zavala, G. R., Nebro, A. J., Luna, F., & Coello Coello, C. A. (2014). A survey of multi-objective metaheuristics applied to structural optimization. Structural and Multidisciplinary Optimization, 49(4), 537-558.
Crossref
Zhou, Y., Yang, Y., Lu, H., Chen, L., Li, Y., Zhao, Y., ... & Xu, B. (2018). How far we have progressed in the journey? an examination of cross-project defect prediction. ACM Transactions on Software Engineering and Methodology (TOSEM), 27(1), 1-51.
Crossref
Total number of hits on abstract = 335 times
Downloads for 2024
This work is licensed under a Creative Commons Attribution 4.0 International License.