The Use of Self Checks and Voting in Software Error Detection: An Empirical Study
IEEE Transactions on Software Engineering
Unreliable failure detectors for reliable distributed systems
Journal of the ACM (JACM)
On systematic design of globally consistent executable assertions in embedded software
Proceedings of the joint conference on Languages, compilers and tools for embedded systems: software and compilers for embedded systems
PROPANE: an environment for examining the propagation of errors in software
ISSTA '02 Proceedings of the 2002 ACM SIGSOFT international symposium on Software testing and analysis
Detectors and Correctors: A Theory of Fault-Tolerance Components
ICDCS '98 Proceedings of the The 18th International Conference on Distributed Computing Systems
The Complexity of Adding Failsafe Fault-Tolerance
ICDCS '02 Proceedings of the 22 nd International Conference on Distributed Computing Systems (ICDCS'02)
Proving the Correctness of Multiprocess Programs
IEEE Transactions on Software Engineering
Putting Detectors in Their Place
SEFM '05 Proceedings of the Third IEEE International Conference on Software Engineering and Formal Methods
Designing efficient fail-safe multitolerant systems
FORTE'05 Proceedings of the 25th IFIP WG 6.1 international conference on Formal Techniques for Networked and Distributed Systems
Hi-index | 0.00 |
In this paper, we present an approach that helps in the design and assessment of detectors. A detector is a program component that asserts the validity of a predicate in a given program state. We first develop a theory of error detection, and identify two main properties of detectors, namely completeness and accuracy. Given the complexity of designing efficient detectors, we introduce two metrics, namely completeness (C) and inaccuracy (I), that capture the operational effectiveness of detector operations, and each metric captures one efficiency aspect of the detector. Subsequently, we present an approach for experimentally evaluating these metrics, and is based on fault-injection. The metrics developed in our approach also allow a system designer to perform a cost-benefit analysis for resource allocation when designing efficient detectors for fault-tolerant systems. The applicability of our approach is suited for the design of reliable component-based systems.