A Software reliability model with a fault detection rate function of the generalized exponential distribution †
Kwang Yoon Song 1 · In Hong Chang 2
12 Department of Computer Science and Statistics, Chosun University
Received 26 February 2020, revised 10 March 2020, accepted 10 March 2020
Abstract
The software reliability model is modeled on the basis of the number of software failures and the interval time between failures, and predicts how failures will occur in the future by estimating reliability evaluation measures such as failure interval time, software reliability and failure rate, In general, software systems are known to degrade performance and increase failure rate as their service life increases. Therefore, efforts have been made to expand the exponential distribution assuming a constant failure rate. In this paper, we propose a new software reliability model with a fault detection rate function of the generalized exponential distribution based on a non-homogeneous Poisson process (NHPP). We examine the goodness-of-fit of a new NHPP software reliability model and other existing models based on two data sets. The comparative results for the goodness-of-fit show that the proposed model does significantly better than the existing models.
Keywords: Fault detection rate, generalized exponential distribution, non-homogeneous Poisson process, software reliability.
1. Introduction
The main goal of the software development is on improving the reliability and stability of a software system. Since the 1970s, we have become aware of the importance of developing software reliability models and have begun to develop software reliability models (Song and Chang, 2017). Software reliability model is the most representative method for predicting the reliability of software. The software reliability model is modeled on the basis of the number of software failures and the interval time between failures, and predicts how failures will occur in the future by estimating reliability evaluation measures such as failure interval time, software reliability and failure rate. First of all, Goel and Okumoto (1979) presented a software reliability model considering an exponential curve based on the non-homogeneous
† This study was supported by research funds from Chosun University, 2019.
1
Researcher (Post-Doc), Department of Computer Science and Statistics, Chosun University, Gwangju 61452, Korea.
2
Corresponding author: Professor, Computer Science and Statistics, Chosun University, Gwangju 61452,
Korea. E-mail: [email protected]
curves, or a mixture of exponential and S-shaped curves (Yamada et al., 1983; Ohba, 1984;
Pham, 2006). The exponential distribution is relatively easy to calculate reliability measures and plays an important role in reliability engineering theory such as product reliability prediction and reliability test design. In general, parts and systems are known to degrade performance and increase failure rate as their service life increases. Therefore, efforts have been made to expand the exponential distribution assuming a constant failure rate. Gupta and Kundu (1999) proposed the probability density function (PDF) and the cumulative distribution function (CDF) of the generalized exponential (GE) distribution by
f (t) = αbe −bt (1 − e −bt ) α−1 , F (t) = (1 − e −bt ) α . (1.1) The two parameters of the GE distribution represent the shape (α > 0) and the scale parameter (b > 0) like the gamma and Weibull distributions. The exponential distribution is a particular case of the GE distribution when α = 1. Gupta and Kundu (1999) also inves- tigated some of their properties. The GE density function varies significantly depending on the shape parameter α. Also, the hazard function is a non-decreasing function if α > 1, and it is a non-increasing function if α < 1. For α = 1, it is constant. The GE distribution has lots of properties which are quite similar in nature to those of the gamma distribution but it has explicit expressions for the distribution and survival functions like a Weibull distri- bution. Some researcher also provide some mathematical properties for each exponentiated distribution (Nadarajah and Kotz, 2006; Nassar and Eissa, 2003; Pak et al., 2018; Lee et al., 2018). The GE distribution extend the exponential distribution but in different ways.
Therefore, it can be used as an alternative to the Weibull and gamma distributions and in some situations it might work better in terms of fitting than the other two distributions although it can not be guaranteed. It is expected that the GE distribution also should enjoy those properties (Barreto-Souza et al., 2010). In this paper, we discuss a new software relia- bility model with a fault detection rate function of the generalized exponential distribution.
In Section 2, we propose a fault detection rate function of the GE distribution and a new mean value function of the NHPP software reliability model. Criteria for model comparisons and selection of the best model are discussed, and model analysis and results are discussed in Section 3. Finally, Section 4 presents the conclusions and remarks.
2. A software reliability model
2.1. A general NHPP software reliability model
A counting process {N (t), t ≥ 0}, is said to be a non-homogeneous Poisson process (NHPP) with intensity function λ(t), if N (t) follows a Poisson distribution with the mean value function m(t), i.e.,
P {N (t) = n} = {m(t)} n
n! e −m(t) , n = 0, 1, 2, · · · .
The mean value function m(t), which is the expected cumulative number of faults detected
at time t can be expressed as
m(t) = Z t
0
λ(s)ds,
where λ(t) represents the fault intensity function.
A general mean value function m(t) of many NHPP software reliability models is proposed the existing NHPP models as follows (Pham et al., 1997);
dm(t)
dt = h(t)[a(t) − m(t)]. (2.1)
The solution for (2.1) is
m(t) = e −H(t) [m 0 + Z t
t
0a(τ )h(τ )e H(τ ) dτ ], (2.2)
where, H(t) = R t
t
0h(s)ds and m(t 0 ) = m 0 is the marginal condition of (2.2) with t 0 repre- senting the stating time of the testing process. Different values of the fault content function a(t) of the software and the fault detection rate function h(t), which reflect various assump- tions of the software test process, can be used to solve the differential equation (2.1) to obtain the mean value function m(t).
2.2. A new NHPP software reliability model
In this paper, a new NHPP software reliability with a fault detection rate function of the generalized exponential distribution is presented. We apply (2.1) and (2.2), which are assumptions of the existing NHPP software reliability model (Goel and Okumoto, 1979), and add the following assumptions :
• The initial condition of the mean value function m(t) is m(0) = 0;
• a(t) = a is the expected number of faults that exist in the software before testing;
• The fault detection rate can be expressed by h(t);
We can derive the mean value function m(t) based on the assumptions and differential equations.
dm(t)
dt = h(t)[a − m(t)],
m(t) = a[1 − e − R
0th(s)ds ]. (2.3)
We assume that the fault detection rate function has a generalized exponential distribution
as proposed by Gupta and Kundu (1999);
Figure 2.1 Fault detection rate function
h(t) = f (t)
1 − F (t) = αbe −bt (1 − e −bt ) α−1 1 − (1 − e −bt ) α ,
where, b is the fault detection rate and α represents the shape factor. Figure 2.1 shows the graph of the fault detection rate function h(t).
We obtain a new mean value function m(t) for the NHPP software reliability with a fault detection rate function of the generalized exponential distribution that can be used to determine the expected number of software failures detected by time t by substituting the function h(t) into (2.3):
m(t) = a[1 − e −(αbt−ln(e
αbt−(e
bt−1)
α)) ].
3. Numerical examples
We estimate the parameters of the NHPP software reliability models with the help of a
developed Matlab and R programs based on the least squares estimation (LSE) method, and
to estimate the goodness-of-fit of all models in Table 3.1. The goodness-of-fit of the model
can be confirmed by well-known criteria. Table 3.1 summarized the well-known software
reliability models.
Table 3.1 Software reliability models
N0. Model m(t)
1 Goel-Okumoto (1979) m(t) = a(1 − e
−bt)
2 Yamada et al. (1983) m(t) = a(1 − (1 + bt)e
−bt)
3 Ohba (1984) m(t) =
a(1−e−bt)1+βe−bt
4 Yamada et al. (1986) m(t) = a(1 − e
−rα(1−e−βt)) 5 Yamada et al. (1986) m(t) = a(1 − e
−rα(1−e−β 2t2
)
)
6 Hossain-Dahiya (1993) m(t) = log
h
(e
a− c) /
e
ae−bt− c i 7 Pham (2006) m(t) = a(1 − e
−bt) 1 + (b + d)t + bdt
28 Pham (2007) m(t) = m
0(
γtγt+10+1
)e
−γ(t−t0)+ α(γt + 1) γt − 1 + (1 − γt
0)e
−γ(t−t0)9 Proposed Model m(t) = a[1 − e
−(αbt−ln(eαbt−(ebt−1)α))]
3.1. Criteria for model comparison
Eight common criteria, namely, the mean squared error (MSE), the root mean squared error (RMSE), the R-square (R 2 ), the adjusted R-square (Adj R 2 ), the sum of absolute errors (SAE), the mean absolute errors (MAE), variation and the root mean square prediction errors (RMSPE) the will be used as criteria for the model estimation of the goodness-of-fit, and to compare the proposed model with other existing models, as listed in Table 3.1. The closer the value of these six criteria, i.e., MSE, RMSE, SAE, MAE, variation and RMSPE, to zero, the better the model fit. On the other hand, it should be close to 1. These criteria are described as follows in Table 3.2 Here, y i is the total number of failures observed at time t i , m is the number of unknown parameters in the model, and m(t i ) is the estimated cumulative number of failures at t i for i = 1, 2, · · · , n.
The Bias is given as;
Bias = 1 n
n
X
i=1
(m(t i ) − y i ).
Table 3.2 List of criteria
No. Criteria Formula
1 MSE
Pn
i=1(m(ti)−yi)2 n−m
2 RMSE
r
Pni=1(m(ti)−yi)2 n−m
3 R
21 −
Pn
i=1(m(ti)−yi)2 Pn
i=1(yi− ¯yi)2
4 Adj R
21 − (
1−R2)
(n−1)n−m−1
5 SAE P
ni=1
|m(t
i) − y
i|
6 MAE
Pn
i=1|m(ti)−yi| n−m
7 Variation
r
Pn
i=1(yi−m(ti)−Bias)2 n−1