SOFTWARE RELIABILITY MODELS: A REVIEW

G.Gayathry, Asst.Professor

Dept. of Computer Science

Mar Gregorios College, Mogappair West.

Chennai-37.

E-mail:

Abstract

In recent years, the size and complexity of computer system has grown in a very rapid manner. Developing reliable software has become a major issue of the industrial world. It is a difficult task to determine whether or not the software being delivered is reliable. The paper discusses about the role played by software reliability models. The Taxonomy and various dimensions of SRM are discussed. The models under review reflect either infinite or finite number of failures. All exponential distribution models point towards finite failures. On the other hand infinite failures are pointed out by logarithmic distribution model.

Index Terms -- Software reliability, Dimension of Models, Model’s Taxonomy.

I. Introduction

With the ever increasing role that software is playing in our systems, concern has steadily grown over the reliability of the software. Dependency and requirements on computer increases the difficulties and failures. To develop reliable software it is necessary to prevent the failures and fault rate of software that is being developed.

This paper presents a review on the software reliability model. The study highlights various dimensions of reliability models. Section II defines software reliability. Section III includes an overview of software reliability models. Section IV proposes taxonomy on reliability models. At last paper concludes in Section V.

II.Software Reliability

The key attribute to software quality is software reliability. Software Reliability is defined as ‘the probability of failure free operation for the specified period of time in a specified environment [1].

III.Software Reliability Model

SRM include estimation and prediction of software [1].Models is classified in terms of five different attributes. The dimensions and characteristics of models are as shown in table 1.

TABLE 1

CHARACTERISTICS OF MODELS DIMENSION

S.No / Dimensions / Characteristics
1 / Time Domain / Execution time and Clock time
2 / Category / Finite & Infinite failures
3 / Type / Poisson & Binomial
4 / Class / Finite Failures
5 / Family / Infinite Failures

IV.Model’s Taxonomy

Table 2 shows software reliability models

TABLE 2

RELIABILITY MODELS

Models / Proposed by / Year / Type
JMM / Z.Jelinski Paul and B.Morandal / 1972 / Binomial
GM / Amrit Goel and
Kazu Okumoto / 1979 / Poisson
ETM / John Musa / 1975
HEM / Ohba / 1984
WM / Weibul / 1983 / Binomial
SSM / S. Yamada, M.
Ohba, and S.Osaki / 1983 / Gamma
DM / J.T Duane / 1964
GM / Paul B. Moranda / 1979 / Binomial
LPM / Musa –Okumoto / 1984 / Poisson
LVRG / A. Ghaly, P. Chan,
& B. Littlewood / 1986 / Gamma

4.1 Exponential Failure Time Model[EFTM]

All finite failure models come under this category. Poisson and Binomial are the two categories of EFTM.The Binomial and Poisson types are based on per-fault constant hazard rate. Hazard rate function is defined as a function of the remaining number of faults and the failure function is exponential.

H (Z) = f (RNF) +f ((exp (FF)) (1)

Where, H (Z) = Hazard rate.

RNF=Renaming number of faults.

FF= Failure Function.

4.1.1 J-M Model (JMM):

It assumes N software faults at the start of testing, failure occur purely at random, and all faults contribute equally to cause a failure during testing. During testing phase the number of failures at first is finite. Concurrent mitigation of errors is the main strength of the model and error does not affect the remaining errors.

(MTBF) t =1/ (N-(i-1)) (2)

Where, N= Total number of faults.

i= Number of fault occurrences.

MTBF=Mean Time between failure.

t= Time between the occurrence of the

(i-1) and ith fault occurrences.

4.1.2 G-O Model (GOM):

The cumulative number of faults detected at time t follows a Poisson distribution. All faults are treated as independent. The faults once detected are removed immediately and no new faults are introduced. Delivery of software within cost estimates is also decided by this model.

4.1.3Execution Time Model (ETM):

Musa‘s Basic model assumes that all faults are equally likely to occur and independent of each other .The intensity function is directly proportional to the number of faults remaining in the program and fault correction is proportional to the number of failure occurrence rate.

µ (t) =β0 (1-exp (-β1t)) (3)

Where, µ (t) = mean value function at time t.

β0=Total number of faults.

4.1.4 Hyper Exponential Model (HEM):

This model is based on the assumption that a program has a number of clusters of modules, each having a different initial number of errors and a different failure rate.

4.2. Weibull and Gamma Failure Models

4.2.1 Weibull Model (WM):

The model is used for hardware reliability. The model incorporates both increasing/decreasing failure rates due to high flexibility [6]. This model is a finite failure model.

MTTF = ∫ (1-F (t)) =∫exp (-βtα) (4)

Where, MTTF = Mean Time to Failure

α, β =Weibull distribution parameters.

t=Time of failure.

4.2.2 S-Shaped Model (SSM):

The error detection rate differs among faults. In this model time between failures depends on the time to failure. Mitigation of fault occurs immediately as failure happened.

µ (t) =α [1-(1+βt) e-βt] (5)

Where µ (t) =mean value function at time t.

α, β=Distribution parameters.

e-βt = Exponential distribution.

4.3 Infinite Failure Time Model (IFTM)

4.3.1 Duane’s Model (DM):

This model is useful for constructing curves for predicted or planned growth in order to map the progress of reliability growth. This model compares the testing time with failure rate.

µ (t)/T = (αTβ/) T (6)

Where, µ (t) =Mean value function at time t

αTβ =Expected number of failures by time t.

T=Total testing.

4.3.2 Geometric Model (GM):

The time between failures is exponentially distributed and mean time failure decreased geometrically [8].

E (Xi) =1/Z (ti-1) (7)

Where, E (Xi) = Expected time between failure.

Z (ti-1) =Fault detection rate.

4.3.3 Logarithmic Poisson (LM):

The model follows NHPP. When failure occur distribution decreases exponentially [2]. The possible number of failures over the time is a logarithmic function therefore it is called Logarithmic Poisson [6].

λ (t) = λ 0 exp (-θ µ (t)) (8)

Where, µ (t) =Mean value function at time t.

θ =failure rate decay parameter.

λ (t) = Failure intensity function.

4.4. Bayesian Models (BM)

4.4.1 L-V Reliability Growth Model:

This model treats the successive rate of failures, as random variables. Fault correction is obtained by fixing fault [7].

D (i) = µ (1λ (i)) (9)

Where, λ (i) =Sequence of independent variable.

D (i) =Distribution for the ithfailure.

5. Conclusion

Software reliability is a measuring technique for defects that causes software failures in which software behavior is different from the specified behavior in a defined environment with fixed time. On the basis of the review the taxonomy on software reliability models has been presented as a major contribution. This taxonomy is based on the various dimensions of reliability models. The major finding of the study is that the models under review reflect either infinite or finite number of failures. All exponential distribution based models reflect finite failures and logarithmic distribution based model reflect infinite failures.

REFERENCES

[1] R.A Khan, K. Mustafa and S.I Ahson, “Operation Profile-A key Factor for Reliability Estimation”, Universities

Press, Gautama Das & V P Gulati, CIT, 2004, pp 347-354.

[2] M. R. Lyu, “Software Reliability modeling Survey”, IEEE Computer Society Press, AT&T Lab, 1996, pp 71-117.

[3] J. Peter Rooney, “Customer satisfactions”, In Proceedings of annual Reliability and Maintainability Symposium, 24-27 Jan. 1994 pp.376 – 381.

[4] W. Farr, “Software reliability modeling survey”, Naval Surface Warfare Center, Technical Foundation, 1996, pp.73-109.

[5] J. D Musa, "A Theory of Software Reliability and Its Applications," IEEE Transactions on Software Engineering, vol. SE-1, no. 3, 1975, pp. 312-327.

[6] M. Ohba, "Software Reliability Analysis Models," IBM Journal of Research and Development, vol. 21, no. 4, July

1984, pp. 428-443.

[7] A. A. Ghaly, P. Chan, and B. Littlewood, “Evaluation of

Competing Software Reliability Predictions,” IEEE, September.1986, pp. 950-967.

[8] J. Lian, “Software Reliability Presentation”, ECE-355Tutorial, 2004,

[9].A.Yadav”Critical review on software reliability models”.