Stochastic Reliability-Growth: A Model for Fault-Removal in Computer-Programs and Hardware-Designs

An assumption commonly made in early models of software reliability is that the failure rate of a program is a constant multiple of the (unknown) number of faults remaining. This implies that all faults contribute the same amount to the failure rate of the program. The assumption is challenged and an alternative proposed. The suggested model results in earlier fault-fixes having a greater effect than later ones (the faults which make the greatest contribution to the overall failure rate tend to show themselves earlier, and so are fixed earlier), and the DFR property between fault fixes (assurance about programs increases during periods of failure-free operation, as well as at fault fixes). The model is tractable and allows a variety of reliability measures to be calculated. Predictions of total execution time to achieve a target reliability, and total number of fault fixes to target reliability, are obtained. The model might also apply to hardware reliability growth resulting from the elimination of design errors.

[1]  Richard J. Lipton,et al.  Social processes and proofs of theorems and programs , 1979, CACM.

[2]  Z. Jelinski,et al.  Software reliability Research , 1972, Statistical Computer Performance Evaluation.

[3]  Brian Randell,et al.  Reliability Issues in Computing System Design , 1978, CSUR.

[4]  Bev Littlewood,et al.  Likelihood Function of a Debugging Model for Computer Software Reliability , 1981, IEEE Transactions on Reliability.

[5]  J.D. Musa,et al.  The measurement and management of software reliability , 1980, Proceedings of the IEEE.

[6]  Bev Littlewood,et al.  Theories of Software Reliability: How Good Are They and How Can They Be Improved? , 1980, IEEE Transactions on Software Engineering.

[7]  Bev Littlewood How to Measure Software Reliability and How Not To , 1979, IEEE Transactions on Reliability.

[8]  Martin L. Shooman,et al.  Probabilistic Models for Software reliability Prediction , 1972, Statistical Computer Performance Evaluation.

[9]  Nozer D. Singpurwalla,et al.  An Empirical Stopping Rule for Debugging and Testing Computer Software , 1977 .

[10]  John D. Musa Validity of Execution-Time Theory of Software Reliability , 1979, IEEE Transactions on Reliability.

[11]  Richard J. Lipton,et al.  Social processes and proofs of theorems and programs , 1977, POPL.

[12]  John D. Musa,et al.  A theory of software reliability and its application , 1975, IEEE Transactions on Software Engineering.

[13]  H. Ascher Comments on "Models for Reliability of Repaired Equipment , 1979 .