A ceneral imperfect-software-debugging model with S-shaped fault-detection rate
A general software reliability model based on the nonhomogeneous Poisson process (NHPP) is used to derive a model that integrates imperfect debugging with the learning phenomenon. Learning occurs if testing appears to improve dynamically in efficiency as one progresses through a testing phase. Learning usually manifests itself as a changing fault-detection rate. Published models and empirical data suggest that efficiency growth due to learning can follow many growth-curves, from linear to that described by the logistic function. On the other hand, some recent work indicates that in a real industrial resource-constrained environment, very little actual learning might occur because non-operational profiles used to generate test & business models can prevent the learning. When that happens, the testing efficiency can still change when an explicit change in testing strategy occurs, or it can change as a result of the structural profile of the code under test and test-case ordering. Either way, software reliability engineering researchers agree that: changes in the fault-detection rate are common during the testing process; in most realistic situations, fault repair has associated with it a fault re-introduction rate due to imperfect debugging. We compare descriptive and predictive ability of a set of classical NHPP reliability models with the one we developed using 4 sets of software-failure data. The results show that inclusion of both imperfect debugging and a time-dependent fault-detection rate into an NHPP software reliability growth model (SRGM): improve both the descriptive and the predictive properties of a model, is worth the extra model-complexity and the increased number of parameters required for a better relative fit. We use the sum of squared error to compare relative goodness-of-fit of the models within a data set; and use the Akaike information criterion as an indicator of the overall relative goodness of a model after compensation for its complexity, viz, number of parameters it has. More application is needed to validate fully this model for descriptive & predictive software reliability modeling in a general industrial setting.
software reliability nonhomogeneous poisson process imperfect debugging learning model akaike's information criterion