A Growing Natural Gas Approach for Evaluating Quality of Software Modules
Authors: Parvinder S. Sandhu, Sandeep Khimta, Kiranpreet Kaur
Abstract:
The prediction of Software quality during development life cycle of software project helps the development organization to make efficient use of available resource to produce the product of highest quality. “Whether a module is faulty or not" approach can be used to predict quality of a software module. There are numbers of software quality prediction models described in the literature based upon genetic algorithms, artificial neural network and other data mining algorithms. One of the promising aspects for quality prediction is based on clustering techniques. Most quality prediction models that are based on clustering techniques make use of K-means, Mixture-of-Guassians, Self-Organizing Map, Neural Gas and fuzzy K-means algorithm for prediction. In all these techniques a predefined structure is required that is number of neurons or clusters should be known before we start clustering process. But in case of Growing Neural Gas there is no need of predetermining the quantity of neurons and the topology of the structure to be used and it starts with a minimal neurons structure that is incremented during training until it reaches a maximum number user defined limits for clusters. Hence, in this work we have used Growing Neural Gas as underlying cluster algorithm that produces the initial set of labeled cluster from training data set and thereafter this set of clusters is used to predict the quality of test data set of software modules. The best testing results shows 80% accuracy in evaluating the quality of software modules. Hence, the proposed technique can be used by programmers in evaluating the quality of modules during software development.
Keywords: Growing Neural Gas, data clustering, fault prediction.
Digital Object Identifier (DOI): doi.org/10.5281/zenodo.1328122
Procedia APA BibTeX Chicago EndNote Harvard JSON MLA RIS XML ISO 690 PDF Downloads 1867References:
[1] K. E. Imam, S. Benlarbi, N. Goel, and S. N. Rai, "Comparing casebased reasoning classifiers for predicting high-risk software components",J. Syst. Softw., vol. 55, no. 3, pp. 301-320, Jan. 2001.
[2] N. F. Schneidewind, "Investigation of logistic regression as a discriminant of software quality," in Proc. 7th Int. Softw. Metrics Symp., London, U.K., Apr. 2001, pp. 328-337.
[3] Taghi M. Khoshgoftaar, Naeem Seliya, "Analogy-based practical classification rules for software quality estimation," Empir. Softw. Eng. J., vol. 8, no. 4, pp. 325-350, Dec. 2003.
[4] L. Guo, B. Cukic, and H. Singh, "Predicting fault prone modules by the Dempster-Shafer belief networks," in Proc. 18th Int. Conf. Automated Softw. Eng., Montreal, QC, Canada, Oct. 2003, pp. 249-252.
[5] T. M. Khoshgoftaar and N. Seliya, "Comparative assessment of software quality classification techniques: An empirical case study," Empir. Softw. Eng. J., vol. 9, no. 3, pp. 229-257, Sep. 2004.
[6] S. Zhong, T. M. Khoshgoftaar, and N. Seliya, "Analyzing software measurement data with clustering techniques," IEEE Intell. Syst., vol. 19, no. 2, pp. 20-27, Mar./Apr. 2004.
[7] T. Kohonen, Self-Organizing Maps, 3nd. Ed., Berlim: Springer. 2001.
[8] S. Goldman and Y. Zhou, "Enhancing supervised learning with unlabeled data," in Proc. 17th Int. Conf. Mach. Learn., Jun. 2000, pp. 327-334.M. Young, The Techincal Writers Handbook. Mill Valley, CA: University Science, 1989.
[9] T. M. Khoshgoftaar and N. Seliya, "Comparative assessment of software quality classification techniques: An empirical case study," Empir. Softw. Eng. J., vol. 9, no. 3, pp. 229-257, Sep. 2004. R. W. Lucky, "Automatic equalization for digital communication," Bell Syst. Tech. J., vol. 44, no. 4, pp. 547-588, Apr. 1965.
[10] B. Fritzke. Growing Cell Structures - A Self-organizing Network for Unsupervised and Supervised Learning. Neural Networks, 7(9):1441- 1460, 1994.
[11] B. Fritzke, "A Growing Neural Gas Network Learns Topologies." Advances in Neural Information Processing Systems, pp. 625-632, 1995.
[12] K. A. J. Doherty, R. G. Adams, N. Davey. "Hierarchical Growing Neural Gas." Int. Conf. on Adaptive and Natural Computing Algorithms, 2005.
[13] Taghi M. Khoshgoftaar, Naeem Seliya, "Software quality classification modeling using the SPRINT decision tree algorithm", In Fourth IEEE international conference on tools with artificial intelligence (pp. 365- 374). 2002.
[14] N. E. Fenton and S. L. Pfleeger, Software Metrics: A Rigorous and Practical Approach, 2nd ed. Boston, MA: PWS-Kent, 1997.