Info: Zenodo’s user support line is staffed on regular business days between Dec 23 and Jan 5. Response times may be slightly longer than normal.

Published December 23, 2019 | Version v1
Journal article Open

Software Defect Prediction System using Machine Learning based Algorithms

  • 1. Department of Computer Science, Ladoke Akintola University of Technology, Ogbomoso, Nigeria.

Description

Measuring the performance, reliability or quality of a software simply describes the sequence of actions taken detecting bugs in a software product. The Bugs found during the development of software has made researchers develop different methods of bug prediction models. However, predicting the bugs in a concurrent software product reduces development time and cost. In this paper, experiments were conducted on public available bug prediction dataset which is a repository for most open source software. The Genetic algorithm was used to extract relevant features from the acquired datasets to eliminate the possibility of over-fitting. The extracted features are classified to defective or non-defective using random forest, decision tree and artificial neural network classification technique. Furthermore, the techniques were evaluated using accuracy, precision, recall and f-score. In completion of the conducted experiments, the random forest performs best among the algorithms in terms of accuracy, precision, and f-score with average score of 83.40%, 53.18%, and 52.04% respectively. Also, the results showed that neural network performs best in terms of recall with average score of 60% among the algorithms. Hence, the system helped software developers when developing a good quality software in order to check if the software system has a little or no defects before delivery to customers.

Files

Software Defect Prediction System using Machine_athrrvsd -HBRP Publication.pdf

Additional details

References

  • Agasta, A. and Ramachandran, M. (2014). Predicting the Software Fault Using Genetic Algorithm technique. The International Journal of Advanced Research in Electrical, Electronics and Instrumentation Engineering.2014.3(2):390-398p.
  • Arisholm, E., Lionel, C. B and Magnus, F. (2007). Data Mining Techniques for Building Faultproneness Systems in Telecom Java Software. In the 18th International Symposium on Software Reliability (ISSRE'07), 2007.215–224p.
  • Arisholm, E., Lionel, C. B. and Eivind, B. (2010). A Comprehensive and Systematic Investigation of Methods to Build and Evaluate Fault Prediction models. Journal of Systems and Software, 83(1):2–17p.
  • Grishma, B. R., and Anjali, C. (2015). Software root cause prediction using clustering methods: A review. Communication Technologies (GCCT), 2015 Global Conference on.IEEE.
  • Eibe F., Ian H. W., and Mark A. H. (2011). The Data Mining: Practical Machine Learning Tools and Methods, Third Edition (The Morgan Kaufmann Series in Data Management Systems). Morgan Kaufmann.2011.
  • Malhotra, R. (2014). Comparative analysis of statistical and machine learning techniques For predicting buggy modules. Applied Soft Computing. 2014.21:286-297p.
  • Menzies, T., Greenwald, J. and Frank, A. (2007). The Data mining static code features to learnbug predictors. IEEE Trans. Softw. Eng. 2007.33:2– 13p.
  • Menzies, T., Milton, Z., Turhan, B., Cukic, B., Jiang, Y., and Bener, A. (2010). Bug prediction from static code attributes: current results, limitations, new techniques. The Automated Software Engineering.2010.17(4):375–407p.
  • Parameswari, A. (2015). Comparing Data Mining Techniques for the Software Defect Prediction.
  • Shafi, S., Syed, M. H., Afsah, A., Malik, J. K. and Shafay, S. (2008). The Software Quality Prediction Techniques: A Comparative Analysis. In 2008 4th International Conference on Emerging Technologies.2008:242– 246p.

Subjects

Computer Science Engineering
http://hbrppublication.com/journals.html