Incorporating Generalized Modified Weibull TEF in to Software Reliability Growth Model and Analysis of Optimal Release Policy

Software reliability is generally a key factor in software quality. Reliability is an essential ingredient in customer satisfaction. In software development process reliability conveys the information to managers to access the testing effort and time at which software release into the market. Large numbers of papers are published in this context. In this paper we proposed a software reliability growth model with generalized modified weibull testing effort. Performance application of proposed model is demonstrated through real datasets. The experimental results shown that the model gives an excellent performance compared to other models. We also discuss the optimal release time based on reliability requirement and cost criteria.


Introduction
Reliability is one of the key factors in accessing the quality of the software.In past many papers are published in accessing the software quality through reliability.
The main objective of software industry is to prepare software which is much reliable and satisfy the customer needs.Software reliability represents a customer oriented view of software quality.Many NHPP software reliability growth models are proposed to access the software reliability.
Software reliability is defined as probability of failure free software over a period of time in a given environmental condition.[Lyu, Xie] .Before a software released into market an extensive test is conducted.Software with more errors when released into the market incurs high failure costs [Hoang Pham].For that more sophisticated testing is needed to track the errors.During the software development many resources are consumed like manpower, test cases.TEF describes test expenditure in testing process.The TEF which gives the effort required in testing and CPU time the software for better error tracking.Many papers are published based on TEF in NHPP models by [Yamada 1986, Bokhari 2006, Kapur 1994and Haung 1997].All of them describe the tracking phenomenon with test expenditure.
This paper describes the time dependent behavior of testing -effort by a generalized modified weibull curve.
Assuming that the error detection rate in software testing is proportional to the current error content and the proportionality depends on the current test effort, a flexible software reliability growth model based on non homogeneous Poisson process is developed and its applications are presented.Further an optimal release time is calculated based on reliability and cost.Section-2 proposed the test-effort function described by generalized modified weibull curve.In Section -3 a software reliability growth model with the generalized modified weibull test effort function is discussed.Section -4 contains a model evaluation criteria .Section -5 includes model performance analysis.Section-6 presents the prediction of optimal release time based on the application of the model to software reliability management.

Generalized modified Weibull curve TEF
Generalized modified Weibull distribution with five parameters had a great flexibility in accommodating all the forms of the hazard rate function, can be used in a variety of problems for modeling software failure data.

Current cumulative Testing effort
(1) where α>0,β>0,m>0,λ>0 and θ>0 at t>0 where α is the total effort expenditure ,β controls the scale of the distribution, m and θ are shape parameters.The parameter λ is a kind of accelerating factor in the imperfection time and it works as a factor of fragility in the survival of the individual when the time increases.

SRGM with Generalized Modified Weibull testing-effort function
The following assumptions are made for software reliability growth modeling (Yamada and Osaki 1985Yamada 1986, 1993, Kapur 1999, Kuo 2001Haung and Kuo 2002, Haung 2005) (i) The fault removal process follows the Non-Homogeneous Poisson process (NHPP) (ii) The software system is subjected to failure at random time caused by faults remaining in the system.

(iii)
The mean time number of faults detected in the time interval (t, t+Δt) by the current test effort is proportional for the mean number of remaining faults in the system.

(iv)
The proportionality is constant over the time.
(v) Consumption curve of testing effort is modeled by a generalized modified Weibull TEF.
(vi) Each time a failure occurs, the fault that caused it is immediately removed and no new faults are introduced.

(vii)
We can describe the mathematical expression of a testing-effort based on following Substituting W(t) from eq.( 1), we get This is an NHPP model with mean value function with the GMW testing-effort expenditure.
Now failure intensity is given by ( 14) The expected number of errors detected eventually is

Yamada Delayed S-shaped model with Generalized modified Weibull testing-effort function
The delayed 'S' shaped model originally proposed by Yamada [ Yamada] and it is different from NHPP by considering that software testing is not only for error detection but error isolation.And the cumulative errors detected follow the S-shaped curve.This behavior is indeed initial phase testers are familiar with type of errors and residual faults become more difficult to uncover [Goel 1985, M.Ohba 1984, M.R. Lyu 1996].
From the above steps described section 3.1, we will get a relationship between m(t) and w(t).For extended Yamada S-shaped software reliability model.
The extended S-shaped model [Yamada 1983] is modeled by ( 15) and ( 16) We assume r 2 ≠r 1 by solving 2 and 3 boundry conditions m d (t)=0 , we have

And (17)
At this stage we assume r 2 ≈ r 1 ≈r , then using 'L' Hospitals rule the Delayed S-shaped model with TEF is given by ( 18) The failure intensity function for Delayed S-shaped model with TEF is given by ( 19) Where y i is total number of failures observed at a time t i according to the actual data and m(t i ) is the estimated cumulative number of failures at a time t i for i=1,2,…..,n.
( and Rayleigh are listed in Table I.From the TABLE I we can see that GMW has lower PE, Bias, Variation, MRE and RMS-PE than Logistic and Rayleigh TEF.We can say that our proposed model fits better than the other one.In the table II we have listed estimated values of SRGM with different testing-efforts.We have also given the values of SSE, R 2 , and MSE.We observed that our proposed model has smallest MSE and SSE value when compared with other models.The 95% confidence limits for the all models are given in the Table III.All the calculations can found in the appendix.Fig .4 shows the RE curves for the different selected models.5 we can observe the GMW curve covers the maximum points like other TEFs.Now from the table V we can conclude that our TEF is better fit than other.Their 95% confidence bounds are given in the table VI.From the above we can see that SRGM with Generalized modified Weibull TEF have less MSE than other models.

Software Release-Time Based on Reliability Criteria
Generally software release problem associated with the reliability of a software system.Here in this first we discuss the optimal time based on reliability criterion.If we know software has reached its maximum reliability for a particular time.By that we can decide right time for the software to be delivered out.Goel  By solving the eq (28) and eq(12) we can calculate that the testing time needed to reach the desired reliability.α=52.99(CPUhours), β=0.000031 / week, m=2.933, λ=0.09971, θ=0.3033 and a=567.9andr=0.01954 this software has been run for operational time until it reaches its reliability level 0.80(Δt=0.1)is t=20.1 weeks.To reach the reliability level at 0.85 is t=23.5 weeks.In the way for the dataset2 α=10310(CPU hours), β=0.00031 / week, m=2.948, λ=0.00065, and θ=0.4147,a=136 and r=0.0001418, software has been run for operational time until it reaches its reliability level 0.85(Δt=0.1)is t=17.4, its reliability level 0.92(Δt=0.1)is t=20.3,its reliability level 0.960(Δt=0.1)is t=23.4.

Optimal release time based on cost-reliability criterion
This section deals with the release policy based on the cost-reliability criterion.Using the total software cost evaluated by cost criterion, the cost of testing-effort expenditures during software testing/development phase and the cost of fixing errors before and after release are [2,16,17,20]: Where C 1 the cost of correcting an error during testing, C 2 is the cost of correcting an error during the operation, C 2 > C 1 , C 3 is the cost of testing per unit testing effort expenditure and T LC is the software life-cycle length.
From reliability criteria, we can obtain the required testing time needed to reach the reliability objective R 0 .Our aim is to determine the optimal software release time that minimizes the total software cost to achieve the desired software reliability.Therefore, the optimal software release policy for the proposed software reliability can be formulated as Differentiate the equation ( 30) with respect to T and setting it to zero, we obtain When T=0 then m(0)=0 and when T->∞, then And therefore is monotonically decreasing in T.
To analyze the minimum value of C(T) eq. ( 37) is used to define the two cases of at T=0.

1) if
, then for 0<T<T LC it can be obtained at dC(T)/dT>0 for 0<T<T LC and the minimal value can found at C(T) can be found at T=0. there can be found a finite and unique real number T 0 (34) because dC(T)/dT<0 for 0<T<T 0 and dC(T)/dT>0 for T> T 0 , the minimum of C(T) is at T=T 0 for T 0 ≤ T we can easily get the required testing time needed to reach the reliability objective R 0 .here our goal is to minimize the total software cost under desired software reliability and then the optimal software release time is obtained.That is can minimize the C(T) subjected to R(t+Δt/t)≥ R 0 where 0< R 0 <1 [Yamada 1985,Huang 1999] T * =opimal software release time or total testing time =max{T 0, T 1 }.
Where T 0 =finite and unique solution T satisfying eq.( 30) T 1 =finite and unique T satisfying R(t+Δt/t)=R 0 By combining the above analysis and combining the cost and reliability requirements we have the following theorem.Theorem 1: assume C2 <C1<0, C3<0,Δt>0, and 0<R 0 <1.let T*be the optimal software release time From the dataset one estimated values of SRGM with GMW TEF α=52.99(CPUhours), β=0.000031 / week, m=2.933, λ=0.09971, θ=0.3033, a=567.9 and r=0.01954 when Δt=0.1 R 0 =0.85 and we let C 1 =1, C2 =50, C 3 =100 and T LC =100 the estimated time T 1 =23.6 weeks and release time from eq 30 T 0 =12.35 weeks.Now optimal Release Time max (12.35,23.6)completely different from the Weibull type Curve.We observed that most of software failure data is time dependent.By incorporating testing effort in to SRGM we can make realistic assumptions about the software failure.The experimental results indicate that our proposed model fits fairly well compared to other models.In future we study the present testing-effort in imperfect debugging environment.
goodness of fit techniqueHere we used MSE [M.Xie 1991, C.Y Huang& Kuo 2007, H.Pham 2000]  which gives real measure of the difference between actual and predicted values.The MSE defined as (20)A smaller MSE indicate a smaller fitting error and better performance.b) Coefficient of multiple determinations (R 2 ) which measures the percentage of total variation about mean accounted for the fitted model and tells us how well a curve fits the data.It is frequently employed to compare model and access which model provies the best fit to the data.The best model is that which proves higher R 2 .that is closer to 1.c) The predictive Validity CriterionThe capability of the model to predict failure behavior from present & past failure behavior is called predictive validity.This approach, which was proposed by (J.Dmusa 1987], can be represented by computing RE for a data set (21) In order to check the performance of the Generalized Modified Weibull testing _effort and make a comparison criteria for our evaluations [M.Shepperd and C.Schofield 1997,K.Srinivasan and D.Fisher1995].d) SSE criteria: SSE can be calculated as :[Hoang Pham 2000] (22) Figure 1.Observed/estimated GMW, Logistic and Rayleigh TEF for DS1 Figure 5. Observed/estimated GMW, Logistic and Rayleigh TEF for DS2 Case of DS2 are α=10310(CPU hours), β=0.00031 / week, m=2.948, λ=0.00065,and θ=0.4147.Correspondingly the estimated parameters of Logistic TEF are N=9974(CPU hours), A=13.22 and b=0.2881/week and Rayleigh TEFN=9669 and b=0.009472/week.The computed Bias, Variation, MRE, and RMS-PE for GMW TEF, Logistic TEF and Rayleigh TEF are listed in the table IV ,fig 5 graphically illustrate the comparisons between the observed failure data, and the data estimated by the GMW TEF, Logistic TEF and Rayleigh TEF.From the figure5we can observe the GMW curve covers the maximum points like other TEFs.Now from the table V we can conclude that our TEF is better fit than other.Their 95% confidence bounds are given in the table VI.From the above we can see that SRGM with Generalized modified Weibull TEF have less MSE than other models.
Figure 9. plot for reliability of first dataset at Δt=0.1

Figure 10 .
Figure 10.Total software cost for the first dataset vs Time is T*=23.6 weeks.Fig 10 shows the change in software cost during the time span.Now total cost of the software at optimal time 5713.

Figure 2 .
Figure 2. Cumulative and residual error for SRGM with GMW for DS1

Figure 3 .SFigure 4 .
Figure 3. Cumulative and residual error for delayed S shaped model with GMW for DS1

Figure 8 .
Figure 8. RE curves of selected models compared with actual failure data(DS2) 1 : Constant fault detection rate in the Delayed S-shaped model with Exponentiated Weibull TEF r 2 : Constant fault isolated rate in the Delayed S-shaped model with Exponentiated Weibull TEF A : Expected number of initial faults r (t) : Failure detection rate function r : Constant fault detection rate function.r

Table 1 .
Comparison result for different TEF applied to DS1