Software Reliability Analysis by Considering Fault Dependency and Debugging Time Lag

Over the past 30 years, many software reliability growth models (SRGM) have been proposed. Often, it is assumed that detected faults are immediately corrected when mathematical models are developed. This assumption may not be realistic in practice because the time to remove a detected fault depends on the complexity of the fault, the skill and experience of personnel, the size of debugging team, the technique(s) being used, and so on. During software testing, practical experiences show that mutually independent faults can be directly detected and removed, but mutually dependent faults can be removed iff the leading faults have been removed. That is, dependent faults may not be immediately removed, and the fault removal process lags behind the fault detection process. In this paper, we will first give a review of fault detection & correction processes in software reliability modeling. We will then illustrate the fact that detected faults cannot be immediately corrected with several examples. We also discuss the software fault dependency in detail, and study how to incorporate both fault dependency and debugging time lag into software reliability modeling. The proposed models are fairly general models that cover a variety of known SRGM under different conditions. Numerical examples are presented, and the results show that the proposed framework to incorporate both fault dependency and debugging time lag for SRGM has a better prediction capability. In addition, an optimal software release policy for the proposed models, based on cost-reliability criterion, is proposed. The main purpose is to minimize the cost of software development when a desired reliability objective is given

[1]  Min Xie,et al.  A Study of the Effect of Imperfect Debugging on Software Development Cost , 2003, IEEE Trans. Software Eng..

[2]  M. Xie,et al.  Software Reliability Models - Past, Present and Future , 2000 .

[3]  Min Xie On the determination of optimum software release time , 1991, Proceedings. 1991 International Symposium on Software Reliability Engineering.

[4]  John D. Musa,et al.  Software reliability engineering : more reliable software, faster development and testing , 1999 .

[5]  Michael R. Lyu,et al.  Optimal testing resource allocation, and sensitivity analysis in software development , 2005, IEEE Transactions on Reliability.

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

[7]  Elaine J. Weyuker,et al.  An Applicable Family of Data Flow Testing Criteria , 1988, IEEE Trans. Software Eng..

[8]  Chin-Yu Huang,et al.  Analysis of incorporating logistic testing-effort function into software reliability modeling , 2002, IEEE Trans. Reliab..

[9]  William E. Howden,et al.  Reliability of the Path Analysis Testing Strategy , 1976, IEEE Transactions on Software Engineering.

[10]  W.M. Evanco Prediction Models for Software Fault Correction Effort , 2001, CSMR.

[11]  P. K. Kapur,et al.  Software reliability growth model with error dependency , 1995 .

[12]  Chin-Yu Huang,et al.  An integration of fault detection and correction processes in software reliability analysis , 2006, J. Syst. Softw..

[13]  Chin-Yu Huang,et al.  Effect of fault dependency and debugging time lag on software error models , 2004, 2004 IEEE Region 10 Conference TENCON 2004..

[14]  Barry W. Boehm,et al.  Software Engineering Economics , 1993, IEEE Transactions on Software Engineering.

[15]  Shigeru Yamada,et al.  Imperfect debugging models with fault introduction rate for software reliability assessment , 1992 .

[16]  Kune-Zang Yang An infinite server queueing model for software readiness assessment and related performance measures , 1996 .

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

[18]  Michael R. Lyu,et al.  Applying reliability models more effectively (software) , 1992, IEEE Software.

[19]  Ken Kennedy,et al.  Conversion of control dependence to data dependence , 1983, POPL '83.

[20]  Ming Zhao,et al.  The Schneidewind software reliability model revisited , 1992, [1992] Proceedings Third International Symposium on Software Reliability Engineering.

[21]  Michael R. Lyu,et al.  A Unified Scheme of Some Nonhomogenous Poisson Process Models for Software Reliability Estimation , 2003, IEEE Trans. Software Eng..

[22]  Hoang Pham Software Reliability , 1999 .

[23]  Amrit L. Goel,et al.  Software Reliability and Readiness Assessment Based on the Non-Homogeneous Poisson Process , 1997, Adv. Comput..

[24]  Swapna S. Gokhale,et al.  Analysis of Software Fault Removal Policies Using a Non-Homogeneous Continuous Time Markov Chain , 2004, Software Quality Journal.

[25]  Yuan-Shun Dai,et al.  Modeling and analysis of correlated software failures of multiple types , 2005, IEEE Trans. Reliab..

[26]  Xiaolin Teng,et al.  Considering fault removal efficiency in software reliability assessment , 2003, IEEE Trans. Syst. Man Cybern. Part A.

[27]  Michael R. Lyu,et al.  Optimal release time for software systems considering cost, testing-effort, and test efficiency , 2005, IEEE Transactions on Reliability.

[28]  Stamatis Vassiliadis,et al.  Software Reliability Models for Computer Implementations — An Empirical Study , 1996 .

[29]  Tadashi Dohi,et al.  Optimal software release policies with debugging time lag , 1997 .

[30]  A. Wood,et al.  Predicting Software Reliability , 1996, Computer.

[31]  Michael R. Lyu,et al.  Software reliability growth models incorporating fault dependency with various debugging time lags , 2004, Proceedings of the 28th Annual International Computer Software and Applications Conference, 2004. COMPSAC 2004..

[32]  Norman F. Schneidewind,et al.  An integrated failure detection and fault correction model , 2002, International Conference on Software Maintenance, 2002. Proceedings..

[33]  Kishor S. Trivedi,et al.  Failure correlation in software reliability models , 1999, Proceedings 10th International Symposium on Software Reliability Engineering (Cat. No.PR00443).

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

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

[36]  Michael R. Lyu,et al.  Framework for modeling software reliability, using various testing-efforts and fault-detection rates , 2001, IEEE Trans. Reliab..

[37]  Mitsuru Ohba,et al.  Does imperfect debugging affect software reliability growth? , 1989, ICSE '89.

[38]  Kishor S. Trivedi,et al.  Modeling Correlation in Software Recovery Blocks , 1993, IEEE Trans. Software Eng..

[39]  Amrit L. Goel,et al.  Optimum release time for software systems based on reliability and cost criteria , 1984, J. Syst. Softw..

[40]  Steven S. Muchnick,et al.  Advanced Compiler Design and Implementation , 1997 .