Software reliability prediction using machine learning techniques

Software Reliability is indispensable part of software quality and is one amongst the most inevitable aspect for evaluating quality of a software product. Software industry endures various challenges in developing highly reliable software. Application of machine learning (ML) techniques for software reliability prediction has shown meticulous and remarkable results. In this paper, we propose the use of ML techniques for software reliability prediction and evaluate them based on selected performance criteria. We have applied ML techniques including adaptive neuro fuzzy inference system (ANFIS), feed forward back propagation neural network, general regression neural network, support vector machines, multilayer perceptron, Bagging, cascading forward back propagation neural network, instance based learning, linear regression, M5P, reduced error pruning tree, M5Rules to predict the software reliability on various datasets being chosen from industrial software. Based on the experiments conducted, it was observed that ANFIS yields better results in all the cases and thus can be used for predicting software reliability since it predicts the reliability more accurately and precisely as compared to all other above mentioned techniques. In this study, we also made comparative analysis between cumulative failure data and inter failure time’s data and found that cumulative failure data gives better and more promising results as compared to inter failure time’s data.

[1]  Yogesh Singh,et al.  Determination of Software Release Instant of Three-Tier Client Server Software System , 2010 .

[2]  Chin-Yu Huang,et al.  Neural-network-based approaches for software reliability estimation using dynamic weighted combinational models , 2007, J. Syst. Softw..

[3]  Liang Tian,et al.  Evolutionary neural network modeling for software cumulative failure time prediction , 2005, Reliab. Eng. Syst. Saf..

[4]  Jung-Hua Lo,et al.  Predicting Software Reliability with Support Vector Machines , 2010, 2010 Second International Conference on Computer Research and Development.

[5]  Yogesh Singh,et al.  Application of feed-forward neural networks for software reliability prediction , 2010, SOEN.

[6]  Yuan-Shun Dai,et al.  Early Software Reliability Prediction with Extended ANN Model , 2006, 30th Annual International Computer Software and Applications Conference (COMPSAC'06).

[7]  Hoang Pham,et al.  Calibrating software reliability models when the test environment does not match the user environment , 2002 .

[8]  Xiaofeng Li,et al.  An Early Prediction Method of Software Reliability Based on Support Vector Machine , 2007, 2007 International Conference on Wireless Communications, Networking and Mobile Computing.

[9]  Mitsuru Ohba,et al.  Software Reliability Analysis Models , 1984, IBM J. Res. Dev..

[10]  Michael P. Wiper,et al.  Software Reliability Modeling with Software Metrics Data via Gaussian Processes , 2013, IEEE Transactions on Software Engineering.

[11]  Donald F. Specht,et al.  A general regression neural network , 1991, IEEE Trans. Neural Networks.

[12]  Aurora Trinidad Ramirez Pozo,et al.  A Genetic Programming Approach for Software Reliability Modeling , 2010, IEEE Transactions on Reliability.

[13]  Ruchika Malhotra,et al.  Reliability modeling using Particle Swarm Optimization , 2013, International Journal of System Assurance Engineering and Management.

[14]  C. van Koten,et al.  An application of Bayesian network for predicting object-oriented software maintainability , 2006, Inf. Softw. Technol..

[15]  Jun Zheng,et al.  Predicting software reliability with neural network ensembles , 2009, Expert Syst. Appl..

[16]  Yogesh Singh,et al.  An Empirical Analysis of Metrics , 2009 .

[17]  S. M. K. Quadri,et al.  Improving Software Reliability using Software Engineering Approach- A Review , 2010 .

[18]  Yuming Zhou,et al.  On the ability of complexity metrics to predict fault-prone classes in object-oriented systems , 2010, J. Syst. Softw..

[19]  Kai-Yuan Cai,et al.  A critical review on software reliability modeling , 1991 .

[20]  Ping-Feng Pai,et al.  Software reliability forecasting by support vector machines with simulated annealing algorithms , 2006, J. Syst. Softw..

[21]  Tingting Zhang,et al.  Software Reliability Forecasting: Singular Spectrum Analysis and ARIMA Hybrid Model , 2015, 2015 International Symposium on Theoretical Aspects of Software Engineering.

[22]  Pradeep Kumar,et al.  A SOFTWARE RELIABILITY GROWTH MODEL FOR THREE-TIER CLIENT SERVER SYSTEM , 2010 .

[23]  L. Darrell Whitley,et al.  Prediction of Software Reliability Using Connectionist Models , 1992, IEEE Trans. Software Eng..

[24]  Yogesh Singh,et al.  An empirical study of software reliability prediction using machine learning techniques , 2012, Int. J. Syst. Assur. Eng. Manag..

[25]  Arvinder Kaur,et al.  Empirical validation of object-oriented metrics for predicting fault proneness at different severity levels using support vector machines , 2010, Int. J. Syst. Assur. Eng. Manag..

[26]  Henrik Madsen,et al.  ON USING SOFT COMPUTING TECHNIQUES IN SOFTWARE RELIABILITY ENGINEERING , 2006 .

[27]  Pradeep Kumar,et al.  Prediction of Software Reliability Using Feed Forward Neural Networks , 2010, 2010 International Conference on Computational Intelligence and Software Engineering.

[28]  Zhen Wang,et al.  Software reliability prediction via relevance vector regression , 2016, Neurocomputing.

[29]  Jung-Hua Lo,et al.  A study of applying ARIMA and SVM model to software reliability prediction , 2011, 2011 International Conference on Uncertainty Reasoning and Knowledge Engineering.

[30]  Xiang Li,et al.  A generic data-driven software reliability model with model mining technique , 2010, Reliab. Eng. Syst. Saf..

[31]  Ron Kohavi,et al.  The Power of Decision Tables , 1995, ECML.

[32]  Thong Ngee Goh,et al.  A study of the connectionist models for software reliability prediction , 2003 .

[33]  Jongmoon Baik,et al.  On the Long-Term Predictive Capability of Data-Driven Software Reliability Model: An Empirical Evaluation , 2014, 2014 IEEE 25th International Symposium on Software Reliability Engineering.

[34]  Qiuhong Zheng Software Reliability Prediction Model Based on Relevance Vector Machine , 2010, 2010 Sixth International Conference on Semantics, Knowledge and Grids.