Download:
|
by Pankaj Jalote, Rajib Ghosh
http://www.ccrc.wustl.edu/~rajib/cost.ps
Add To MetaCart
Abstract:
For a software system, there are two clear methods to achieve a target reliability. One is to increase the reliability of a given software to the desired level by spending more resources in testing, and the other is to use multiversion software to increase the reliability. In this paper we propose an approach based on software reliability models, to analyze the cost effectiveness of multiversion software for achieving a given target reliability as compared to achieving it by using a single version system. By using software reliability models the cost of raising the reliability of a software from a given reliability to the desired reliability can be estimated as the testing time needed to achieve the target. Total time for software development can be estimated as a function of this testing time. Total estimated development time is then used as the cost metric for comparison. As an example of this approach, we have used a few of the well known software reliability models to perform the cost effectiveness analysis. The analysis shows that a three version system is cost effective only if the testing cost is very high and even then when the mission time for software usage is a small fraction of the mean time to failure of the software.
Citations
|
688
|
Software Engineering Economics
– Boehm
- 1981
|
|
210
|
Probability and Statistics with Reliability, Queuing and Computer Science Applications
– Trivedi
- 2002
|
|
162
|
An Experimental Evaluation of the Assumption of Independence in Multiversion Programming
– Knight, Leveson
- 1986
|
|
90
|
Software rejuvenation: Analysis, module and applications
– Huang, Kintala, et al.
- 1995
|
|
87
|
Time Dependent – Error Detection Rate Models for Software Reliability and Other Performance Measures
– Goel, Okumoto
- 1979
|
|
85
|
N-version programming: A fault-tolerance approach to reliability of software operation
– Chen, Avizienis
- 1978
|
|
75
|
Fault Tolerance by Design Diversity: Concepts and Experiments
– Avizienis, Kelly
- 1984
|
|
69
|
Software implemented fault tolerance: Technologies and experience
– Huang, Kintala
- 1993
|
|
68
|
Checkpointing and its applications
– Wang, Huang, et al.
- 1995
|
|
61
|
Software reliability models: Assumptions, limitations, and applicability
– Goel
- 1985
|
|
59
|
Data diversity: an approach to software fault tolerance
– Ammann, Knight
- 1988
|
|
31
|
Software reliability research
– Jelinski, Moranda
- 1972
|
|
29
|
Fault-tolerant software reliability modeling
– Scott, Gault, et al.
- 1987
|
|
22
|
Modeling of correlated failures and community error recovery in multiversion software
– Nicola, Goyal
- 1990
|
|
19
|
The Methodology of N-Version Programming
– Avizienis
- 1995
|
|
15
|
A theoretical basis for the analysis of multiversion software subject to coincident errors
– Lee
- 1985
|
|
15
|
Predicting Software Reliability
– Littlewood
- 1989
|
|
14
|
Probabilistic models for software reliability prediction,” in Statistical Computer Performance Evaluation
– Shooman
- 1972
|
|
13
|
A Bayesian Reliability Growth Model for
– Littlewood, Vernall
- 1973
|
|
7
|
System structure for software fault tolerance
– Randall
- 1975
|
|
5
|
A Specification Oriented Multi-Version Software Experiment
– Kelly, Avizienis
- 1983
|
|
4
|
A Large Scale Second Generation Experiment in MultiVersion Software: Description and Early Results
– Kelly, Eckhardt, et al.
- 1988
|
|
2
|
In search of diversity: A six-language study of fault-tolerant flight control software
– Avizienis, Lyu, et al.
- 1988
|
|
2
|
An introduction to software reliability modeling
– Bittanti, Bolzern, et al.
- 1988
|
|
2
|
Increasing system availability through on-line software version change
– Gupta, Jalote
- 1993
|
|
1
|
Laprie, "Dependability evaluation of software fault tolerance
– Arlat, Kanoun, et al.
- 1988
|
|
1
|
A Logarithmic Execution time model for software reliability measurement
– Musa, Okumoto
|