G. Latif-Shabgahi
A taxonomy for software voting algorithms used in safety-critical systems
Latif-Shabgahi, G.; Bass, J.M.; Bennett, S.
Abstract
Voting algorithms are used to provide an error masking capability in a wide range of highly dependable commercial & research applications. These applications include N-Modular Redundant hardware systems and diversely designed software systems based on N-Version Programming. The most sophisticated & complex algorithms can even tolerate malicious (or Byzantine) subsystem errors. The algorithms can be implemented in hardware or software depending on the characteristics of the application, and the type of voter selected. Many voting algorithms have been defined in the literature, each with particular strengths and weaknesses. Having surveyed more than 70 references from the literature, a functional classification is used in this paper to provide taxonomy of those voting algorithms used in safety-critical applications. We classify voters into three categories: generic, hybrid, and purpose-built voters. Selected algorithms of each category are described, for illustrative purposes, and application areas proposed. Approaches to the comparison of algorithm behavior are also surveyed. These approaches compare the acceptability of voter behavior based on either statistical considerations (e.g., number of successes, number of benign or catastrophic results), or probabilistic computations (e.g., probability of choosing correct value in each voting cycle or average mean square error) during q voting cycles.
Citation
Latif-Shabgahi, G., Bass, J., & Bennett, S. (2004). A taxonomy for software voting algorithms used in safety-critical systems. IEEE Transactions on Reliability, 53(3), https://doi.org/10.1109/TR.2004.832819
Journal Article Type | Article |
---|---|
Publication Date | Sep 3, 2004 |
Deposit Date | Dec 18, 2023 |
Journal | IEEE Transactions on Reliability |
Print ISSN | 0018-9529 |
Publisher | Institute of Electrical and Electronics Engineers |
Peer Reviewed | Peer Reviewed |
Volume | 53 |
Issue | 3 |
DOI | https://doi.org/10.1109/TR.2004.832819 |
You might also like
Managing non‐functional requirements in agile software development
(2021)
Journal Article
An architecture governance approach for Agile development by tailoring the Spotify model
(2021)
Journal Article
Overcoming team boundaries in agile software development
(2021)
Journal Article
Scrum for product innovation : a longitudinal embedded case study
(2018)
Journal Article