This paper propose a learning algorithm of supervised back-propagation neural networks for dynamic weighted combination of software reliability model. The proposed model is an assimilation of 3 well-known non-homogeneous poisson process (NHPP)-based software reliability growth models with imperfect debugging. The novel approach of proposed supervised back propagation-based neural network 2-stage architecture has a great impact on the network by combining the imperfect debugging models based on the nature of fault introduction rate during testing and debugging. Function approximation metrics are used for comparing the proposed model with individual models. Three data sets are trained using supervised back-propagation neural networks to compare the performance and validity evaluation of proposed and existing NHPP models and dynamic weighted combinational model. Reliability analysis among important NHPP models incorporating imperfect debugging is illustrated through numerical and graphical explanation of several metrics using supervised back-propagation neural networks. KEYWORDS imperfect debugging, fault introduction rate, neural networks, non-homogenous poisson process, software reliability growth model, supervised back-propagation algorithm
INTRODUCTIONSoftware plays a vital role in every aspect of technological world with its ever-increasing dependency on technology, and its size and complexity have dramatically increased many folds [1]. Developers are facing a lot of problems to develop a trustworthy and reliable software for the user. A reliable software must meet or exceed the specified usage period, under specified operating conditions in a manner that satisfies customer's expectations.Software reliability is quantitative measurement of quality [2][3][4].Software cannot be developed error-free because of the uncertainties and amount of manual effort involved in the software development process. Specifically, erroneous software incurs high work costs. On the other hand, debugging and testing reduces the error content[5] but increases the development cost [6]. Software failure occurs because of hidden bugs in the software instead of immediate fixes for detected errors during development, but new errors may be introduced during debugging. Some reliability models have also been developed to address fault detection; correction [7, 8]; testing coverage [9]; and imperfect debugging processes [10, 11].Many factors such as software development methodology and complexity of the software are strongly dependant on making assumptions that influences the behaviour of software reliability growth. The software reliability measurement is based on type of data set [1]; therefore, traditional statistical theory plays a vital role in software reliability modelling. There are many constraints on existing statistical models that are based on prior assumptions in software testing. Neural network (NN) approaches can be applied to estimate and predict the software reliability. Neural network methods recommend far better models than ...