Genetic algorithm-based multi-objective optimization model for software bugs prediction

  • Bakre Oluseye Musinat Olabisi Onabanjo University, Ago-Iwoye, Ogun State, Nigeria
  • FEMI Temitope JOHNSON Federal University of Agriculture, Abeokuta http://orcid.org/0000-0002-5467-855X
  • Olusegun Folorunso Federal University of Agriculture, Abeokuta, Ogun State, Nigeria
  • Ihekwoaba Ezinne Federal College of Education (Technical), Akoka, Lagos State, Nigeria
Keywords: software bugs, genetic algorithm, optimization, prediction, machine learning

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. Technology6(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 Technology4(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 research4(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 Tools17(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 Technology5(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 Making10(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 Engineering40(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 Engineering39(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 Optimization49(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

Download data is not yet available.
Published
2022-08-11
How to Cite
Musinat, B., JOHNSON, F., Folorunso, O., & Ezinne, I. (2022, August 11). Genetic algorithm-based multi-objective optimization model for software bugs prediction. ANNUAL JOURNAL OF TECHNICAL UNIVERSITY OF VARNA, BULGARIA, 6(1), 34-48. https://doi.org/10.29114/ajtuv.vol6.iss1.245
Section
INFORMATION TECHNOLOGIES, COMMUNICATION AND COMPUTER EQUIPMENT
Bookmark and Share