Measurement and modeling of computer reliability as affected by system activity
ACM Transactions on Computer Systems (TOCS)
Fault Injection for Dependability Validation: A Methodology and Some Applications
IEEE Transactions on Software Engineering
Fault Injection Experiments Using FIAT
IEEE Transactions on Computers
Automatic Generation of Path Covers Based on the Control Flow Analysis of Computer Programs
IEEE Transactions on Software Engineering
Experimental study of software dependability
Experimental study of software dependability
Experimental analysis of computer system dependability
Fault-tolerant computer system design
The causes and effects of infeasible paths in computer programs
ICSE '85 Proceedings of the 8th international conference on Software engineering
FOCUS: An Experimental Environment for Fault Sensitivity Analysis
IEEE Transactions on Computers
Fault Injection and Dependability Evaluation of Fault-Tolerant Systems
IEEE Transactions on Computers
ISSRE '96 Proceedings of the The Seventh International Symposium on Software Reliability Engineering
FTCS '95 Proceedings of the Twenty-Fifth International Symposium on Fault-Tolerant Computing
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
Coverage estimation using statistic of the extremes for when testing reveals no failures: 3
IEEE Transactions on Computers
Path-Based Error Coverage Prediction
Journal of Electronic Testing: Theory and Applications
Coverage Estimation Using Statistics of the Extremes for When Testing Reveals No Failures
IEEE Transactions on Computers
IPDPS '01 Proceedings of the 15th International Parallel & Distributed Processing Symposium
Reflections on Industry Trends and Experimental Research in Dependability
IEEE Transactions on Dependable and Secure Computing
Robustness Testing of Java Server Applications
IEEE Transactions on Software Engineering
Concurrent Detection of Control Flow Errors by Hybrid Signature Monitoring
IEEE Transactions on Computers
Assembly-Level pre-injection analysis for improving fault injection efficiency
EDCC'05 Proceedings of the 5th European conference on Dependable Computing
POWER-MODES: POWer-EmulatoR- and MOdel-Based DEpendability and Security Evaluations
ACM Transactions on Reconfigurable Technology and Systems (TRETS)
Hi-index | 15.04 |
The objective of fault injection is to mimic the existence of faults and to force the exercise of the fault tolerance mechanisms of the target system. To maximize the efficacy of each injection, the locations, timing, and conditions for faults being injected must be carefully chosen. Faults should be injected with a high probability of being accessed. This paper presents two fault injection methodologies驴stress-based injection and path-based injection; both are based on resource activity analysis to ensure that injections cause fault tolerance activity and, thus, the resulting exercise of fault tolerance mechanisms. The difference between these two methods is that stress-based injection validates the system dependability by monitoring the run-time workload activity at the system level to select faults that coincide with the locations and times of greatest workload activity, while path-based injection validates the system from the application perspective by using an analysis of the program flow and resource usage at the application program level to select faults during the program execution. These two injection methodologies focus separately on the system and process viewpoints to facilitate the testing of system dependability. Details of these two injection methodologies are discussed in this paper, along with their implementations, experimental results, and advantages and disadvantages.