Practical emulation of software defects in source code

G Pereira, R Barbosa, H Madeira�- 2016 12th European�…, 2016 - ieeexplore.ieee.org
G Pereira, R Barbosa, H Madeira
2016 12th European dependable computing conference (EDCC), 2016ieeexplore.ieee.org
Software fault injection is a fundamental technique to evaluate the behavior of systems in
presence of software defects. However, in spite of the considerable number of software fault
injection proposals, the lack of readily available and practical tools persists as the most
serious limitation to the generalized use of software fault injection. This paper describes a
fault injection tool designed to simplify the software fault injection process. The tool modifies
the source code of target programs by altering the abstract syntax tree and producing�…
Software fault injection is a fundamental technique to evaluate the behavior of systems in presence of software defects. However, in spite of the considerable number of software fault injection proposals, the lack of readily available and practical tools persists as the most serious limitation to the generalized use of software fault injection. This paper describes a fault injection tool designed to simplify the software fault injection process. The tool modifies the source code of target programs by altering the abstract syntax tree and producing software patches automatically. Several key challenges were addressed in the development of the tool. Firstly, we formally describe the software fault injection operators, which has been neglected in previous proposals. Secondly, we propose a comprehensive test suite to verify the correctness of software fault injectors. Thirdly, we improve the performance of the fault injection process by compiling only the file in which a defect is injected and linking/installing that file. Finally, we examine the implications of dealing with macros, and the limitations that source code macros impose on software fault injection. The results of injecting software faults into the Apache web server, as an example of possible target, show how these challenges have been addressed.
ieeexplore.ieee.org
Showing the best result for this search. See all results