Presentation on theme: "SENG521 (Fall SENG 521 Software Reliability & Testing Software Reliability Models (Part 2a) Department of Electrical & Computer."— Presentation transcript:
SENG521 (Fall 2002)email@example.com SENG 521 Software Reliability & Testing Software Reliability Models (Part 2a) Department of Electrical & Computer Engineering, University of Calgary B.H. Far firstname.lastname@example.org http://www.enel.ucalgary.ca/~far/Lectures/SENG521/02a/
SENG521 (Fall 2002)email@example.com Contents Basic Features of the Software Reliability Models Basic Features of the Software Reliability Models Single Failure Model Single Failure Model Reliability Growth Model Reliability Growth Model Exponential Failure Class Models Exponential Failure Class Models Weibull and Gamma Failure Class Models Weibull and Gamma Failure Class Models Infinite Failure Category Models Infinite Failure Category Models Bayesian Models Bayesian Models Early Life-Cycle Prediction Models Early Life-Cycle Prediction Models
SENG521 (Fall 2002)firstname.lastname@example.org Section 1 Basic Features
SENG521 (Fall 2002)email@example.com Goal It is important to be able to Predict probability of failure of a component or system Estimate the mean time to the next failure Predict number of (remaining) failures during the development. Such tasks are the target of the reliability management models.
SENG521 (Fall 2002)firstname.lastname@example.org Reliability Model ReliabilityModelReliabilityModel Fault introduction: Characteristics of the product (e.g., program size) Development process (e.g., SE tools and techniques, staff experiences, etc.) Fault removal: Failure discovery (e.g., extent of execution, operational profile) Quality of repair activity Environment
SENG521 (Fall 2002)email@example.com Two Reliability Questions Single failure specification: What is the probability of failure of a system (or a component)? Multiple failure specification: If a system (or a component) fails at time t 1, t 2, …, t i-1, what is the probability of its failure at time t i ?
SENG521 (Fall 2002)firstname.lastname@example.org Model Classification Time domain: Calendar or execution time Category: Number of failures is finite or infinite. Type: Distribution of the number of failures experienced by the time specified. Class (only finite category): Functional form of the failure intensity over time. Family (only infinite category): Functional form of the failure intensity in terms of the expected number of failures experienced.
SENG521 (Fall 2002)email@example.com Various Reliability Models /1 Exponential Failure Class Models Exponential Failure Class Models Jelinski-Moranda model (JM) Nonhomogeneous Poisson Process model (NHPP) Schneidewind model Musas Basic Execution Time model (BET) Hyperexponential model (HE) Others
SENG521 (Fall 2002)firstname.lastname@example.org Various Reliability Models /2 Weibull and Gamma Failure Class Models Weibull and Gamma Failure Class Models Weibull model (WM) S-shaped Reliability Growth model (SRG) Infinite Failure Category Models Infinite Failure Category Models Duanes model Geometric model Musa-Okumoto Logarithmic Poisson model
SENG521 (Fall 2002)email@example.com Various Reliability Models /3 Bayesian Models Bayesian Models Littlewood-Verrall Model Early Life-Cycle Prediction Models Early Life-Cycle Prediction Models Phase-based model
SENG521 (Fall 2002)firstname.lastname@example.org Failure Specification /1 1)Time of failure 2)Time interval between failures 3)Cumulative failure up to a given time 4)Failures experienced in a time interval Failure no. Failure times (hours) Failure interval (hours) 110 2199 33213 44311 55815 67012 78818 810315 912522 1015025 1116919 1219930 1323132 1425625 1529640 Time based failure specification
SENG521 (Fall 2002)email@example.com Failure Specification /2 1)Time of failure 2)Time interval between failures 3)Cumulative failure up to a given time 4)Failures experienced in a time interval Time(s)Cumulative Failures Failures in interval 3022 6053 9072 12081 150102 180111 210121 240131 270141 Failure based failure specification
SENG521 (Fall 2002)firstname.lastname@example.org Another Categorization /1 Time between failure models Time between failure models Jelinski-Moranda (Exponential Failure Model) Model Musa-Basic (Exponential Failure Model) Model NHPP (Exponential Failure Model) Infinite FailureModel Geometric (Infinite Failure Model) Infinite FailureModel Musa-Okumoto (Infinite Failure Model) Bayesian Model Littlewood-Verrall (Bayesian Model)
SENG521 (Fall 2002)email@example.com Another Categorization /2 Failure count models Failure count models Generalized Poisson Shick-Wolverton Yamada S-shaped Model NHPP (Exponential Failure Model) Model Schneidewind (Exponential Failure Model)
SENG521 (Fall 2002)firstname.lastname@example.org Section 2 Single Failure Model
SENG521 (Fall 2002)email@example.com Hardware Reliability Models Uniform model: Probability of failure is fixed. Exponential model: Probability of failure changes exponentially over time f t T f t T
SENG521 (Fall 2002)firstname.lastname@example.org Single Failure Model /1 Probability Density Function (PDF): depicting changes of the probability of failure up to a given time t. A common form of PDF is exponential distribution Usually we want to know how long a component will behave correctly before it fails, i.e., the probability of failure from time 0 up to a given time t.
SENG521 (Fall 2002)email@example.com Single Failure Model /2 Cumulative Density Function (CDF): depicting cumulative failures up to a given time t. For exponential distribution, CDF is:
SENG521 (Fall 2002)firstname.lastname@example.org Single Failure Model /3 Reliability function (R): depicting a component functioning without failure until time t. For exponential distribution, R is:
SENG521 (Fall 2002)email@example.com Single Failure Model /4 What is the expected value of failure time T? It is the mean of the probability density function (PDF), named mean time to failure (MTTF) For exponential distribution, MTTF is:
SENG521 (Fall 2002)firstname.lastname@example.org Single Failure Model /5 Median time to failure ( t m ): a point in time that the probability of failure before and after t m are equal. Failure Rate z(t): Probability density function divided by reliability function. For exponential distribution, z(t) is: λ
SENG521 (Fall 2002)email@example.com Single Failure Model /6 System Reliability: is the multiplication of the reliability of its components. For exponential distribution:
SENG521 (Fall 2002)firstname.lastname@example.org Single Failure Model /7 System Cumulative Failure Rate: is the sum of the failure rate of its components. For exponential distribution:
SENG521 (Fall 2002)email@example.com Section 3 Reliability Growth Model
SENG521 (Fall 2002)firstname.lastname@example.org Reliability Growth Models /1 One can assume that the probability of failure (probability density function, PDF) for all failures are the same (e.g., replacing the faulty hardware component with an identical one). In software, however, we want to fix the problem, i.e., have a lower probability of failure after a repair (or longer Δt i = t i -t i-1 ). Therefore, we need a model for reliability growth (i.e., reliability change over time).
SENG521 (Fall 2002)email@example.com Reliability Growth Models /2 Common software reliability growth models are: Basic Exponential model Logarithmic Poisson model The basic exponential model assumes finite failures (ν 0 ) in infinite time. The logarithmic Poisson model assumes infinite failures.
SENG521 (Fall 2002)firstname.lastname@example.org Validity of the Models Software systems are changed (updated) many times during their life cycle. The models are good for one revision period rather than the whole life cycle. Revision Period 1 Revision Period 4
SENG521 (Fall 2002)email@example.com Reliability Growth Models /3 Parameters involved in reliability growth models: 1) Failure intensity (λ): number of failures per natural or time unit. 2) Execution time (τ): time since the program is running. Execution time may be different from calendar time. 3) Mean failures experienced (μ): mean failures experienced in a time interval.
SENG521 (Fall 2002)firstname.lastname@example.org Reliability Growth Models /4 Mean failures experienced (μ) for a given time period (e.g., 1 hour execution time) is calculated as: No. of failures in interval (n) Probability (p) n x p 00.100 10.18 20.220.44 30.160.48 40.110.44 50.080.40 60.050.30 70.040.28 80.030.24 90.020.18 100.010.10 Mean failure (μ)3.04
SENG521 (Fall 2002)email@example.com Reliability Growth Models /5 Failure intensity (λ) versus execution time (τ)
SENG521 (Fall 2002)firstname.lastname@example.org Reliability Growth Models /6 Failure intensity (λ) versus mean failures experienced (μ)
SENG521 (Fall 2002)email@example.com Reliability Growth Models /7 Mean failures experienced (μ) versus execution time (τ)
SENG521 (Fall 2002)firstname.lastname@example.org Reliability Growth Models /8 Failure(s) in time period Probability Elapsed time (1 hour) Elapsed time (5 hours) 00.100.01 10.180.02 20.220.03 30.160.04 40.110.05 50.080.07 60.050.09 70.040.12 80.030.16 90.020.13 100.010.10 1100.07 1200.05 1300.03 1400.02 1500.01 Mean3.047.77
SENG521 (Fall 2002)email@example.com How to Use the Models? Release criteria: time required to test the system to reach a target failure intensity:
SENG521 (Fall 2002)firstname.lastname@example.org Reliability Metrics Mean time to failure (MTTF): Usually calculated by dividing the total operating time of the units tested by the total number of failures encountered (assuming that the failure rate is constant). Example: MTTF for Windows 2000 Professional is 2893 hours or 72 forty- hour workweeks. MTTF for Windows NT Workstation is 919 hours or 23 workweeks. MTTF for Windows 98 is 216 hours or 5 workweeks. Mean time to repair (MTTR): mean time to repair a (software) component. Mean time between failures (MTBF): MTBF = MTTF + MTTR
SENG521 (Fall 2002)email@example.com Reliability Metrics: Availability Software System Availability (A): λ is failure intensity t m is downtime per failure Another definition of availability: Example: If a product must be available 99% of time and downtime is 6 min, then λ is about 0.1 failure per hour (1 failure per 10 hours) and MTTF=594 min.
SENG521 (Fall 2002)firstname.lastname@example.org Reliability Metrics: Reliability Software System Reliability (R): λ is failure intensity R is reliability t is natural unit (time, etc.) Example: for λ=0.001 or 1 failure for 1000 hours, reliability (R) is around 0.992 for 8 hours of operation.
Your consent to our cookies if you continue to use this website.