You are on page 1of 22

International Journal of Software Engineering & Applications (IJSEA), Vol.7, No.

3, May 2016

A COMPARISON STUDY OF ESTIMATION METHODS


FOR GENERALIZED JELINSKI-MORANDA MODEL
BASED ON VARIOUS SIMULATED PATTERNS
Lutfiah Ismail Al turk 1 and Eftekhar Gabel Alsolami2
lturk@kau.edu.sa ,ekalsuami@uj.edu.sa
1

Statistics Department,King Abdulaziz University,Kingdom of Saudi Arabia


2

Mathematics Department,University of Jeddah,Kingdom of Saudi Arabia

ABSTRACT
In this paper three methods for estimating the parameters of the generalized Jelinski-Moranda (GJM)model are compared. The needed mathematical formulas for resolving the estimates are derived.
Because of the lack of various real data with changed input data size different simulation scenarios are
given to help achieving our goals. Illustrative algorithms for the simulation studies are given. First, the
accuracy of the GJ-M models estimators is checked based on two evaluation criteria. Moreover, several
generated models from the GJ-M general formula are evaluated based on three different methods of
comparison. Useful results for the software reliability modelling area are concluded.

KEYWORDS
Generalized Jelinski-Moranda (GJ-M) model, Simulations, Maximum likelihood estimation, Nonlinear
least squares estimation, Weighted nonlinear least squares estimation.

1. INTRODUCTION
The main interest of many costumers and developers is software reliability. Software reliability
model is a mathematical formula that describes the software failure process as a function of
factors, failure time and one of reliability measures. In fact, statistical modeling for quantifying
software reliability is a useful approach but before using this approach careful attention should be
paid to select the appropriate model that can best quantify and predict reliability. Selecting
inappropriate model can be considered as one of this approach limitations. In the ot her hand,
studying several models with different failure rate behavior among the huge numbers of proposed
reliability models during the last 45 years could help to avoid this limitation. The classical
Jelinski Moranda (J-M) model [ Jelinski and Moranda (1972)] is one of the most elementary
models, andit forms the basis of further software reliability models either as a modifications or as
an extensions. This model assumes that the failure rate is proportional to the number of remaining
faults and each fault contributes the same to the failure rate.The generalized Jelinski-Moranda
(GJ-M) model [Al turk and Alsolami (2016)] which also assumes that fault detection and
correction begins when a program contains N faults and all the faults have the same ratecould
offer several reliability sub-models with various failure rate behaviour based on its shape
parameter . Those generated sub-models could be checked for a given system with less effort
DOI: 10.5121/ijsea.2016.7303

27

International Journal of Software Engineering & Applications (IJSEA), Vol.7, No.3, May 2016

and time, the J-M model is a special case of this general model when = 1. The purpose of this
paper is to study the accuracy of the GJ-M models three estimators using the maximum
likelihood (ML), nonlinear least squares (NLS), weighted nonlinear least squares
(WNLS)estimation methods. Another purpose is to compare several generated models as special
cases from the GJ-M model based also on those three chosen estimation methods. Two studies
based on several simulated Pattern are conducted to achieve our purposes. Generating various
simulated patterns will help us to study various situations that could not be offered by the limited
available real data sets. Moreover, simulating different size of failure time data will help to
investigate the changing in the input data size.
The rest of this paper is arranged as follows: Section 2 describes the MLE, NLSE, and WNLSE
approaches for the GJ-M model. Section 3 illustrates the evaluation criteria that will be used in
our evaluation. Simulation studies will be discussed in Sections 4. In the end, Section 5 is the
conclusion of this paper.

2. PARAMETER ESTIMATION OF THE GENERLIZED JELINSKI-MORANDA


(GJ-M) MODEL
The GJ-M model which is suggested By Al turk and Alsolami in (2016) assumes that the amount
of debugging time between fault occurrences has a Weibull distribution. The faults rate is


proportional to the number of faults remaining multiplying by the term t  , and each fault
discovered is immediately removed thus reducing the number of faults by one. According to these
assumptions, the probability density function (pdf) of the GJ-M is defined as follows:
f t   = N i 1t 








(1)

Where
i : is the fault index.
:is a proportionality constant.
N: is the number of initial faults present in system.
:is the shape parameter.
t  : is the i time interval between detection of i 1 and i faults.

The reliability of this model can be obtained as follows:


R t   = e




(2)

Additionally, the mean time to failure can be represented by expression:


E t   = MTTF t  

= #N i 1$  '(


(3)
28

International Journal of Software Engineering & Applications (IJSEA), Vol.7, No.3, May 2016

While, the variance is given by:

var t   = E t  ,  -E t  .
=

' + 1(
,

 N i 1
0


%


0


%


1' 2 (
10 ' 2 (

 



0


, ' + 1(

 N i 1
0

 



1' 2 (
10 ' 2 (
0

(4)

More details and measures of reliability for the GJ-M model can be found in [Al turk and
Alsolami (2016)]

2.1. Maximum Likelihood Estimation (MLE) Method


Parameter estimation is of primary importance in software reliability prediction. The maximum
likelihood estimation (MLE) method is the most important traditional and widely used estimation
technique. This technique has several properties including consistency, efficiency and asymptotic
normality. For the purpose of estimating the unknown three parameters N, , and of the GJ-M
model using MLE method and based on the failure time data set #t , t , , , t 5 ; n > 0$, the
likelihood function will be defined as follows:
L N, ,  = 5 5 5= N i 1t  
e




(5)

To simplify the computation, the natural logarithm of both sides will be taken as follows:
5

ln L N, ,  = nln  + nln  + ? ln N i 1 + ? ln t 


=


5= ln t  5= N i 1t 

=

By taking the first partial derivative of Equation (6) with respect to , N and , we obtain:
@A ,,
@

BC D,E,
BD

=?
5

N i 1t  

=

1
=?
? t
N i 1
=

(6)

=

29

International Journal of Software Engineering & Applications (IJSEA), Vol.7, No.3, May 2016
BC D,E,
B

n

= + ? lnt  ?N i 1t  lnt 

=

=

Then by settingBC D,E,


= 0, BC D,E,
= 0, and BC D,E,
= 0, the ML estimates of the GJ-M
BE
BD
B
models three parameters should satisfy the following equations:

G=

H

H
K%DI I%J


5 H
K% 
H
K%

 

5
+


(7)

= 5= 



5= lnt  =

(8)


5 H
K% 

 L5
H
K%

 

(9)

2.2. Nonlinear Least Squares Estimation (NLSE) Method


The nonlinear least squares NLS estimates are obtained by minimizing the following objective
function:
AN N, ,  =

5= t 

%


2 

%
 
2 

,

(10)

Taking the first partial derivative of Equation (10), which assumes that each observation has an
equal weight, with respect to and N, and and equate the obtained equations to zero
D,E,
= 0, BPDCQB D,E, = 0] we obtain:
[BPDCQBE D,E, = 0, BPPDCQ
BD

G=

5=


R ' +


1( 5=

%
U%

2 

5
0 S=

 
2 

%


2 
%
G


5=

 
2 


2 

Where V z = X[ dt lntt Y
e




U%

(11)

(12)

30

International Journal of Software Engineering & Applications (IJSEA), Vol.7, No.3, May 2016

The NLS estimates of N and can be obtained by solving the Equations (12 and 13). Then by
substituting the obtained estimated values of N and into Equation (11), we get the NLS estimate
of.

2.3.Weighted Nonlinear Least Squares Estimation (WNLSE) Method


As seen from Equation (4), the variance of the GJ-M model varies with the inter-failure time data,
accordingly using the WNLSE method may give more accurate estimates of the models
parameters. The WNLS estimates will be obtained by minimizing the following objective
function:
\AN N, ,  =

5= w t 

%


2 

%
 
2 

,

(14)

Taking the first partial derivative of the above function with respect to , N and , and equate the
obtained equations to zero, we obtain Equations (15, 16 and 17):

G=

5=


R ' +

_ 

1( 5=

%
U%

2 

_

5
0 S=

 
2 

%


2 
%
G


5=

_

%


0

d5=

1
V ` + 1a b?

=

G 2L5 
2 
_  L5
%

2 

_ 

 
2 

(15)

\AN N, , 
=0
N


2 

' 2 (

\AN N, , 
=0

U%

(16)

\AN N, , 
=0

w t 

N i + 1
%


' 2 (
%
G


5=

%


' + 1(

%


?
=

G 2L5 
2 
_ L5
0


2 

w

N i + 1
0

c=
(17)
31

International Journal of Software Engineering & Applications (IJSEA), Vol.7, No.3, May 2016

Where V z = X[ dt lntt Y
e

Z

f and g can be obtained, then


By solving the Equations (16 and 17) using Gauss-Newton method N
g
f

G can be found by substituting N and in Equation (15).

3. EVALUATION CRITERIA

The mean of square errors (MSE), the root mean of square errors (RMSE), the mean absolute
errors (MAE) and the mean absolute percentage error (MAPE) criteria are used for the evaluation
purpose in our simulation studies. The lower the criteria value, the better performance we get.
The formulas of those criteria are shown in Table (1).
Table 1: Some evaluation criteria.

Criteria Name
MSE
[Zhanget al. (2003)].
MAPE
[Gentry et al. (1995)]
RMSE
[Chai and Draxler (2014)].

MAE
[Chai and Draxler (2014)].
Where
i : is thefault index.
yj : is the predicted value.
y :is the true value.
n: the sample size of the data
k: the number of parameters.

Criteria formula
5

1
? y yj ,
nk
=

G
l
l
5= `   a
l

100%

1
o
?y yj ,
nk
=

1
? y yj
nk
=

32

International Journal of Software Engineering & Applications (IJSEA), Vol.7, No.3, May 2016

4. SIMULATION STUDY
Simulation study was conducted to assess the performance of the GJ-M model under
different simulated patterns of software systems. A wide variety of situations were
generated by setting different values of the GJ-M models three parameters and various
sample sizes.In fact, our simulation is designed for two motivations: first to compare the
precision of the estimators; then to assess the performance of the different generated submodels of the GJ-M model, particularly, to focus on their performance for predicting
software reliability.
4.1 Simulation algorithms
Two simulation algorithms has been designed and coded in R programming language version
3.2.3 to help achieving our motivations:

Algorithm 1: For Part I


Step 1: Generate 15, 30, 50, and 100 independent uniform U (0,1) random variables.
Step 2: For each sample size and using the following equation:

t  = ln uN i 1 , the following four simulation scenarios will be generated:


 = 0.5, N = 150, and = 0.5, 1, 2.
 = 0.5, N = 250, and = 0.5, 1, 2.
 = 1.5, N = 150, and = 0.5, 1, 2.
 = 1.5, N = 250, and = 0.5, 1, 2.
Step 3: Define initial values of the models parameters and use Equation (6) and package nlminb
to obtain the maximum likelihood (ML) estimates of parameters.
Step 4: Define initial values of the models parameters and use Equation (10) and package
minpack.lm to obtain nonlinear least square (NLS) estimates of parameters.
Step 5: Define initial values of the models parameters, set w = 1/i where i = 1, 2, , n and use
Equation (14) and package minpack.lm to obtain the weighted nonlinear least squares (WNLS)
estimates of parameters.
Step 6: Use the MSE and MAPE formulas in Table (1) to check the accuracy of (ML, NLS, and
WNLS) estimates.
Step 7: For each sample size in Step 1, (Step 1 to 6) will be repeated a large number of times
(5000 times in our simulation study) and the average of the parameters estimates and assessment
criteria will be computed.
%

Algorithm 2: For Part II


Step 1:
Step 2:




Generate 100 independent uniform U (0,1) random variables.


Generate three simulated data sets with the following assumptions:
= 0.01 , N = 150 and = 3.5
= 0.01 , N = 150, = 5
= 0.01 , N = 150, = 8.5, and using the following equation:

33

International Journal of Software Engineering & Applications (IJSEA), Vol.7, No.3, May 2016

t  = ln uN i 1
%

Step 3: Set [ = 0.01, N = 150, and = 0.5, 1, 1.5, 2, 2.5, and 3] to generate six sub-models as
special cases of the GJ-M model.
Step 4: Estimate the generated models parameters based on MLE, NLSE, and NWLSE
estimation methods, to accomplish this step values of the models parameters are initialized, set
w = 1/i where i = 1, 2, , n, Equation (6, 10, and 14) will be used, and nlminb and minpack.lm
packages will be utilized.
Step 5: Select the best fit model among the six generated models based on three selection
methods MSE, RMSE, and AME using their mathematical formulas in Table (1).

4.2 Simulation results and discussion


The results of the simulation experiments are summarized in Tables (2, 3, 4, and 5), and will be
discussed in this section.
Part I: Studying and comparing the accuracy of the ML, NLS, WNLS estimates
Table (2) demonstrates the average values of the parameter estimates for the MLE, NLSE, and
WNLSE methods along with their average MSE and MAPE over the 5000 simulations, under
four simulated situations: [ = 0.5, N = 150, = 0.5, 1, 2], = 1.5, N = 150, = 0.5, 1, 2],
[ = 0.5, N = 250, = 0.5, 1, 2], and [ = 1.5, N = 250, = 0.5, 1, 2] with considering
different sample sizes [n = 15, 30, 50, and 100]. Each sub-table includes 12 comparison cases for
each of the three parameters.

In Table (2.a): 4 cases illustrate that the NLS estimates for the parameter perform the best and
are the closer to the true values, while 8 cases illustrate that the WNLSE method give the best
estimates values, none of the cases are for the sake of the MLE method. For the parameter N, 8
cases are for the sake of the NLS method, 5 cases are for the sake of WNLS, and again none of
the cases are for the sake of MLE methods. Regarding to the parameter , the NLSE and WNLSE
perform the same with approximately zero values of the average of the two evaluation criteria
while the MLE method has larger average values of the MSE and MAPE criteria Moreover, it
obvious that the average values of MSE and MAPE values in this table decreases as the sample
sizes increases.

For the simulated scenario in Table (2.b) we assumed the parameter which represents the
contribution by each failure in failure intensity to be greater than 1, for this scenario the NLSE
and WNLSE methods behave the same with a slight difference for the sake of WNLSE method
and again the MLE method takes the third rank. For the parameter N the best performance is from
the NLSE method while the WNLS and the MLE methods take the second and third rank
respectively and also there is no noticeably difference between the obtained results from the
NLSE and WNLSE methods. Lastly, the average values of the MSE and MAPE for seems to be
comparatively the same for NLSE and WNLSE methods and smaller than the MLE method. With
respect to assuming larger value in this pattern, this assumption gives smaller criteria values for
34

International Journal of Software Engineering & Applications (IJSEA), Vol.7, No.3, May 2016

the estimates of the three parameters in most of the cases. Also, it is noticeable that the criteria
values decreases as the sample sizes increases.
While for on the simulation situation in Table (2.c),which assumed larger number of initial faults
present in system, the overall results show that the average values of the two evaluation criteria
tends to be the smallest for the NLSE method when estimating the parameters and N, and tends
to be the same with WNLSE when estimating the parameter . The MLE method has the larger
values of the average evaluation criteria for all cases. Moreover, assuming larger N value in this
pattern gives larger average values of the MSE and MAPE criteria. Also, if the sample size is
increased, the values of evaluation criteria are lower.
For the simulated pattern in Table (2.d) it is again as the results above, the NLS estimator seems
to perform better than the WNLS and ML estimators with respect to the average values of the
MSE and MAPE criteria for the parameters and N with a minor difference in the results of the
NLSE and WNLSE methods, but for the parameter the NLSE and WNLS behavethe same as
they have smaller MSE and MAPE than the MLE method, also for in this pattern by increasing
the sample size lower criteria values are obtained. According to the results in this part some
concluding points could be summarized as follows:


The overall results show that the average values of MSE and MAPE tends to get smaller
when the sample sizes increases so the larger the sample size the more information about
the failure process and more reliable results we have and this indicates the need for big
software reliability real data to make reliable release decisions.
 The NLSE and WNLSE methods give more consistent estimate values than the MLE
method for all the three GJ-M models parameters under all our simulated patterns.
 The results indicate that there is no major difference between the accuracy of the NLSE
and WNLSE methods, their average values of MSE and MAPE either close or the same
in most of our considered cases.
 Assuming larger value of the failure rate contributed by each fault gives smaller average
values of MSE and MAPE in most of the selected cases. Maybe this indicates that
removing faults with larger contribution will give more enhancements to the accuracy of
the obtained estimates.
 Assuming larger value of initial faults present in system gives larger average values of
MSE and MAPE in all the studied cases. Maybe this indicates that having greater start
number of faults in a given system will negatively affect the accuracy of its obtained
estimates.
Part II: Investigate the performance of some of the sub-models as special cases of the GJ-M
model
Tables (2, 3, and 4)present results of simulation numerical experiments to compare the
performance of the six special cases of the GJ-M model. The six sub-models were generated by
assuming:  = 0.5, N = 150, = 0.5, 1, 1.5, 2, 2.5, and 3]. For this comparison three data sets
were simulated by assuming = 0.5, N = 150 and the following assumptions for the shape
parameter for each data set: Data 1: = 3.5, Data 2: = 5.5, and Data 3: = 8. The estimates
were found by using the MLE, NLSE, and WNLSE methods. The performance of the models was
35

International Journal of Software Engineering & Applications (IJSEA), Vol.7, No.3, May 2016

evaluated based on the MSE, RMSE, andAME criteria. According to the results in Tables (3, 4,
and 5) the following points are concluded:
 According to our study, The ML estimates are unstable as they have big values of the
evaluation criteria compared to the true values while the NLE and WNLSE methods give
more accurate estimates.
 In most of the cases, the best performance is obtained when using the WNLSE methods.
 Model 6 is the best fit model for simulated Data (1, 2, and 3) using the three estimation
methods and based on to the MSE, RMSE, and AME criteria.
Table 2: The average values of ML, NLS, andWNLS estimates along with average MSE and
MAPE ofeach special case of the GJ-M Modelfrom 5000 simulations of sample sizes n =
(15,30,50, 100).
Table (2.a): Scenario 1; = 0.5, N = 150, and = 0.5, 1, 2.
Bold numbers indicates the best estimates accuracy.

36

International Journal of Software Engineering & Applications (IJSEA), Vol.7, No.3, May 2016

(Table (2.a): Continued )

37

International Journal of Software Engineering & Applications (IJSEA), Vol.7, No.3, May 2016
(Table (2.a): Continued.)

38

International Journal of Software Engineering & Applications (IJSEA), Vol.7, No.3, May 2016
(Table (2.b): Scenario 2; = 1.5, N = 150, and = 0.5, 1, 2

39

International Journal of Software Engineering & Applications (IJSEA), Vol.7, No.3, May 2016
(Table (2.b): Continued).

40

International Journal of Software Engineering & Applications (IJSEA), Vol.7, No.3, May 2016
(Table (2.c): Scenario 3: = 0.5, N = 250, and = 0.5, 1, 2.

41

International Journal of Software Engineering & Applications (IJSEA), Vol.7, No.3, May 2016
Table (2.c): Continued

42

International Journal of Software Engineering & Applications (IJSEA), Vol.7, No.3, May 2016
Table (2.d): Scenario 4:  = 1.5, N = 250, and = 0.5, 1, 2

43

International Journal of Software Engineering & Applications (IJSEA), Vol.7, No.3, May 2016
Table (2.d): Continued

44

International Journal of Software Engineering & Applications (IJSEA), Vol.7, No.3, May 2016
Table 3: The MSE of six special cases of the G J-M model based on three simulated data sets.

Bold numbers indicates the best model performance.

45

International Journal of Software Engineering & Applications (IJSEA), Vol.7, No.3, May 2016

Table 4: The RMSE of six special cases of the G J-M model based on three simulated data sets.

Bold numbers indicates the best model performance.

46

International Journal of Software Engineering & Applications (IJSEA), Vol.7, No.3, May 2016

Table 5: The AME of six special cases of the G J-M model based on three simulated data sets.
Bold numbers indicates the best model performance.

5. CONCULDING REMARKS
The GJ-M model is a general formula of the very well-known Jelinski-Moranda model
(1972).This general formula can introduce different failure rate behavior sub-models to help suit
more different situations. In this paper, we have explored the performance of three method of
estimation for the GJ-M model through simulating many failure system scenarios. Furthermore,
we have investigated the performance of some of the sub-models as special cases of the GJ-M
model.We have made some conclusions and recommendations based on our simulation results:
 The NLSE and WNLSE methods perform well, both of them give ecient and accurate
estimates in all our studied cases and we also see that they do better than the MLE
method.
47

International Journal of Software Engineering & Applications (IJSEA), Vol.7, No.3, May 2016





Because selecting appropriate weighting function is acrucial concern of the WNLSE


method it has value to try more weight functions either optimal or empirical for more
enhancement of the performance of the WNLSE method.
Generating several sub-models of the GJ-M model increases the possibility of finding the
best fit model that suit several situations.
It is worth to consider the WNLSE method with the reliability models considering that
they have non-constant variance with testing time.

REFERENCES
[1]

Chai, T., and Draxler, R. ,Root mean square error (RMSE) or mean absolute error (MAE)?
Arguments against avoiding RMSE in the literature, Geoscientific Model Development. 7, 12471250. doi:10.5194/gmd-7-1247-2014.

[2]

Gentry,Travis W., Bogdan M. Wilamowski, and Larry R. Weatherford, " A Comparison of


Traditional Forecasting Techniques and Neural Networks", presented at ANNIE'95 - Artificial Neural
Networks in Engineering, St. Louis, Missouri, USA, November 12-15, 1995; also in Intelligent
Engineering Systems Through Artificial Neural Networks vol 5, pp. 765-760, ed. C. H. Dagli,
M. Akay, C. L. P Chen, B. R. Fernandez, J. Gosh, ASME PRESS, New York 1995.

[3]

Jelinski Z. and Moranda P. B. , Software reliability research, Statistical computer performance


evaluation (Edited by W. Freiberger), Academic Press, New York,(1972), pp. 465-497.

[4]

Liu J., Liu Y., Xu M., Parameter Estimation of Jelinski-Moranda Model Based on Weighted
Nonlinear Least Squares and Heteroscedasticity, arXiv preprint arXiv:1503.00094, 2015, pp.1-17

[5]

Lutfiah Ismail Al turk andEftekhar Gabel Alsolami, Jelinski-Moranda, Software Reliability Growth
Model: A Brief Literature and Modification, International Journal of Software Engineering and
Applications (IJSEA), Vol.7, No.2, March 2016, pp.33-44.

[6]

Zhang, X., Teng, X. and Pham, H., Considering Fault Removal Efficiency in Software Reliability
Assessment, IEEE Transactions on Systems, Man and Cybernetics-part A, Vol.33, No.1, 2003; 114120.

AUTHOR
Lutfiah Ismail Al turkis currently working as Associate Professor of Mathematical Statistics in Statistics
Department at Faculty of Sciences, King AbdulAziz University, Saudi Arabia. Lutfiah Ismail Al turk
obtained her B.Sc degree in Statistics and Computer Science from Faculty of Sciences, King AbdulAziz
University in 1993 and M.Sc (Mathematical statistics) degree from Statistics Department, Faculty of
Sciences, King AbdulAziz University in 1999. She received her Ph.D in Mathematical Statistics from
university of Surrey, UK in 2007. Her current research interests include Software reliability modeling
and Statistical Machine Learning.
Eftekhar Gabel Alsolami is presently Teaching Assistant in Mathematics Department at Faculty of
Sciences, University of Jeddah, Saudi Arabia. Eftekhar Gabel Alsolami obtained her B.Sc degree in
Statistics from Faculty of Sciences, King AbdulAziz University in 2011.

48