Online Submission!

Open Journal Systems


Mohamed Abdulshaheed, Mustafa Hammad, Abdulla Alqaddoumi, Qasem Obeidat


Software bugs and program defects have significant negative effect on the cost and duration of software development process. Finding such bugs in early stages of the development process will cuts development time and maintenance costs. This investigation presents three different machine learning algorithms: K-Nearest Neighbors (KNN), Random Forest (RF), and Multilayer Perceptron (MLP) to build a new proposed software defect prediction model using different types of software performance metrics. This proposed model was tested on three public datasets obtained from NASA to assess its accuracy and revealed that the KNN was outperforms RF and MLP.


software engineering; machine learning; prediction model; software defects; software evolution

Full Text:



T. M. Khoshgoftaar and N. Seliya, “Software quality classification modeling using the SPRINT decision tree algorithm,” Int. J. Artif. Intell. Tools, vol. 12, no. 03, pp. 207–225, 2003.

T. Menzies, J. Greenwald, and A. Frank, “Data mining static code attributes to learn defect predictors,” IEEE Trans. Softw. Eng., vol. 33, no. 1, pp. 2–13, 2007.

X. Yuan, T. M. Khoshgoftaar, E. B. Allen, and K. Ganesan, “An application of fuzzy clustering to software quality prediction,” in Proceedings 3rd IEEE Symposium on Application-Specific Systems and Software Engineering Technology, 2000, pp. 85–90.

H. M. Olague, L. H. Etzkorn, S. Gholston, and S. Quattlebaum, “Empirical validation of three software metrics suites to predict fault-proneness of object-oriented classes developed using highly iterative or agile software development processes,” IEEE Trans. Softw. Eng., vol. 33, no. 6, pp. 402–419, 2007.

K. El Emam, S. Benlarbi, N. Goel, and S. N. Rai, “Comparing case-based reasoning classifiers for predicting high risk software components,” J. Syst. Softw., vol. 55, no. 3, pp. 301–320, 2001.

M. Evett, T. Khoshgoftar, P. Chien, and E. Allen, “GP-based software quality prediction,” in Proceedings of the Third Annual Conference Genetic Programming, volume, 1998, pp. 60–65.

T. J. McCabe, “A complexity measure,” IEEE Trans. Softw. Eng., no. 4, pp. 308–320, 1976.

M. E. R. Bezerra, A. L. I. Oliveira, P. J. L. Adeodato, and S. R. L. Meira, “Enhancing RBF-DDA algorithm’s robustness: Neural networks applied to prediction of fault-prone software modules,” in IFIP International Conference on Artificial Intelligence in Theory and Practice, 2008, pp. 119–128.

P. C. Pendharkar, “Exhaustive and heuristic search approaches for learning a software defect prediction model,” Eng. Appl. Artif. Intell., vol. 23, no. 1, pp. 34–40, 2010.

S. Kanmani, V. R. Uthariaraj, V. Sankaranarayanan, and P. Thambidurai, “Object-oriented software fault prediction using neural networks,” Inf. Softw. Technol., vol. 49, no. 5, pp. 483–492, 2007.

Hammad, M., Alqaddoumi, A. and Al-Obaidy, H., 2019. "Predicting Software Faults Based on K-Nearest Neighbors Classification.", International Journal of Computing and Digital Systems, 8(5), pp.462-467.

Awni Hammouri, Mustafa Hammad, Mohammad Alnabhan, and Fatima Alsarayrah. 2018. "Software bug prediction using machine learning approach.", International Journal of Advanced Computer Science and Applications, 9(2).

Y. Ma, L. Guo, and B. Cukic, “A statistical framework for the prediction of fault-proneness,” in Advances in Machine Learning Applications in Software Engineering, IGI Global, 2007, pp. 237–263.

G. D. Boetticher, “Improving credibility of machine learner models in software engineering,” in Advances in Machine Learning Applications in Software Engineering, IGI Global, 2007, pp. 52–72.

V. U. B. Challagulla, F. B. Bastani, and I. L. Yen, “A unified framework for defect data analysis using the MBR technique,” Proc. - Int. Conf. Tools with Artif. Intell. ICTAI, pp. 39–46, 2006.

K. O. Elish and M. O. Elish, “Predicting defect-prone software modules using support vector machines,” J. Syst. Softw., vol. 81, no. 5, pp. 649–660, 2008.

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, 1994.

V. R. Basili, L. C. Briand, and W. L. Melo, “A validation of object-oriented design metrics as quality indicators,” IEEE Trans. Softw. Eng., vol. 22, no. 10, pp. 751–761, 1996.

M.-H. Tang, M.-H. Kao, and M.-H. Chen, “An empirical study on object-oriented metrics,” in Proceedings sixth international software metrics symposium (Cat. No. PR00403), 1999, pp. 242–249.

K. El Emam, W. Melo, and J. C. Machado, “The prediction of faulty classes using object-oriented design metrics,” J. Syst. Softw., vol. 56, no. 1, pp. 63–75, 2001.

T. M. Khoshgoftaar, E. B. Allen, J. P. Hudepohl, and S. J. Aud, “Application of neural networks to software quality modeling of a very large telecommunications system,” IEEE Trans. Neural Networks, vol. 8, no. 4, pp. 902–909, 1997.

B. Turhan, G. Kocak, and A. Bener, “Data mining source code for locating software bugs: A case study in telecommunication industry,” Expert Syst. Appl., vol. 36, no. 6, pp. 9986–9990, 2009.

S. KR, “Microarray Data Classification Using Support Vector Machine,” Int. J. Biometrics Bioinforma., vol. 5, no. 1, pp. 10–15, 2011.

L. Jiang, Z. Cai, D. Wang, and S. Jiang, “Survey of improving k-nearest-neighbor for classification,” in Fourth International Conference on Fuzzy Systems and Knowledge Discovery (FSKD 2007), 2007, vol. 1, pp. 679–683.

E. Jedari, Z. Wu, R. Rashidzadeh, and M. Saif, “Wi-Fi based indoor location positioning employing random forest classifier,” in 2015 international conference on indoor positioning and indoor navigation (IPIN), 2015, pp. 1–5.

J. C. Patra, R. N. Pal, B. N. Chatterji, and G. Panda, “Identification of nonlinear dynamic systems using functional link artificial neural networks,” IEEE Trans. Syst. man, Cybern. part b, vol. 29, no. 2, pp. 254–262, 1999.

Y. Tohma, K. Tokunaga, S. Nagase, and Y. Murata, “Structural approach to the estimation of the number of residual software faults based on the hyper-geometric distribution,” IEEE Trans. Softw. Eng., vol. 15, no. 3, pp. 345–355, 1989.

A. Sheta and D. Rine, “Modeling Incremental Faults of Software Testing Process Using AR Models,” in the Proceeding of 4th International Multi-Conferences on Computer Science and Information Technology (CSIT 2006), Amman, Jordan, 2006, vol. 3.

Y. kumar and G. Sahoo, “Analysis of Parametric & Non Parametric Classifiers for Classification Technique using WEKA,” Int. J. Inf. Technol. Comput. Sci., vol. 4, no. 7, pp. 43–49, 2012.

“machine learning - How to interpret error measures? -Cross Validated,” 2017. [Online]. Available: [Accessed: 19-May-2019].

Alsolami, N., Obeidat, Q., Alenezi, M., 2019. Empirical Analysis of Object-Oriented Software Test Suite Evolution. International Journal of Advanced Computer Science and Applications, 10(11). (in press)



  • There are currently no refbacks.

Copyright (c) 2019 COMPUSOFT: An International Journal of Advanced Computer Technology