It is very important to include software in a system Fault Tree Analysis or quantitative hazard analysis, especially for software-intensive systems. Software does not only fail, it is often used to mitigate hardware failures. A system analysis would be incomplete without evaluation of all major software elements and interfaces between software and hardware. ALD's software reliability engineers have gained vast experience in performing software FTAs and integrating such analysis into a system-wide Fault Tree.
A common obstacle to including software in a quantitative analysis is lack of failure rate estimates for these components. If the software is not a part of a safety critical system/function it may be fielded with a known failure rate (based on the software testing program). In such case this failure rate may be used as an estimate for the fault tree analysis. For more information about failure rates and reliability of software see Software Reliability. It is usually assumed that a safety critical system should be fielded only after rigorous testing which confirms no remaining defects in the software code. Any remaining sources of failure (associated with the software) can be either a result of incomplete requirement definition, in particular requirements dealing with rare and anomalous conditions such as hardware failures, or rare environmental and usage conditions, or unforeseen operator actions. Often a combination of multiple rare events may lead to conditions that the software was not prepared for. An approximate rate for such events can be estimated based on a code size, number of interfaces and quality of the requirements document. ALD's engineers have experience in identifying the indicated input and providing such an estimate.
To perform a complete software FTA our engineers will work with your program to obtain all the required information including:
• System architecture