This document discusses software reliability models and the Rayleigh model in particular. It explains that reliability models can be static or dynamic, and the Rayleigh model is a dynamic model based on a Weibull distribution. The Rayleigh model uses parameters estimated from project data to project defect rates. Higher defect rates during development generally correlate with higher field defect rates. More defects found and removed earlier in the process yields better quality. Accuracy of models depends on valid input data and establishing predictive validity for different organizations.
1. 3/2/2011
Software Quality Management
Unit – 3
Roy Antony Arnold G
Asst. Prof./CSE
GRAA
• Software reliability models are
when it is available to the
customers.
• The criterion variable under study is the number of
defects in specified time intervals (weeks, months,
etc.), or the time between failures.
• Such an estimate is important for two reasons:
p
– (1) It is an objective statement of the quality of the
product
– (2) It is a resource planning tool for the software
maintenance phase.
GRAA
1
2. 3/2/2011
• Reliability models can be broadly classified into two categories:
and (Conte et al., 1986).
• A static model uses other attributes of the project or program
modules to estimate the number of defects in the software.
General Form :
The number of defects (y) is dependant on the attributes (x) of the
product and the process by which it is produced, plus some
error (e) due to unknowns which inherently exist.
• A dynamic model, usually based on statistical distributions, uses
the current development defect patterns to estimate end‐ end
product reliability.
• Dynamic Models are classified in two categories
– those that model the entire development process (Rayleigh Model)
– those that model the back‐end testing phase (Exponential Model
and Reliability Growth Models)
GRAA
• The Rayleigh model is a parametric model
in the sense that it is based on a specific
statistical distribution. It is a dynamic
reliability model.
• When the parameters of the statistical
distribution are estimated based on the
data from a software project, projections
about the defect rate of the project can be
made based on the model.
GRAA
2
3. 3/2/2011
• The Rayleigh model is a member of the family of the
.
• One of its marked characteristics is that the tail of its
probability density function approaches zero
asymptotically, but never reaches it.
• Weibull distributions are used for predicting reliability and
probability distribution
• Two standard functions for graphing Weibull
Two standard functions for graphing Weibull
GRAA
• Rayleigh is a special case of the Weibull
where the shape parameter (m) equals 2:
• The formulas represent a standard distribution.
• The total area under the curve is 1.
GRAA
3
4. 3/2/2011
The defect rate observed during the development process is
positively correlated with the defect rate in the field. (Fig.)
Assuming the d f removal effectiveness remains unchanged, then
A i h defect l ff i i h d h
a higher curve (more defects) during development means a higher
defect injection rate and hence a higher field defect rate.
GRAA
Given the same error injection rate, if more defects are
discovered and removed earlier then fewer will remain in
later stages and the field quality will be better.
– In the fig. the areas under the curves are the same but the curves
peak at varying points. Curves that peak earlier have smaller areas
at the tail, the GA phase.
In short, “Do it right the first time.”
This means that if each step of the
development process is executed properly
with minimum errors, the end product's
quality will be good.
GRAA
4
5. 3/2/2011
• Most statistical software packages support
Weibull Distributions.
• Applications can be developed due to the
clearly defined algorithms for Weibull.
• COTS (Commercial Off The Shelf) products
can also be used:
GRAA
• Accuracy of model estimates.
• Input data must be accurate and reliable.
• To establish high Predictive Validity,
and empirical validity must be
established.
• The validity of software reliability models
. A certain model may work well for a
specific organization or development structure but
structure,
not for others.
• No universally good software reliability model
exists.
GRAA
5