Software fault tree analysis
A software fault tree analysis determines what the most likely failure
events are pertaining to your software. Then it determines what single or multiple
point failures could produce these top level events. FTA's a useful when designing
or testing the error handling part of your software.
-
- Potential software/system failure events
-

- Root causes of those failure events- failure modes
The basic software failure events are:
- False alarms
- Insufficient error handling
- Sequencing or order
- Timing
- Outputs are incorrect
- Outputs are valid but not expected
Software fault trees are most effective when performed during each phase of the
lifecycle starting with system requirements. The illustration below shows how
we approach software fault trees.

Common mistakes made when doing software fault trees
- Excluding hardware from the analysis or isolating the software from the rest of the
system
- Starting with "software fails" as the top event
- Neglecting to use standard failure events and failure modes checklists during the
brainstorming
- Not having the appropriate subject matter experts in the analyses
- Neglecting to prune the tree for low severity and low probability
- Neglecting to add the "shall nots" divulged from the fault trees into the
requirements, design documents and test plans
- Neglecting to review past historical failure events
- Neglecting to perform the fault tree analyses during each of the development phases
Products and Services related to software fault trees
|