SOFTWARE RELIABILITY AND RECOVERY TECHNIQUES The general approach in this book is to treat reliability as a system problem and to decompose the system into a hierarchy of related subsystems or components. The reliability of the entire system is related to the reliability of the components by some sort of structure function in which the components may fail independently or in a dependent manner. The discussion that follows will make it abundantly clear that software is a major “component” of the