SENG521 (Fall 2002) [email protected] 1
SENG 521SENG 521Software Reliability & Software Reliability & TestingTesting
Software Reliability ModelsSoftware Reliability Models
(Part 2a)(Part 2a)
Department of Electrical & Computer Engineering, University of Calgary
B.H. Far ( [email protected] )http://www.enel.ucalgary.ca/~far/Lectures/SENG521/02a/
SENG521 (Fall 2002) [email protected] 2
ContentsContents Basic Features of the Software Reliability ModelsBasic Features of the Software Reliability Models Single Failure ModelSingle Failure Model Reliability Growth ModelReliability Growth Model Exponential Failure Class ModelsExponential Failure Class Models Weibull and Gamma Failure Class ModelsWeibull and Gamma Failure Class Models Infinite Failure Category ModelsInfinite Failure Category Models Bayesian ModelsBayesian Models Early Life-Cycle Prediction ModelsEarly Life-Cycle Prediction Models
SENG521 (Fall 2002) [email protected] 4
GoalGoal 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) [email protected] 5
Reliability ModelReliability Model
ReliabilityReliabilityModelModel
ReliabilityReliabilityModelModel
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 protected] 6
Two Reliability QuestionsTwo 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 t1,
t2, …, ti-1, what is the probability of its failure at time ti?
SENG521 (Fall 2002) [email protected] 7
Model ClassificationModel 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 protected] 8
Various Reliability Models Various Reliability Models /1/1 Exponential Failure Class ModelsExponential Failure Class Models
Jelinski-Moranda model (JM) Nonhomogeneous Poisson Process model
(NHPP) Schneidewind model Musa’s Basic Execution Time model (BET) Hyperexponential model (HE) Others
SENG521 (Fall 2002) [email protected] 9
Various Reliability Models Various Reliability Models /2/2 Weibull and Gamma Failure Class ModelsWeibull and Gamma Failure Class Models
Weibull model (WM) S-shaped Reliability Growth model (SRG)
Infinite Failure Category ModelsInfinite Failure Category Models Duane’s model Geometric model Musa-Okumoto Logarithmic Poisson model
SENG521 (Fall 2002) [email protected] 10
Various Reliability Models Various Reliability Models /3/3 Bayesian ModelsBayesian Models
Littlewood-Verrall Model
Early Life-Cycle Prediction ModelsEarly Life-Cycle Prediction Models Phase-based model
SENG521 (Fall 2002) [email protected] 13
Another Categorization /1Another Categorization /1 Time between failure modelsTime between failure models
Jelinski-Moranda (Exponential Failure Model) Musa-Basic (Exponential Failure ModelModel) NHPP (Exponential Failure ModelModel) Geometric (Infinite FailureInfinite Failure ModelModel) Musa-Okumoto (Infinite FailureInfinite Failure ModelModel) Littlewood-Verrall (Bayesian ModelBayesian Model)
SENG521 (Fall 2002) [email protected] 14
Another Categorization /2Another Categorization /2 Failure count modelsFailure count models
Generalized Poisson Shick-Wolverton Yamada S-shaped NHPP (Exponential Failure ModelModel) Schneidewind (Exponential Failure ModelModel)
SENG521 (Fall 2002) [email protected] 16
Hardware Reliability Hardware Reliability ModelsModels
Uniform model: Probability of failure is
fixed.
Exponential model: Probability of failure
changes exponentially over time
1
0
t Tf t
t T
f
t
T
0tf t e
f
t
T
0
SENG521 (Fall 2002) [email protected] 17
Single Failure Model /1Single 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.
Exponential PDF:
0
0 0
te tf t
t
SENG521 (Fall 2002) [email protected] 18
Single Failure Model /2Single Failure Model /2 Cumulative Density
Function (CDF): depicting cumulative failures up to a given time t.
For exponential distribution, CDF is:
0
tF t f t
1 0
0 0
te tF t
t
SENG521 (Fall 2002) [email protected] 19
Single Failure Model /3Single Failure Model /3 Reliability function (R): depicting a component
functioning without failure until time t.
For exponential distribution, R is:
1R t F t
tR t e
SENG521 (Fall 2002) [email protected] 20
Single Failure Model /4Single 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:
0
E T t f t dt
1MTTF
SENG521 (Fall 2002) [email protected] 21
Single Failure Model /5Single Failure Model /5 Median time to failure (tm): a point in time that the
probability of failure before and after tm are equal.
Failure Rate z(t): Probability density function divided by reliability function.
For exponential distribution, z(t) is: λ
0
1 12 2
mt
mt f t dt or F t
f tz t
R t
SENG521 (Fall 2002) [email protected] 22
Single Failure Model /6Single Failure Model /6 System Reliability: is the multiplication of
the reliability of its components.
For exponential distribution:
1
n
system ii
R t R t
1 21 2
1
nn
n
ii
ttt tsystem
t
system
R t e e e e
R t e
SENG521 (Fall 2002) [email protected] 23
Single Failure Model /7Single Failure Model /7 System Cumulative Failure Rate: is the
sum of the failure rate of its components.
For exponential distribution:
1
n
system ii
z t z t
1 21
n
system n ii
z t
SENG521 (Fall 2002) [email protected] 25
Reliability Growth Reliability Growth Models Models /1/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 Δti = ti-ti-1). Therefore, we need a model for reliability growth (i.e., reliability change over time).
SENG521 (Fall 2002) [email protected] 26
Reliability Growth Models Reliability Growth Models /2/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) [email protected] 27
Validity of the ModelsValidity 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.
RevisionPeriod 1
RevisionPeriod 4
SENG521 (Fall 2002) [email protected] 28
Reliability Growth Models Reliability Growth Models /3/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) [email protected] 29
Reliability Growth Models Reliability Growth Models /4/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
0 0.10 0
1 0.18 0.18
2 0.22 0.44
3 0.16 0.48
4 0.11 0.44
5 0.08 0.40
6 0.05 0.30
7 0.04 0.28
8 0.03 0.24
9 0.02 0.18
10 0.01 0.10
Mean failure (μ) 3.04
1
: probability of occurrence
: number of failures
n
ii
i
i p
p
i
SENG521 (Fall 2002) [email protected] 30
Reliability Growth Reliability Growth Models /5Models /5
Failure intensity (λ) versus execution time (τ)
0
0
0
0
0
(B)
(P)1
e
0
0
Initial failure intensity
Total failures
Decay parameter
SENG521 (Fall 2002) [email protected] 31
Reliability Growth Reliability Growth Models /6Models /6
Failure intensity (λ) versus mean failures experienced (μ)
00
0
1(B)
(P) e
SENG521 (Fall 2002) [email protected] 32
Reliability Growth Reliability Growth Models /7Models /7
Mean failures experienced (μ) versus execution time (τ)
0
0
0
0
1
1ln 1
(B)
(P)
e
SENG521 (Fall 2002) [email protected] 33
Reliability Growth Reliability Growth Models /8Models /8
Failure(s) in time period
Probability
Elapsed time
(1 hour)
Elapsed time
(5 hours)
0 0.10 0.01
1 0.18 0.02
2 0.22 0.03
3 0.16 0.04
4 0.11 0.05
5 0.08 0.07
6 0.05 0.09
7 0.04 0.12
8 0.03 0.16
9 0.02 0.13
10 0.01 0.10
11 0 0.07
12 0 0.05
13 0 0.03
14 0 0.02
15 0 0.01
Mean 3.04 7.77
SENG521 (Fall 2002) [email protected] 34
How to Use the Models?How to Use the Models? Release criteria: time
required to test the system to reach a target failure intensity:
0
0
( )
( )
ln
1 1 1
P
F
F P
B
P
: Present failure intensity
: Target failure intensityP
F
SENG521 (Fall 2002) [email protected] 35
Reliability MetricsReliability 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 protected] 36
Reliability Metrics:Reliability Metrics: AvailabilityAvailability
Software System Availability (A):
λ is failure intensity
tm 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.
11
1 m m
A tA t or t
t t t A t
MTTF MTTFA
MTTF MTTR MTBF
SENG521 (Fall 2002) [email protected] 37
Reliability Metrics:Reliability Metrics: ReliabilityReliability
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.
ln 10.95
R t R tt or for R t
t t
SENG521 (Fall 2002) [email protected] 38
Top Related