Abstract
This paper explores a new approach for predicting software faults by means of NARX neural network. Also, a careful analysis has been carried out to determine the applicability of NARX network in software reliability. The validation of the proposed approach has been performed using two real software failure data sets. Comparison has been made with some existing parametric software reliability models as well as some neural network (Elman net and TDNN) based SRGM. The results computed shows that the proposed approach outperformed the other existing parametric and neural network based software reliability models with a reasonably good predictive accuracy.
Similar content being viewed by others
Abbreviations
- NHPP:
-
Non Homogeneous Poisson Process
- SRGM:
-
Software Reliability Growth Model
- ANN:
-
Artificial Neural Network
- NARX:
-
Nonlinear Autoregressive with eXogenous Inputs
- TDNN:
-
Time Delay Neural Network
- MAE:
-
Mean Absolute Error
- RMSE:
-
Root Mean Square Error
- SP:
-
Series Parallel mode
- P:
-
Parallel Mode
References
Aljahdali SH, Sheta A, Rine D (2001) Prediction of software reliability: a comparison between regression and neural network non-parametric models. In: Proceedings of ACS/IEEE international conference on computer systems and applications, pp 470–473
An S-Y, Kang J-G, Choi W-S, Oh S-Y (2010) A neural network based retrainable framework for robust object recognition with application to mobile robotics. Appl Intell. doi:10.1007/s10489-010-0212-9
Barai SV, Pandey PC (1997) Time delay neural networks in damage detection of railway bridges. Adv Eng Softw 28(1):1–10
Cai KY, Cai L, Wang WD, Yu ZY, Zhang D (2001) On the neural network approach in software reliability modeling. J Syst Softw 58(1):47–62
Canuto AMP, Santos AM, Rogerio Vargas R (2011) Ensembles of ARTMAP-based neural networks: an experimental study. Appl Intell 35(1):1–17
Challagulla VUB, Bastani FB, I-Ling Yen P (2005) Empirical assessment of machine learning based software defect prediction techniques. In: 10th IEEE international workshop on object-oriented real-time dependable systems, WORDS, pp 263–270
Chatterjee S, Misra RB, Alam SS (1997) Prediction of software reliability using an auto regressive process. Int J Syst Sci 28(2):211–216
Chatterjee S, Misra RB, Alam SS (1997) Joint effect of test effort and learning factor on software reliability and optimal release policy. Int J Syst Sci 28(4):391–396
Chen S, Billings SA (1989) Representation of non-linear systems: the NARMAX model. Int J Control 49(3):1013–1032
Dzielinski A (2002) Neural network-based NARX models in non-linear adaptive control. Int J Appl Math Comput Sci 12(2):235–240
Ho SL, Xie M, Goh TN (2003) A study of the connectionist models for software reliability prediction. Comput Math Appl 46(7):1037–1045
Hu QP, Xie M, Ng SH, Levitin G (2006) Robust recurrent neural network modeling for software fault detection and correction prediction. Reliab Eng Syst Saf 92(3):332–340
Junior JMP, Barreto GA (2008) Long-term time series prediction with the NARX network: an empirical evaluation. Neurocomputing 71:3335–3343
Karunanithi N, Whitley D, Malaiya YK (1992) Prediction of software reliability using connectionist models. IEEE Trans Softw Eng 18:563–574
Khoshgoftaar TM, Szabo RM (1994) Predicting software quality, during testing, using neural network models: a comparative study. Int J Reliab Qual Saf Eng 1(3):303–319
Khoshgoftaar TM, Szabo RM (1996) Using neural network to predict software faults during testing. IEEE Trans Reliab 45(3):456–462
Kim K-j, Ahn H (2011) Simultaneous optimization of artificial neural networks for financial forecasting. Appl Intell. doi:10.1007/s10489-011-0303-2
Lee JH, Lee SJ (1999) One-step-ahead prediction of flank wear using cutting force. Int J Mach Tools Manuf 39:1747–1760
Lin T-N, Giles CL, Horne BG, Kung SY (1997) A delay damage model selection algorithm for NARX neural networks. IEEE Trans Signal Process 45:2719–2730
Lyu MR (1996) Handbook of software reliability engineering. McGraw-Hill, New York
Mazinan AH, Sheikhan M (2010) On the practice of artificial intelligence based predictive control scheme: a case study. Appl Intell. doi:10.1007/s10489-010-0253-0
Musa JD, Iannino A, Okumoto K (1987) Software reliability: measurement, prediction, application. McGraw-Hill, New York
Narendra KS, Parthasarathy K (1990) Identification and control of dynamical systems using neural networks. IEEE Trans Neural Netw 1(1):4–27
Norgaard M, Ravn O, Poulsen NK, Hansen LK (2000) Neural networks for modelling and control of dynamic systems. Springer, Berlin
Parlos AG, Rais OT, Atiya AF (2000) Multi-step-ahead prediction using dynamic recurrent neural networks. Neural Netw 13(7):765–786
Pham H (2006) System software reliability. Springer, Berlin
Pham DT, Karaboga D (1999) Training Elman and Jordam networks for system identification using genetic algorithm. Artif Intell Eng 13:107–117
Siegelmann Hava T, Horne BG, Giles CL (1997) Computational capabilities of recurrent NARX neural networks. IEEE Trans Syst Man Cybern 27(2):208–215
Singpurwalla ND, Soyer R (1985) Assessing (software) reliability growth using a random co-efficient autoregressive process and its ramifications. IEEE Trans Softw Eng 11:1456–1464
Sjöberg J, Zhang Q, Ljung L, Benveniste A, Deylon B, Glorennec P, Hjalmarsson H, Juditsky A (1995) Nonlinear black-box modeling in system identification: a unified overview. Automatica 31(12):1691–1724
Sorjamaa A, Reyhani JHN, Ji Y, Lendasse A (2007) Methodology for long-term prediction of time series. Neurocomputing 70:2861–2869
Steinherz H, Pedreira C, Castro R (2001) Neural networks for short term load forecasting: a review and evaluation. IEEE Trans Power Syst 16(1):44–55
Su YS, Huang CY (2007) Neural-network-based approaches for software reliability estimation using dynamic weighted combinational models. J Syst Softw 80(4):606–615
Su YS, Huang CY, Chen YS, Chen JX (2005) An artificial neural-network-based approach to software reliability assessment. In: In Proceedings of IEEE region 10 conference, Melbourne, Australia
Tian L, Noore A (2005) On-line prediction of software reliability using an evolutionary connectionist model. J Syst Softw 77(2):173–180
Xie M (1991) Software reliability modeling. World Scientific, Singapore
Author information
Authors and Affiliations
Corresponding author
Rights and permissions
About this article
Cite this article
Chatterjee, S., Nigam, S., Singh, J.B. et al. Software fault prediction using Nonlinear Autoregressive with eXogenous Inputs (NARX) network. Appl Intell 37, 121–129 (2012). https://doi.org/10.1007/s10489-011-0316-x
Published:
Issue Date:
DOI: https://doi.org/10.1007/s10489-011-0316-x