Abstract
It is always better to have an idea about the future situation of a present work. Prediction of software faults in the early phase of software development life cycle can facilitate to the software personnel to achieve their desired software product. Early prediction is of great importance for optimizing the development cost of a software project. The present study proposes a methodology based on Bayesian belief network, developed to predict total number of faults and to reach a target value of total number of faults during early development phase of software lifecycle. The model has been carried out using the information from similar or earlier version software projects, domain expert’s opinion and the software metrics. Interval type-2 fuzzy logic has been applied for obtaining the conditional probability values in the node probability tables of the belief network. The output pattern corresponding to the total number of faults has been identified by artificial neural network using the input pattern from similar or earlier project data. The proposed Bayesian framework facilitates software personnel to gain the required information about software metrics at early phase for achieving targeted number of software faults. The proposed model has been applied on twenty six software project data. Results have been validated by different statistical comparison criterion. The performance of the proposed approach has been compared with some existing early fault prediction models.
Similar content being viewed by others
References
Pandey A K, Goyal N K (2010) Fault prediction model by fuzzy profile development of reliability relevant software metrics. Int J Comp Appl 11(6):34–41
Musa J D, Iannino A, Okumoto K (1987) Software reliability: measurement, prediction, application. McGraw-Hill, New York
Xie M (1991) Software reliability modeling. World Scientific Press, Singapore
Lyu M R (1996) Handbook of software reliability engineering. McGraw-Hill, New York
Pham H (2006) System software reliability. Springer, Berlin
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
Kapur P K, Khatri SK, Basirzadeh M (2008) Software reliability assessment using artificial neural network based flexible model incorporating faults of different complexity. Int J Reliability, Quality and Safety Eng 15 (2):113–127
Chatterjee S, Nigam S, Singh JB, Upadhyaya LN (2012) Software fault prediction using Nonlinear Autoregressive with eXogenous Inputs (NARX) network. Appl Intell 37:121–129
Chatterjee S, Shukla A (2016) Change point–based software reliability model under imperfect debugging with revised concept of fault dependency. In: Proceedings of the Institution of Mechanical Engineers Part O: Journal of Risk and Reliability, SAGE 230(6):579-597
Kumar S, Krishna B A, Satsangi P S (1994) Fuzzy systems and neural networks in software engineering project management. Appl Intell 4:31–52
Mazinan A H, Sheikhan M (2012) On the practice of artificial intelligence based predictive control scheme: a case study. Appl Intell 36:178–189
Sangüesa R, Burrell P (2000) Application of Bayesian network learning methods to waste water treatment plants. Appl Intell 13:19–40
Chatterjee S, Maji B (2016) A new fuzzy rule based algorithm for estimating software faults in early phase of development. Soft Comp 20(10):4023–4035
Yadav H B, Yadav D K (2015) A fuzzy logic based approach for phase-wise software defects prediction using software metrics. Inf Softw Tech 63:44–57
Yadav HB, Yadav DK (2014) Early software reliability analysis using reliability relevant software metrics. Int J Syst Assurance Eng Manage.
Kumar C, Yadav DK (2014) Software defects estimation using metrics of early phases of software development life cycle. Int J Syst Assurance Eng and Manag. https://doi.org/10.10.1007/s13198-014-0326-2
Fenton N E, Neil M (2008) On the effectiveness of early life cycle defect prediction with Bayesian Nets. Empirical Softw Eng 13(5):499–537
Fenton N E, Neil M (2007) Predicting software defects in varying development lifecycles using Bayesian nets. Inf Softw Tech 49(1):32–43
Fenton NE, Neil M, Marsh W, Hearty P, Radlinski L (2007) Project data incorporating qualitative factors for improved software defect prediction. In: Third International Workshop on Predictor Models in Software Engineering (PROMISE’07), IEEE Computer Society.
Li M, Smidts C S (2003) A ranking of software engineering measures based on expert opinion. IEEE Trans Softw Eng 29(9):811–824
Xie M, Hong G Y, Wohlin C (1999) Software reliability prediction incorporating information from a similar project. J Syst Softw 49(1):43–48
Smidts C, Stutzke M, Stoddard R W (1998) Software reliability modeling: an approach to early reliability prediction. IEEE Trans Reliab 47(3):268–278
Yap G E, Tan A H, Pang H H (2008) Explaining inferences in Bayesian networks. Appl Intell 29:263–278
Zadeh L A (1965) Fuzzy sets. Inf Control 8(3):338–353
Zadeh L A (1975) The concept of a linguistic variable and its application to approximate reasoning-I. Inf Sc 8:199–249
Castillo O (2012) Type-2 fuzzy logic in intelligent control applications. Springer-Verlag, Heidelberg
Mamdani E H (1977) Application of fuzzy logic to approximate reasoning using linguistic synthesis. IEEE Trans Comput 26:1182–1191
McCabe T J (1975) A Complexity Measure. IEEE Trans Softw Eng SE 2(4):308–320
Mandal SN, Choudhury JP, Chaudhuri SRB (2012) In search of suitable fuzzy membership function in prediction of time series data. Int J Comp Sc 9(3):293–302
Liu L, Yang A, Tao Q, Zhu L, Wu D (2014) Study of the Software Size Estimation Model Based on UML. In: IEEE International Conference on System Science and Engineering. https://doi.org/10.10.1109/ICSSE.2014.6887921
Zivkovic A, Rozman I, Hericko M (2005) Automated software size estimation based on function points using UML models. Inf and Soft Tech 47:881–890
Pratiwi D (2013) Implementation of function point analysis in measuring the volume estimation of software system in object oriented and structural model of academic system. Int J Comp Appl 70(10):0975–8887
Wilkie F G, McChesney I R, Morrow P, Tuxworth C, Lester N G (2011) The value of software sizing. Inf and Soft Tech 53:1236–1249
Acknowledgments
The authors are very much thankful to IIT (ISM) Dhanbad, for providing necessary help.
Author information
Authors and Affiliations
Corresponding author
Ethics declarations
Conflict of interests
The authors declare that they have no conflict of interest.
Rights and permissions
About this article
Cite this article
Chatterjee, S., Maji, B. A bayesian belief network based model for predicting software faults in early phase of software development process. Appl Intell 48, 2214–2228 (2018). https://doi.org/10.1007/s10489-017-1078-x
Published:
Issue Date:
DOI: https://doi.org/10.1007/s10489-017-1078-x