Title
Practical Emulation of Software Defects in Source Code
Abstract
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.
Year
DOI
Venue
2016
10.1109/EDCC.2016.19
2016 12th European Dependable Computing Conference (EDCC)
Keywords
Field
DocType
Software Fault Injection,Software Faults,Software Defects
Computer science,Software system,Real-time computing,Software maintenance,Fault injection,Software development,Distributed computing,Software engineering,Software fault tolerance,Software verification and validation,Software construction,Software framework,Embedded system
Conference
ISBN
Citations 
PageRank 
978-1-5090-1583-2
3
0.40
References 
Authors
12
3
Name
Order
Citations
PageRank
Goncalo Pereira130.40
Raul Barbosa211019.08
Henrique Madeira31307122.00