MetaCartSign in to MyCiteSeer

Include Citations | Advanced Search | Help

Include Citations | Advanced Search | Help

  Diversity in the software development process (1997) [1 citations — 0 self]

Download:
pdf | ps
by Victoria Hilford, Michael R. Lyu, Bojan Cukic, Anouar Jamoussi, Farokh B. Bastani
In Proceedings of IEEE WORDS’97
http://www.cse.cuhk.edu.hk/~lyu/postscript/words97.ps
Add To MetaCart

Abstract:

Various methods have been proposed for building faulttolerant software in an effort to provide substantial improvements in software reliability for critical applications, such as flight control, air-traffic control, patient monitoring, or power plant monitoring. At execution time, the fault-tolerant structure attempts to cope with the effect of those faults that have survived the development process. The two best-known methods of building fault-tolerant software are n-version programming and recovery blocks. To tolerate faults, both of these techniques rely on design diversity, i.e., the availability of multiple implementations of a specification. Software engineers assume that the different implementations use different designs and, thereby, it is hoped, contain different faults. Our study uses a novel method of incorporating diversity in the development of one version of the software. We term this approach the pipeline method of software development. Its purpose is to eliminate as many software faults as possible before the testing phase. The method was applied to the specification of a real, automatic airplane-landing problem. The results of the pipeline development method are presented. 1.

Citations

425 System Structure for Software Fault Tolerance – Randell - 1975
162 An Experimental Evaluation of the Assumption of Independence in Multiversion Programming – Knight, Leveson - 1986
97 On the implementation of n-version programming for software fault tolerance during execution – Avizienis, Chen - 1977
85 N-version programming: A fault-tolerance approach to reliability of software operation – Chen, Avizienis - 1978
50 Distributed Execution of Recovery Blocks: An Approach for Uniform Treatment of Hardware and Software Faults in Real-Time Applications – Kim, Welch - 1989
45 Achieving software quality with testing coverage measures – Horgan, London, et al. - 1994
29 The evolution of the recovery block concept – Randell, Xu - 1995
28 Improving the N-Version Programming Process Through the Evolution of a Design Paradigm – Lyu, He - 1993
21 A Coverage Analysis Tool for the Effectiveness of Software Testing – Lyu, Horgan, et al. - 1994
19 The Methodology of N-Version Programming – Avizienis - 1995
18 In Search of Effective Diversity: A Six-Language Study of Fault-Tolerant Flight Control Software – Avizienis, Lyu, et al. - 1988
11 Fault-tolerant Software – Hecht, Hecht - 1986
10 Learning to Live with Uncertainty in our Software – Littlewood - 1994
6 On the Performance of Software Testing Using Multiple Versions – Brilliant, Knight, et al. - 1990
5 Software Reliability Measurements in N-Version Software Execution Environment – Lyu - 1992
4 Software diversity metrics and measurements – Lyu, Chen, et al. - 1992
3 Software requirements document for a faulttolerant flight control computer – Lyu - 1991
2 Sicking, "A review of research and methods for producing high consequence software – Collins, Dalton, et al. - 1995