A Growing Natural Gas Approach for Evaluating Quality of Software Modules

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.





References:
[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.