1) Software reliability models estimate the defect rate and quality of software either through static attributes or dynamic testing patterns.
2) Dynamic models like the Rayleigh and Weibull distributions use statistical analysis of defect patterns over time to project future reliability. Finding and removing defects earlier in the development process leads to better quality in later stages.
3) Accuracy of estimates from reliability models depends on the input data and how well the model fits the specific organization. No single model works for all situations.
2. • Software reliability models are
when it is available to the
customers.
• The criterion variable under study is the number of
y
defects in specified time intervals (weeks, months,
etc.), or the time between failures.
• Such an estimate is important for two reasons:
– (1) It is an objective statement of the quality of the
product
d t
– (2) It is a resource planning tool for the software
maintenance phase
phase.
3.
4. • 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 software.
General Form :
The number of defects (y) is dependant on the attributes (x) of the
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
model, distributions,
the current development defect patterns to estimate 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)
and Reliability Growth Models)
5. • The Rayleigh model is a parametric model
in the sense that it is based on a specific
statistical di ib i
i i l distribution. It i a d
is dynamici
reliability model.
• When the parameters of the statistical
distribution are estimated based on the
data from a software project, projections
about th d f t rate of th project can b
b t the defect t f the j t be
made based on the model.
6. • 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
7. • Rayleigh is a special case of the Weibull
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.
7
8. g p p
The defect rate observed during the development process is
positively correlated with the defect rate in the field. (Fig.)
Assuming the defect removal effectiveness remains unchanged, then
a h h curve (
higher (more d f
defects) d
) during d l
development means a h h
higher
defect injection rate and hence a higher field defect rate.
8
9. Given the same error injection rate if more defects are
rate,
discovered and removed earlier then fewer will remain in
later stages and the field quality will be better.
g q y
– 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.
at the tail the GA phase
In short “Do it right the first time ”
short, 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.
10. Given the same error injection rate if more defects are
rate,
discovered and removed earlier then fewer will remain in
later stages and the field quality will be better.
g q y
– 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.
at the tail the GA phase
11. • Most statistical software packages support
Most statistical software packages support
Weibull Distributions.
• Applications can be developed due to the
l b d l dd h
clearly defined algorithms for Weibull.
• COTS (Commercial Off The Shelf) products
can also be used:
can also be used:
11
12. • Accuracy of model estimates
estimates.
• Input data must be accurate and reliable.
• To establish high Predictive Validity,
and empirical validity must be
established.
established
• The validity of software reliability models
. A certain model may work well for a
specific organization or development structure, but
not for others.
• No universally good software reliability model
exists.
12
13. • High‐level Design Review (I0), Low‐level Design Review (I1), Code
g g ( ), g ( ),
Inspection (I2), Unit Test (UT), Component Test (CT), System Test (ST),
and General Availability Phase (GA)