Fault Injection for Dependability Validation: A Methodology and Some Applications
IEEE Transactions on Software Engineering
An axiomatic basis for computer programming
Communications of the ACM
DOCTOR: an integrated software fault injection environment for distributed real-time systems
IPDS '95 Proceedings of the International Computer Performance and Dependability Symposium on Computer Performance and Dependability Symposium
A fault injection tool for testing web services composition
TAIC PART'10 Proceedings of the 5th international academic and industrial conference on Testing - practice and research techniques
Hi-index | 0.00 |
Fault injection is a powerful strategy to test security protocols and fault-tolerant systems. The first step in building a complete fault injection process is the specification of a fault scenario for the test experiment. This includes the specification of the fault injector location and the type and time of injected faults. However, the existing fault description languages are often non-formal and/or tool-specific, which leads to many specification ambiguities. To address this problem, we propose a high level fault injection formalism based on Hoare logic rules. We describe fault injection operations as Hoare triples extended with primitives to express the timing of actions. This allows us to specify various types of faults and thus, makes the proposed formalism suitable for most communication systems, including protocols and distributed applications. This paper also presents a passive testing approach based on the proposed formalism to check fault injection process and outlines a case study on Web services for illustration.