1 Software Reliability Growth Models Incorporating Fault Dependency with Various Debugging Time Lags Chin-Yu Huang, Chu-Ti Lin, Sy-Yen Kuo, Michael R.

Slides:



Advertisements
Similar presentations
Řešení vybraných modelů s obnovou Radim Briš VŠB - Technical University of Ostrava (TUO), Ostrava, The Czech Republic
Advertisements

LaQuSo is an activity of Technische Universiteit Eindhoven Confidence intervals in software reliability testing Confidence intervals in software reliability.
CmpE 104 SOFTWARE STATISTICAL TOOLS & METHODS MEASURING & ESTIMATING SOFTWARE SIZE AND RESOURCE & SCHEDULE ESTIMATING.
1 Exponential Distribution and Reliability Growth Models Kan Ch 8 Steve Chenoweth, RHIT Right: Wait – I always thought “exponential growth” was like this!
Software Reliability Engineering
A Unified Scheme of Some Nonhomogenous Poisson Process Models for Software Reliability Estimation C. Y. Huang, M. R. Lyu and S. Y. Kuo IEEE Transactions.
Reliable System Design 2011 by: Amir M. Rahmani
CSE 322: Software Reliability Engineering Topics covered: Software Reliability Models.
CSE 322: Software Reliability Engineering Topics covered: Architecture-based reliability analysis.
1 Validation and Verification of Simulation Models.
CHAPTER 6 Statistical Analysis of Experimental Data
Testing Metrics Software Reliability
Inferences About Process Quality
Differential Equations 7. The Logistic Equation 7.5.
Control Charts for Attributes
INTRODUCTORY STATISTICS FOR CRIMINAL JUSTICE
Software Testing and QA Theory and Practice (Chapter 15: Software Reliability) © Naik & Tripathy 1 Software Testing and Quality Assurance Theory and Practice.
Overview Software Quality Assurance Reliability and Availability
ECE355 Fall 2004Software Reliability1 ECE-355 Tutorial Jie Lian.
Chapter 22. Software Reliability Engineering (SRE)
Software faults & reliability Presented by: Presented by: Pooja Jain Pooja Jain.
Software Reliability Growth. Three Questions Frequently Asked Just Prior to Release 1.Is this version of software ready for release (however “ready” is.
Pop Quiz How does fix response time and fix quality impact Customer Satisfaction? What is a Risk Exposure calculation? What’s a Scatter Diagram and why.
Software Reliability Model Deterministic Models Probabilistic Models Halstead’s software metric McCabe’s cyclomatic complexity metrix Error seeding Failure.
AM Recitation 2/10/11.
ECE 355: Software Engineering
AN ITERATIVE METHOD FOR MODEL PARAMETER IDENTIFICATION 4. DIFFERENTIAL EQUATION MODELS E.Dimitrova, Chr. Boyadjiev E.Dimitrova, Chr. Boyadjiev BULGARIAN.
Handouts Software Testing and Quality Assurance Theory and Practice Chapter 15 Software Reliability
CMPE516 Aziz Asil 17/05/2006 Software Reliability Modelling and Cost Estimation Incorporating Testing-Effort and Efficiency Chin-Yu Huang, Jung-Hua Lo,
HSRP 734: Advanced Statistical Methods July 10, 2008.
1SAS 03/ GSFC/SATC- NSWC-DD System and Software Reliability Dolores R. Wallace SRS Technologies Software Assurance Technology Center
1 1 Slide © 2005 Thomson/South-Western Chapter 7, Part A Sampling and Sampling Distributions Sampling Distribution of Sampling Distribution of Introduction.
Software Reliability SEG3202 N. El Kadri.
Random Sampling, Point Estimation and Maximum Likelihood.
An Empirical Likelihood Ratio Based Goodness-of-Fit Test for Two-parameter Weibull Distributions Presented by: Ms. Ratchadaporn Meksena Student ID:
7-1 Introduction The field of statistical inference consists of those methods used to make decisions or to draw conclusions about a population. These.
Boğaziçi University Software Reliability Modelling Computer Engineering Software Reliability Modelling Engin Deveci.
Econ 3790: Business and Economics Statistics Instructor: Yogesh Uppal
Accuracy Based Generation of Thermodynamic Properties for Light Water in RELAP5-3D 2010 IRUG Meeting Cliff Davis.
Chin-Yu Huang Department of Computer Science National Tsing Hua University Hsinchu, Taiwan Optimal Allocation of Testing-Resource Considering Cost, Reliability,
Chapter 7 Probability and Samples: The Distribution of Sample Means.
1 Chapter 7 Sampling Distributions. 2 Chapter Outline  Selecting A Sample  Point Estimation  Introduction to Sampling Distributions  Sampling Distribution.
BPS - 5th Ed. Chapter 221 Two Categorical Variables: The Chi-Square Test.
Fitting probability models to frequency data. Review - proportions Data: discrete nominal variable with two states (“success” and “failure”) You can do.
Methods for Estimating Defects Catherine V. Stringfellow Mathematics and Computer Science Department New Mexico Highlands University October 20, 2000.
Rescaling Reliability Bounds for a New Operational Profile Peter G Bishop Adelard, Drysdale Building, Northampton Square,
1 OUTPUT ANALYSIS FOR SIMULATIONS. 2 Introduction Analysis of One System Terminating vs. Steady-State Simulations Analysis of Terminating Simulations.
- 1 - Overall procedure of validation Calibration Validation Figure 12.4 Validation, calibration, and prediction (Oberkampf and Barone, 2004 ). Model accuracy.
2007 MIT BAE Systems Fall Conference: October Software Reliability Methods and Experience Dave Dwyer USA – E&IS baesystems.com.
© 2002 Prentice-Hall, Inc.Chap 5-1 Statistics for Managers Using Microsoft Excel 3 rd Edition Chapter 5 The Normal Distribution and Sampling Distributions.
Nonlinear differential equation model for quantification of transcriptional regulation applied to microarray data of Saccharomyces cerevisiae Vu, T. T.,
CSE SW Metrics and Quality Engineering Copyright © , Dennis J. Frailey, All Rights Reserved CSE8314M13 8/20/2001Slide 1 SMU CSE 8314 /
Software Reliability Estimates/ Projections, Cumulative & Instantaneous Presented by Dave Dwyer With help from: Ann Marie Neufelder, John D. Musa, Martin.
1 On the Channel Capacity of Wireless Fading Channels C. D. Charalambous and S. Z. Denic School of Information Technology and Engineering, University of.
Statistics Sampling Distributions and Point Estimation of Parameters Contents, figures, and exercises come from the textbook: Applied Statistics and Probability.
Copyright , Dennis J. Frailey CSE Software Measurement and Quality Engineering CSE8314 M00 - Version 7.09 SMU CSE 8314 Software Measurement.
CHAPTER 2.3 PROBABILITY DISTRIBUTIONS. 2.3 GAUSSIAN OR NORMAL ERROR DISTRIBUTION  The Gaussian distribution is an approximation to the binomial distribution.
Main Title Slide Software Reliability Estimates/ Projections, Cumulative & Instantaneous - Dave Dwyer With help from: Ann Marie Neufelder, John D. Musa,
Free Powerpoint Templates ROHANA BINTI ABDUL HAMID INSTITUT E FOR ENGINEERING MATHEMATICS (IMK) UNIVERSITI MALAYSIA PERLIS ROHANA BINTI ABDUL HAMID INSTITUT.
Chapter 7: The Distribution of Sample Means
CHAPTER 4 ESTIMATES OF MEAN AND ERRORS. 4.1 METHOD OF LEAST SQUARES I n Chapter 2 we defined the mean  of the parent distribution and noted that the.
STA302/1001 week 11 Regression Models - Introduction In regression models, two types of variables that are studied:  A dependent variable, Y, also called.
A Software Cost Model with Reliability Constraint under Two Operational Scenarios Satoru UKIMOTO and Tadashi DOHI Department of Information Engineering,
Slide (Ch.22) 1 Tian: Software Quality Engineering Software Quality Engineering: Testing, Quality Assurance, and Quantifiable Improvement Jeff Tian Chapter.
Introduction to Probability - III John Rundle Econophysics PHYS 250
Determining How Costs Behave
Software Reliability Models.
YuankaiGao,XiaogangLi
Continuous distributions
Confidence intervals in software reliability testing
Presentation transcript:

1 Software Reliability Growth Models Incorporating Fault Dependency with Various Debugging Time Lags Chin-Yu Huang, Chu-Ti Lin, Sy-Yen Kuo, Michael R. Lyu *, and Chuan-Ching Sue *Computer Science & Engineering Department The Chinese University of Hong Kong Shatin, Hong Kong The 28 th Annual International Computer Software and Application Conference (COMPSAC 2004)

2 Outline Introduction Reviews of software fault detection and correction process Considering failure dependency & debugging time lag in software reliability modeling Numerical examples Conclusions

3 Introduction The software is becoming increasingly complex and sophisticated. Thus reliability will become the main goal for software developers. Software reliability is defined as the probability of failure-free software operation for a specified period of time in a specified environment. Over the past 30 years, many Software Reliability Growth Models (SRGMs) have been proposed for estimation of reliability growth of products during software development processes.

4 Introduction (contd.) One common assumption of conventional SRGMs is that detected faults are immediately removed. In practice, this assumption may not be realistic in software development. The time to remove a fault depends on the complexity of the detected faults, the skills of the debugging team, the available man power, or the software development environment, etc. Therefore, the time delayed by the detection and correction processes should not be neglected.

5 Introduction (contd.) On the other hand, there are two types of faults in a software system: mutually independent faults and mutually dependent faults. –mutually independent faults are on different program paths. –mutually dependent faults can be removed only if the leading faults are removed. In this paper, we will incorporate the ideas of failure dependency and time-dependent delay function into software reliability growth modeling.

6 Basic Assumptions of Most SRGMs 1. The fault removal process follows the Non- homogeneous Poisson Process (NHPP). 2. The software system is subject to failures at random times caused by the manifestation of remaining faults in the system. 3. All faults are independent and equally detectable. 4. Each time a failure occurs, the corresponding fault is immediately and perfectly removed. No new faults are introduced.

7 Issues of Fault Detection and Correction Processes in SRGMs It is noted that the assumption (4) may not be realistic in practice. Actually, most existing SRGMs can be reinterpreted as delayed fault-detection models that can model the software fault detection and correction processes. We can remove the impractical assumption that the fault-correction process is perfect and establish a corresponding time-dependent delay function to fit the fault-correction process.

8 Definition 1 Given a fault-detection and fault-correction process, one defines the delay-effect factor, φ(t), to be a time-dependent function that measures the expected delay in correcting a detected fault at any time.

9 Definition 2 An SRGM is called a delayed-time NHPP model if it obeys the following assumptions: 1.The fault detection process follows the NHPP. 2.The software system is subject to failures at random times caused by the manifestation of remaining faults in the system. 3.All faults are independent and equally detectable. 4.The rate of change of mean value function (MVF) of the number of detected faults is exponentially decreasing. 5.The detected faults are not immediately removed. The fault correction process lags the fault detection process by a delay-effect factor φ(t).

10 Fault Detection and Correction Processes in SRGMs Based on the above assumptions (1)-(4), the original MVF of NHPP model is where a is the expected number of initial faults, and r is the fault detection rate. From the assumption (5) in definition 2 and above equation, the new MVF can be depicted as We thus derive the following theorem.

11 Theorem 1 Given a delay-factor, φ(t),we have: 1) The fault-detection intensity of the delayed-time NHPP SRGM is where a>0 and r>0. 2)

12 Three Conventional SRGMs In the following, we will review three conventional SRGMs based on NHPP can be directly derived from Definition 1, Definition 2, and Theorem 1. 1) Goel-Okumoto model 2) Yamada delayed S-shaped model 3) Yamada Weibull-type testing-effort function model

13 Goel-Okumoto model This model, first proposed by Goel and Okumoto, is one of the most popular NHPP model in the field of software reliability modeling. If, then (Definition 1) a) we have (Theorem 1) b) mean value function (MVF): (Definition 2)

14 Yamada delayed S-shaped model The Yamada delayed S-shaped model is a modification of the NHPP to obtain an S-shaped curve for the cumulative number of failures detected such that the failure rate initially increases and later decays. If, then (Definition 1) a) we have (Theorem 1) b) MVF: (Definition 2).

15 Yamada Weibull-type testing-effort function model Yamada et al. proposed a software reliability model incorporating the amount of test-effort expended during the software testing phase. The distribution of testing-effort can be described by a Weibull curve. If, then (Definition 1) a) we have (Theorem 1) b) Mean value function: (Definition 2).

16 Considering Failure Dependency in Software Fault Modeling Assumption: 1.The fault detection process follows the NHPP. 2.The software system is subject to failures at random times caused by the manifestation of remaining faults in the system. 3.The all detected faults can be categorized as leading faults and dependent faults. Besides, the total number of faults is finite. 4.The mean number of leading faults detected in the time interval (t, t+Δt] is proportional to the mean number of remaining leading faults in the system. Besides, the proportionality is a constant over time.

17 Considering Failure Dependency in Software Fault Modeling (contd.) 5.The mean number of dependent faults detected in the time interval (t, t+Δt) is proportional to the mean number of remaining dependent faults in the system and to the ratio of leading faults removed at time t and the total number of faults. Besides, the proportionality is a constant over time. 6.The detected dependent fault may not be immediately removed and it lags the fault detection process by a delay-effect factor φ(t). That is, φ(t) is the time delay between the removal of the leading fault and the removal of the dependent fault(s). 7.No new faults are introduced during the fault removal process.

18 Considering Failure Dependency in Software Fault Modeling (contd.) From assumption (3) & (4), we have a= a 1 + a 2. Besides, a 1 = P× a and a 2 = (1 - P)× a., and m(t)= m 1 (t) + m 2 (t) Where: a : expected number of initial faults. a 1 : total number of leading faults. a 2 : total number of dependent faults. P : portion of the leading faults. m(t) : the MVF of the expected number of initial faults. m 1 (t) : the MVF of the expected number of leading faults detected in time (0, t]. m 2 (t) : the MVF of the expected number of dependent faults detected in time (0, t].

19 Considering Failure Dependency in Software Fault Modeling (contd.) From assumption (4), the number of detected leading faults is proportional to the number of remaining leading faults. Thus we obtain the following differential equation., a 1 >0, 0<r<1. Solving the above differential equation under the boundary condition m 1 (t) =0, we have

20 Considering Failure Dependency in Software Fault Modeling (contd.) Similarly, from assumption (5) ~ (7), we obtain the following differential equation. In the following, we will give a detail description of possible behavior of φ(t).

21 Case 1 If, we obtain  From assumption (3), the MVF of the expected number of initial faults is

22 Case 2 If, we obtain  From assumption (3), the MVF of the expected number of initial faults is

23 Case 3 If, we obtain Similarly, we can obtain the MVF of the expected number of initial faults by means of the same steps.

24 Numerical Examples Two Real Software Failure Data Sets –Ohba’s data set (1984) –Data set from RVLIS project in Taiwan (2003) Criteria for Model’s Comparison –Mean Square of Fitting Error –Mean Error of Prediction –Noise Performance Analysis –We only consider Case 1 & Case 2 as illustration. –Parameters of all models are estimated by using the method of LSE and MLE.

25 Data Description The first data set (DS1) : –The system was a PL/I database application software consisting of approximately 1,317,000 lines of code. During 19 weeks, CPU hours were consumed and about 328 software faults were removed.

26 Data Description (contd.) WEEKCNFWEEKCNFWEEKCNFWEEKCNF Table 1: Number of failures per week from DS1. Where CNF: Cumulative number of failures.

27 Data Description (contd.) The second data set (DS2): –RVLIS, a detection system used to monitor the level of water within the reactor vessel. The coding language is VersaPro 2.03 and the development platform is GE FANUC PLC It took 25 weeks to complete the test. During the test phase, 230 software faults were removed.

28 WEEKCNFWEEKCNFWEEKCNFWEEKCNF Table 2: Number of failures per week from DS2. Where CNF: Cumulative number of failures. Data Description (contd.)

29 Criteria for Model’s Comparison (1) Noise: where r i is the predicted failure rate. Mean Square of Fitting Error (MSE): where m i is the observed number of faults by time t i. –A smaller MSE indicates a smaller fitting error and better performance.

30 Criteria for Model’s Comparison (2) Mean Error of Prediction (MEOP): where n i is the observed cumulative number of failures at time s i and m i is the predicted cumulative number of failures at time s i, i=k, k+1,…, n.

31 Performance Analysis Table 3: Comparison results of different SRGMs for Case1-DS1. ModelarθPMSEMEOPNoise Equation of Case Equation of Case Equation of Case Equation of Case Equation of Case Equation of Case Equation of Case Equation of Case Equation of Case Goel-Okumoto model —— Delay S-shaped model ——

32 Performance Analysis (contd.) Case 1 — DS1 –The proposed model estimates P=0.55. That is, the software may contain two categories of faults, 55% are leading faults and 45% are dependent faults. –The possible values of P are also discussed and listed in Table 3. –The proposed model provides the lowest MSE & MEOP if compared to the Goel-Okumoto model and the Yamada delay S-shaped model. –We can see that the proposed model provides the best fit and prediction for the second data set.

33 Table 4: Comparison results of different SRGMs for Case1-DS2. ModelarθPMSEMEOPNoise Equation of Case Equation of Case Equation of Case Equation of Case Equation of Case Equation of Case Equation of Case Equation of Case Equation of Case Goel-Okumoto model —— Delay S-shaped model —— Performance Analysis (contd.)

34 Performance Analysis (contd.) Case 1 — DS2 –The proposed model estimates P=0.71. That is, the software may contain two categories of faults, 71% are leading faults and 29% are dependent faults. –The possible values of P are also discussed and listed in Table 4. –The proposed model provides the lowest MSE & MEOP if compared to the Goel-Okumoto model and the Yamada delay S-shaped model. –We can see that the proposed model provides the best fit and prediction for the second data set.

35 ModelarθPMSEMEOPNoise Equation of Case Equation of Case Equation of Case Equation of Case Equation of Case Equation of Case Equation of Case Equation of Case Equation of Case Goel-Okumoto model —— Delay S-shaped model —— Table 5: Comparison results of different SRGMs for Case2-DS1. Performance Analysis (contd.)

36 Performance Analysis (contd.) Case 2 — DS1 –The proposed model estimates P=0.72 for this data set. And it indicates that the software may contain two categories of faults, 72% are leading faults and 28% are dependent faults. –The possible values of P are also discussed and listed in Table 5. –The proposed model almost provides the lowest MEOP if compared to the Goel-Okumoto model and the Yamada delay S-shaped model. –Overall, the MVF of proposed model provides a good fit to this data.

37 ModelarθPMSEMEOPNoise Equation of Case Equation of Case Equation of Case Equation of Case Equation of Case Equation of Case Equation of Case Equation of Case Equation of Case Goel-Okumoto model —— Delay S-shaped model —— Table 6: Comparison results of different SRGMs for Case2-DS2. Performance Analysis (contd.)

38 Performance Analysis (contd.) Case 2 — DS2 –The proposed model estimates P=0.77 for this data set. And it indicates that the software may contain two categories of faults, 77% are leading faults and 23% are dependent faults. –The possible values of P are also discussed and listed in Table 6. –On the other hand, we know that the inflection S- shaped model is based on the dependency of faults by postulating the assumption: some of the faults are not detectable before some other faults are removed. Therefore, it may provide us some information for reference.

39 Performance Analysis (contd.) Case 2 — DS2 (contd.) –After the simulation, we find that the estimated value of inflection rate (which indicates the ratio of the number of detectable faults to the total number of faults in the software) is for DS2. It indicates that the growth curve is slightly S-shaped. –On the average, the proposed model performs well in this actual data.

40 Conclusions In this paper, we incorporate both failure dependency and time-dependent delay function into software reliability assessment. Specifically, all detected faults can be categorized as leading faults and dependent faults. Moreover, the fault-correction process can be modeled as a delayed fault-detection process and it lags the detection process by a time-dependent delay. Experimental results show that the proposed framework to incorporate both failure dependency and time-dependent delay function for SRGM has a fairly accurate prediction capability.