ABSTRACT

The problem of assessing reliability of software has been a research topic for more than 30 years, and several successful methods for predicting the reliability of an individual software component based on testing have been presented (Lyu 1995; Musa 1998). There are, however, still no really successful methods for predicting the reliability of compound software (software systems consisting of multiple software components) based on reliability data on the system’s individual software components. In addition to the fact that assessing the reliability of software is hard due to the inherent complexity of software, and that software is sensitive to changes in its usage, failure dependencies between software components is possibly the biggest problem.