Over the past three decades, many software reliability growth models
(SRGMs) have been proposed and used to predict and estimate software reliability.
One common assumption of these conventional SRGMs is to assume that detected
faults will be removed immediately. In reality, this assumption may not be
reasonable and may not always occur. During debugging, developers need time to
reproduce the failure, identify the root causes of faults, fix them, and then re-run the
software. In this chapter, we proposed a fault dependency model considering the
fault removal phenomenon as a three-stage process of removing leading, dependent
and additional faults in software. Leading faults are those which can be removed
upon failure, but dependent faults are masked by leading faults and can only be
removed after the corresponding leading faults have been removed. Additional
faults are those which are removed during the removal process of dependent fault.
These additional faults can’t be removed directly as they are not identified for
causing failure. During the removal process of dependent faults testing team detect
and remove them from the code.
Also during testing, the fault correction rate may not be constant due to change in
the testing strategies; experience and skills as time proceeds. The change in
detection/correction rate is known as change-point. We have incorporated the
concept of change-point to model a new lag function based SRGM. Further in the
existing software reliability literature the cost of model framework focuses on the
detection or correction process only to calculate the release time and reliability of
the software and ignoring the impact of either detection or correction process. As
both detection and correction have significant impact on release and reliability
prediction hence either of them cannot be neglected. In this chapter we provide a
new perspective to the release time problem incorporating both detection and
correction costs. Validation of the above models is done on real life software failure
data sets of Tandem Computers and a numerical example is also given to illustrate
the significance of new release policy.
Keywords: Change-point, Correction, Cost, Detection, Lag, Non Homogeneous
Poisson Process (NHPP) Modelling, Optimization, Release time, Software
reliability.