A bayesian belief network based model for predicting software faults in early phase of software development process

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.

[1]  Ming Li,et al.  A Ranking of Software Engineering Measures Based on Expert Opinion , 2003, IEEE Trans. Software Eng..

[2]  Claes Wohlin,et al.  Software reliability prediction incorporating information from a similar project , 1999, J. Syst. Softw..

[3]  Lotfi A. Zadeh,et al.  The Concepts of a Linguistic Variable and its Application to Approximate Reasoning , 1975 .

[4]  ChatterjeeSubhashis,et al.  A new fuzzy rule based algorithm for estimating software faults in early phase of development , 2016 .

[5]  Min Xie,et al.  Software Reliability Modelling , 1991, Series on Quality, Reliability and Engineering Statistics.

[6]  Lotfi A. Zadeh,et al.  The concept of a linguistic variable and its application to approximate reasoning-III , 1975, Inf. Sci..

[7]  Mansour Sheikhan,et al.  On the practice of artificial intelligence based predictive control scheme: a case study , 2010, Applied Intelligence.

[8]  William Marsh,et al.  Predicting software defects in varying development lifecycles using Bayesian nets , 2007, Inf. Softw. Technol..

[9]  Phillip Burrell,et al.  Application of Bayesian Network Learning Methods to Waste Water Treatment Plants , 2000, Applied Intelligence.

[10]  Chandan Kumar,et al.  Software defects estimation using metrics of early phases of software development life cycle , 2017, Int. J. Syst. Assur. Eng. Manag..

[11]  Anas N. Al-Rabadi,et al.  A comparison of modified reconstructability analysis and Ashenhurst‐Curtis decomposition of Boolean functions , 2004 .

[12]  Marjan Hericko,et al.  Automated software size estimation based on function points using UML models , 2005, Inf. Softw. Technol..

[13]  Subhashis Chatterjee,et al.  A new fuzzy rule based algorithm for estimating software faults in early phase of development , 2016, Soft Comput..

[14]  S. Chatterjee,et al.  Change point–based software reliability model under imperfect debugging with revised concept of fault dependency , 2016 .

[15]  John D. Musa,et al.  Software reliability - measurement, prediction, application , 1987, McGraw-Hill series in software engineering and technology.

[16]  Ah-Hwee Tan,et al.  Explaining inferences in Bayesian networks , 2008, Applied Intelligence.

[17]  Dian Pratiwi Implementation of Function Point Analysis in Measuring The Volume Estimation of Software System in Object Oriented and Structural Model of Academic System , 2013, ArXiv.

[18]  Satyendra Nath Mandal,et al.  In Search of Suitable Fuzzy Membership Function in Prediction of Time Series Data , 2012 .

[19]  Michael R. Lyu,et al.  Handbook of software reliability engineering , 1996 .

[20]  Neeraj Kumar Goyal,et al.  Fault Prediction Model by Fuzzy Profile Development of Reliability Relevant Software Metrics , 2010 .

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

[22]  Satish Kumar,et al.  Fuzzy systems and neural networks in software engineering project management , 1994, Applied Intelligence.

[23]  Carol-Sophie Smidts,et al.  Software reliability modeling: an approach to early reliability prediction , 1998 .

[24]  Simon P. Wilson,et al.  Software Reliability Modeling , 1994 .

[25]  J. B. Singh,et al.  Software fault prediction using Nonlinear Autoregressive with eXogenous Inputs (NARX) network , 2011, Applied Intelligence.

[26]  Oscar Castillo,et al.  Type-2 Fuzzy Logic in Intelligent Control Applications , 2011, Studies in Fuzziness and Soft Computing.

[27]  Dilip Kumar Yadav,et al.  A fuzzy logic based approach for phase-wise software defects prediction using software metrics , 2015, Inf. Softw. Technol..

[28]  E. H. Mamdani,et al.  Application of Fuzzy Logic to Approximate Reasoning Using Linguistic Synthesis , 1976, IEEE Transactions on Computers.

[29]  N. Fenton,et al.  Project Data Incorporating Qualitative Factors for Improved Software Defect Prediction , 2007, Third International Workshop on Predictor Models in Software Engineering (PROMISE'07: ICSE Workshops 2007).

[30]  Dilip Kumar Yadav,et al.  Early software reliability analysis using reliability relevant software metrics , 2017, Int. J. Syst. Assur. Eng. Manag..

[31]  Sunil Kumar Khatri,et al.  SOFTWARE RELIABILITY ASSESSMENT USING ARTIFICIAL NEURAL NETWORK BASED FLEXIBLE MODEL INCORPORATING FAULTS OF DIFFERENT COMPLEXITY , 2008 .

[32]  Hoang Pham,et al.  System Software Reliability , 1999 .

[33]  F. George Wilkie,et al.  The value of software sizing , 2011, Inf. Softw. Technol..

[34]  Robert LIN,et al.  NOTE ON FUZZY SETS , 2014 .

[35]  William Marsh,et al.  On the effectiveness of early life cycle defect prediction with Bayesian Nets , 2008, Empirical Software Engineering.

[36]  Li Liu,et al.  Study of the software size estimation model based on UML , 2014, 2014 IEEE International Conference on System Science and Engineering (ICSSE).