Title: Software Reliability Models
1Software Reliability Models
- Ph.D Student Seminar
- Monday September 18, 2006
2Why Software Reliability?
- Increased control by software
- Increase of size and complexity of software
- Critical software failures
- Ariane 5 1996
- Phone network outage 1991
- Therac 25 1985-1986
- Software reliability - one of the attributes of
software quality - Software reliability - one of the system
dependability - Software reliability - an essential ingredient in
customer satisfaction
3Hardware Reliability Vs. SR
4What is Software Reliability?
- The probability of failure-free software
operation for a specified period of time in a
specified environment. - ANSI 1991
5SR Measures
- Cumulative failure function
- The probability of failure by time t
-
- Mean-value function
- The expected number of failures experienced
by time t according to the model -
- Reliability Function
- The probability that the time to failure is
larger than t
6SR Measures
- Hazard rate function
- The conditional probability that a failure
per unit time occurs in the intervals given that
a failure has not occurred before t. - Mean Time To Failure (MTTF)
- The expected time during which the system
will function successfully without maintenance or
repair - Failure intensity function
- the instantaneous rate of change of the
expected number of failures with respect to time.
7Why Software Reliability Modeling?
- Predict probability of failure of a component or
system - Estimate the mean time to the next failure
- Predict number of (remaining) failures
8Model Classification
- Musa and okumoto 83
- Time domain wall clock vs. execution time
- Category total number of failures (finite or
infinite) - Type Distribution of number of failures
(Poisson, binomial) - Class (finite) functional form of the failure
intensity expressed in terms of time - Family (infinite) functional form of the failure
intensity function expressed in terms of the
expected number of failure
9Model Classification
10Model Classification
11Standard (basic) Assumptions for Exponential
Models
- The software is operated in a similar manner as
that in which reliability predictions are to be
made. - Every fault has the same chance to of being
encountered - The failures are independent.
0
t
12Perfect Fix (Debugging)
- Perfect Debugging
- Defects are removed certainly and instantaneously
- No new defects are introduced during debugging.
13Jelinski-Moranda Model (1972)
- Assumptions
- Initial defects N, an unknown but fixed constant
- The failure rate during a failure interval is
constant and is proportional ( ) to the
number of remaining defect - Perfect debugging
- Data Requirements
- Actual failure times t1, t2, , tn
- Elapsed time between failures xi ti ti-1
14Jelinski-Moranda Model (1972)
Z(t)
n Number of faults observed Xi fault observed
in I interval N total number of faults
Cumulative time
15SR Tools (SMERFS3)
16Musas Model (1975)
- Times between failures are expressed in CPU time
(1st component) - The ability to convert the execution time results
to calendar time (2nd component)
17Musas Basic Execution Model (1975)
- Assumptions
- Cumulative number of failures by time t follows a
Poisson process. - Mean value function
- where total number of detected faults
- failure rate
- Failure intensity function
- Hazard rate for a single fault is constant
18Musas Model (1975)
Failure Intensity
n Number of faults observed x elapsed time
without failure failure at time t failure
rate Total number of failures
Execution Time
19SR Tools (SMERFS3)
20Goel-Okumoto Model (1979)
- Non-Homogenous Poisson Process (NHPP)
- Assumes that the cumulative number of failures
detected at any time follows a Poisson
distribution. - Time intervals can be unequal
21Goel-Okumoto Model (1979)
- Assumptions
- The mean value function ( )has the boundary
conditions - and
- The number of failures that occur in
with - Is proportional to the expected number of
undetected faults - The constant proportionality is b
- Data Requirements
- Fault counts on each testing interval f1, f2, ,
fn - Cumulative completion time of each period t1,
t2, , tn
22Goel-Okumoto Model (1979)
n Number of faults observed b Failure rate
failure at time t
23Generalized exponential model (AIAA 1993)
- Simplify the modeling process
- Single set of equations to represent number of
models
Z(.) Hazard rate t time or resource
variable measuring the progress of the project K
constant of proportionality initial
number of faults in SW number of faults
thats been found and corrected after t