Identifying Fault-Prone Software Modules Using Feed-Forward Networks: A Case Study

Part of Advances in Neural Information Processing Systems 6 (NIPS 1993)

Bibtex Metadata Paper


N. Karunanithi


Functional complexity of a software module can be measured in terms of static complexity metrics of the program text. Classify(cid:173) ing software modules, based on their static complexity measures, into different fault-prone categories is a difficult problem in soft(cid:173) ware engineering. This research investigates the applicability of neural network classifiers for identifying fault-prone software mod(cid:173) ules using a data set from a commercial software system. A pre(cid:173) liminary empirical comparison is performed between a minimum distance based Gaussian classifier, a perceptron classifier and a multilayer layer feed-forward network classifier constructed using a modified Cascade-Correlation algorithm. The modified version of the Cascade-Correlation algorithm constrains the growth of the network size by incorporating a cross-validation check during the output layer training phase. Our preliminary results suggest that a multilayer feed-forward network can be used as a tool for iden(cid:173) tifying fault-prone software modules early during the development cycle. Other issues such as representation of software metrics and selection of a proper training samples are also discussed.