Issue No. 02 - February (1991 vol. 17)
DOI Bookmark: http://doi.ieeecomputersociety.org/10.1109/32.67598
<p>The authors compared two major approaches to the improvement of software-software fault elimination and software fault tolerance-by examination of the fault detection (and tolerance, where applicable) of five techniques: run-time assertions, multiversion voting, functional testing augmented by structural testing, code reading by stepwise abstraction, and static data-flow analysis. The focus was on characterizing the sets of faults detected by the techniques and on characterizing the relationships between these sets of faults. Two categories of questions were investigated: (1) comparison between fault elimination and fault tolerance techniques and (2) comparisons among various testing techniques. The results provide information useful for making decisions about the allocation of project resources, show strengths and weaknesses of the techniques studies, and indicate directions for future research.</p>
software reliability; software fault tolerance; fault elimination; run-time assertions; multiversion voting; functional testing; structural testing; code reading; stepwise abstraction; static data-flow analysis; project resources; fault tolerant computing; program testing; software reliability
T. Shimeall and N. Leveson, "An Empirical Comparison of Software Fault Tolerance and Fault Elimination," in IEEE Transactions on Software Engineering, vol. 17, no. , pp. 173-182, 1991.