DocumentCode :
832500
Title :
Emulation of Software Faults: A Field Data Study and a Practical Approach
Author :
Durães, João A. ; Madeira, Henrique S.
Author_Institution :
Inst. Superior de Engeharia de Coimbra
Volume :
32
Issue :
11
fYear :
2006
Firstpage :
849
Lastpage :
867
Abstract :
The injection of faults has been widely used to evaluate fault tolerance mechanisms and to assess the impact of faults in computer systems. However, the injection of software faults is not as well understood as other classes of faults (e.g., hardware faults). In this paper, we analyze how software faults can be injected (emulated) in a source-code independent manner. We specifically address important emulation requirements such as fault representativeness and emulation accuracy. We start with the analysis of an extensive collection of real software faults. We observed that a large percentage of faults falls into well-defined classes and can be characterized in a very precise way, allowing accurate emulation of software faults through a small set of emulation operators. A new software fault injection technique (G-SWFIT) based on emulation operators derived from the field study is proposed. This technique consists of finding key programming structures at the machine code-level where high-level software faults can be emulated. The fault-emulation accuracy of this technique is shown. This work also includes a study on the key aspects that may impact the technique accuracy. The portability of the technique is also discussed and it is shown that a high degree of portability can be achieved
Keywords :
program testing; software fault tolerance; software performance evaluation; software portability; G-SWFIT; computer system; emulation accuracy; fault representation; fault tolerance mechanism; field data study; machine code-level; programming structure; programming structures; software fault injection technique; Computer bugs; Computer industry; Emulation; Fault tolerant systems; Hardware; Programming; Software measurement; Software reliability; Software systems; Software testing; Fault injection; software faults; software reliability.;
fLanguage :
English
Journal_Title :
Software Engineering, IEEE Transactions on
Publisher :
ieee
ISSN :
0098-5589
Type :
jour
DOI :
10.1109/TSE.2006.113
Filename :
4015509
Link To Document :
بازگشت