Abstract
Software reliability is an indispensable part of software quality. 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 machine learning 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 backpropagation neural network (FFBPNN), general regression neural network (GRNN), support vector machines (SVM), multilayer perceptron (MLP), bagging, cascading forward backpropagation neural network (CFBPNN), instance-based learning (IBK), linear regression (Lin Reg), M5P, reduced error pruning tree (reptree), and 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 and it predicts the reliability more accurately and precisely as compared to all the above-mentioned techniques. In this study, we also made comparative analysis between cumulative failure data and inter failure time data and found that cumulative failure data give better and more promising results as compared to inter failure time data.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Similar content being viewed by others
References
Standards Coordinating Committee of the IEEE Computer Society, IEEE Standard Glossary of Software Engineering Terminology, IEEE-STD-610.12-1990, IEEE, New York (1991)
Quyoum, A., Din Dar, UdM., Quadr, S.M.K.: Improving software reliability using software engineering approach—a review. Int. J. Comput. Appl. 10(5), 0975– 8887 (2010)
Aggarwal, K.K., Singh, Y., Kaur, A., Malhotra R.: Investigating the effect of coupling metrics on fault proneness in object-oriented systems. Softw. Qual. Prof. 8(4), 4–16 (2006)
Goel, B., Singh, Y.: An empirical analysis of metrics. Softw. Qual. Prof. 11(3), 35–45 (2009)
Singh, Y., Kumar, P.: A software reliability growth model for three-tier client–server system. Int. J. Comp. Appl. 1(13), 9–16, doi:10.5120/289-451 (2010a)
Singh, Y., Kumar, P.: Determination of software release instant of three-tier client server software system. Int. J. Comp. Appl. 1(3), 51–62 (2010b)
Singh, Y., Kumar, P.: Application of feed-forward networks for software reliability prediction. ACM SIGSOFT, Softw. Eng. Notes 35(5), 1–6 (2010c)
Xingguo, L., Yanhua, S.: An early prediction method of software reliability based on support vector machine. In: Proceedings international conference on wireless communications, networking and mobile computing (WiCom’07), pp. 6075–6078 (2007)
Malhotra, R., Kaur, A., Singh, Y.: Empirical validation of object-oriented metrics for predicting fault proneness at different severity levels using support vector machines. Int. J. Syst. Assur. Eng. Manag. 1(3), 269–281. doi:10.1007/s13198-011-0048-7 (2011)
Hua Jung, L.: Predicting software reliability with support vector machines. In: Proceedings of 2nd International Conference on Computer Research and Development (ICCRD’10), Kuala Lumpur, Malaysia, pp. 765–769 (2010)
Karunanithi, N., Whitley, D., Malaiya, Y.: Prediction of software reliability using connectionist models. IEEE Trans. Softw. Eng. 18(7), 563–574 (1992)
Singh, Y., Kumar, P.: Prediction of software reliability using feed forward neural networks. In: Proceedings of Computational Intelligence and Software Engineering (CiSE’10), Wuhan, China, pp. 1–5. doi:10.1109/CISE.2010.5677251 (2010d)
Singh, Y., Kumar, P.: Application of feed-forward networks for software reliability prediction. ACM SIGSOFT, Softw. Eng. Notes 35(5), 1–6 (2010c)
Eduardo, OC., Aurora, TR., Silvia, RV.: A genetic programming approach for software reliability modeling. IEEE Trans. Reliab. 59(1), 222–230 (2010)
Cai, Y.K., Wen, Y.C., Zhang, L.M.: A critical review on software reliability modeling. Reliab. Eng. Syst. Saf. 32(3), 357–371 (1991)
Specht, F.D.: A general regression neural network. IEEE Trans. Neural Netw. 2(6), 568–576 (1991)
Ho, S.L., Xie, M., Goh, T.N.: A study of connectionist models for software reliability prediction. Comput. Math. Appl. 46(7), 1037–1045 (2003)
Su, S.Y., Huang, Y.C.: Neural network-based approaches for software reliability estimation using dynamic weighted combinational models. J. Syst. Softw. 80(4), 606–615 (2006)
Madsen, H., Thyregod, P., Burtschy, B., Albeanu, G., Popentiu, F.: On using soft computing techniques in software reliability engineering. Int. J. Reliab. Qual. Saf. Eng. 13(1), 61–72 (2006)
Pai, F.P., Hong, C.W.: Software reliability forecasting by support vector machines with simulated vector machines with simulated annealing algorithms. J. Syst. Softw. 79, 747–755 (2006)
Hu, Q.P., Dai, Y.S., Xie, M., Ng, S.H.: Early software reliability prediction with extended ANN model. In: Proceedings of the 30th Annual International Computer Software and Applications Conference (COMPSAC ‘06), vol. 2, pp. 234–239, Sept 2006
Wood, A.: Predicting software reliability. IEEE Tandem Comput. 29(11), 69–77 (1996)
Zhang, X., Jeske, D.R., Pham, H.: Calibrating software reliability models when the test environment does not match the user environment. Appl. Stoch. Models Bus. Ind. 18, 87–99 (2002)
Ohba, M.: Software reliability analysis models. IBM J. Res. Dev. 21(4) (1984a)
Kohavi, R.: The power of decision tables. In: The Eighth European Conference on Machine Learning (ECML-95), Heraklion, Greece, pp. 174–189 (1995)
Aljahdali, S.H., Buragga, K.A.: Employing four ANNs paradigms for software reliability prediction: an analytical study. ICGST-AIML J. 8(2), 1687–4846 (2008)
Kumar, P., Singh, Y.: An empirical study of software reliability prediction using machine learning techniques. Int. J. Syst. Assur. Eng. Manag. 3(3), 194–208. doi:10.1007/s13198-012-0123-8 (2012)
van Koten, C., Gray, A.R.: An application of Bayesian network for predicting object-oriented software maintainability. In: The Information Science Discussion Paper, Series Number 2005/02, pp. 1172–6024 (2005)
Author information
Authors and Affiliations
Corresponding author
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2016 Springer Science+Business Media Singapore
About this paper
Cite this paper
Arunima Jaiswal, Ruchika Malhotra (2016). Software Reliability Prediction Using Machine Learning Techniques. In: Pant, M., Deep, K., Bansal, J., Nagar, A., Das, K. (eds) Proceedings of Fifth International Conference on Soft Computing for Problem Solving. Advances in Intelligent Systems and Computing, vol 436. Springer, Singapore. https://doi.org/10.1007/978-981-10-0448-3_12
Download citation
DOI: https://doi.org/10.1007/978-981-10-0448-3_12
Published:
Publisher Name: Springer, Singapore
Print ISBN: 978-981-10-0447-6
Online ISBN: 978-981-10-0448-3
eBook Packages: EngineeringEngineering (R0)