Predicting operational software availability and its applications to telecommunication systems

15 September 2002

New Image

It is essential to predict customer-perceived software availability during software development and determine when to release the software to maintain a balance among time-to-market, development cost and software quality. This paper presents methods and procedures to predict software failure rates from a user perspective in system test phases and to reverse-engineer in order to estimate software release time for given availability targets. Software reliability analysis is conducted based on non-homogenous Poisson process models. Software system test data of current release are used to estimate the number of residual faults by the end of system tests and data of previous releases or similar products (including system test data, post-system test data and field failure data) provide a means to predict a user-perceived average failure rate of a fault. Software system availability can be predicted from these estimates. Both execution and calendar times are considered. A software resource utilization model is developed to transfer one testing time to another. A telecommunications application illustrates how to calculate the failure rate and testing time to meet the software availability requirements.