An Algorithm for Improving System Safety via Software Fault Trees
NAVAL ACADEMY ANNAPOLIS MD DEPT OF COMPUTER SCIENCE
Pagination or Media Count:
Analysis of software fault trees exposes hardware and software failure events that can lead to unsafe system states, and provides insight on improving safety throughout each phase of a systems development. Although fault trees can be pruned for low severity and low probability nodes, few techniques exist for systematically improving system safety by focusing on cost analysis of a systems fault tree nodes. In this paper, we present an algorithm for system failure mitigation, supportive of continuous software evolution, based on the reduction of a fault tree into a polynomial expression of degree g, where g is the number of inputs. We combine cost functions that model the expense of improving component reliability into a vector field which provides a measurement of the degree of difficulty of system improvement. The gradient of the vector field is evaluated for vectors providing steep assent towards the area of greatest safety improvement, which in turn provides guidance on improving design time system safety. We provide an example application of our improvement algorithm, and examine improvement verification of the resulting system modifications.
- Numerical Mathematics
- Theoretical Mathematics
- Computer Programming and Software