Professional Documents
Culture Documents
= = (
(1.1)
Stieber (1997) observes that if classical testing strategies are used, the application of software
reliability growth models may be difficult and reliability predictions can be misleading. However, he
observes that statistical methods can be successfully applied to the failure data. He demonstrated his
observation by applying the well-known sequential probability ratio test (SPRT) of Wald (1947) for
a software failure data to detect unreliable software components and compare the reliability of
different software versions. In this paper we consider popular SRGM HLSRGM and adopt the
principle of Stieber (1997) in detecting unreliable software components in order to accept or reject
the developed software. The theory proposed by Stieber (1997) is presented in Section 2 for a ready
reference. Extension of this theory to the SRGM HLSRGM is presented in Section 3. Application
of the decision rule to detect unreliable software with respect to the proposed SRGM is given in
Section 4. Analysis of the application of the SPRT on five data sets and conclusions drawn are given
in Section 5 and 6 respectively.
II. WALD'S SEQUENTIAL TEST FOR A POISSON PROCESS
The sequential probability ratio test (SPRT) was developed by A.Wald at Columbia
University in 1943. Due to its usefulness in development work on military and naval equipment it
was classified as Restricted by the Espionage Act (Wald, 1947). A big advantage of sequential tests
is that they require fewer observations (time) on the average than fixed sample size tests. SPRTs are
widely used for statistical quality control in manufacturing processes. An SPRT for homogeneous
Poisson processes is described below.
Let {N(t),t 0} be a homogeneous Poisson process with rate . In our case, N(t)= number
of failures up to time t and is the failure rate (failures per unit time ). Suppose that we put a
system on test (for example a software system, where testing is done according to a usage profile and
no faults are corrected) and that we want to estimate its failure rate . We can not expect to
estimate precisely. But we want to reject the system with a high probability if our data suggest
that the failure rate is larger than
1
and accept it with a high probability, if its smaller than
0
. As
always with statistical tests, there is some risk to get the wrong answers. So we have to specify two
(small) numbers and , where is the probability of falsely rejecting the system. That is
rejecting the system even if
0
. This is the "producers" risk. is the probability of falsely
accepting the system .That is accepting the system even if
1.
This is the consumers risk.
With specified choices of
0
and
1
such that 0 <
0
<
1,
the probability of finding N(t) failures in
the time span (0,t ) with
1,
0
as the failure rates are respectively given by
International Journal of Computer Engineering and Technology (IJCET), ISSN 0976-6367(Print),
ISSN 0976 - 6375(Online), Volume 4, Issue 5, September - October (2013), IAEME
279
[ ]
( )
1
1
1
( )!
N t
t
e t
Q
N t
= (2.1)
[ ]
( )
0
0
0
( )!
N t
t
e t
Q
N t
= (2.2)
The ratio
1
0
Q
Q
at any time t is considered as a measure of deciding the truth towards
0
or
1
| |
= +
|
\
The decision rule of SPRT is to decide in favor of
1
, in favor of
0
or to continue by
observing the number of failures at a later time than 't' according as
1
0
Q
Q
is greater than or equal to a
constant say A, less than or equal to a constant say B or in between the constants A and B. That is,
we decide the given software product as unreliable, reliable or continue the test process with one
more observation in failure data, according as
1
0
Q
A
Q
(2.3)
1
0
Q
B
Q
(2.4)
1
0
Q
B A
Q
< < (2.5)
The approximate values of the constants A and B are taken as
1
A
,
1
B
Where and are the risk probabilities as defined earlier. A simplified version of the above
decision processes is to reject the system as unreliable if N(t) falls for the first time above the line
( )
2
.
U
N t a t b = + (2.6)
To accept the system to be reliable if N(t) falls for the first time below the line
( )
1
.
L
N t a t b = (2.7)
To continue the test with one more observation on (t, N(t)) as the random graph of [t, N(t)] is
between the two linear boundaries given by equations (2.6) and (2.7) where
International Journal of Computer Engineering and Technology (IJCET), ISSN 0976-6367(Print),
ISSN 0976 - 6375(Online), Volume 4, Issue 5, September - October (2013), IAEME
280
1 0
1
0
log
a
=
| |
|
\
(2.8)
1
1
0
1
log
log
b
(
(
=
| |
|
\
(2.9)
2
1
0
1
log
log
b
(
(
=
| |
|
\
(2.10)
The parameters , ,
0
and
1
can be chosen in several ways. One way suggested by Stieber
(1997) is
( )
0
.log
1
q
q
,
( )
1
.log
1
q
q
q
1
0
where q
=
If
0
and
1
are chosen in this way, the slope of N
U
(t) and N
L
(t) equals . The other two ways
of choosing
0
and
1
are from past projects and from part of the data to compare the reliability of
different functional areas.
III. HLSRGM
One simple class of finite failure NHPP model is the HLSRGM, assuming that the failure
intensity is proportional to the number of faults remaining in the software describing an exponential
failure curve. It has two parameters. Where, a is the expected total number of faults in the code and
b is the shape factor defined as, the rate at which the failure rate decreases. The cumulative
distribution function of the model is: ( )
( )
( )
1
1
bt
bt
e
F t
e
=
+
.The expected number of faults at timet is
denoted by
( )
( )
1
( ) , 0, 0, 0
1
bt
bt
a e
m t a b t
e
= > >
+
.
IV. SEQUENTIAL TEST FOR SRGMS
In Section II, for the Poisson process we know that the expected value of N(t) = t called
the average number of failures experienced in time 't' .This is also called the mean value function of
the Poisson process. On the other hand if we consider a Poisson process with a general function m(t)
as its mean value function the probability equation of a such a process is
[ ]
[ ]
( )
( )
( ) . , 0,1, 2,
!
y
m t
m t
P N t Y e y
y
= = =
Depending on the forms of m(t) we get various Poisson processes called NHPP.
International Journal of Computer Engineering and Technology (IJCET), ISSN 0976-6367(Print),
ISSN 0976 - 6375(Online), Volume 4, Issue 5, September - October (2013), IAEME
281
We may write
[ ]
1
( )
( )
1
1
. ( )
( )!
N t
m t
e m t
Q
N t
=
[ ]
0
( )
( )
0
0
. ( )
( )!
N t
m t
e m t
Q
N t
=
Where,
1
( ) m t ,
0
( ) m t are values of the mean value function at specified sets of its parameters
indicating reliable software and unreliable software respectively. Let
0
P ,
1
P be values of the NHPP at
two specifications of b say
0 1
, b b
where
( )
0 1
b b < respectively. It can be shown that for our models
( ) m t at
1
b
is greater than that at
0
b
.
Symbolically ( ) ( )
0 1
m t m t < . Then the SPRT procedure is as follows:
Accept the system to be reliable if
1
0
Q
B
Q
i.e.,
[ ]
[ ]
1
0
( )
( )
1
( )
( )
0
. ( )
. ( )
N t
m t
N t
m t
e m t
B
e m t
i.e.,
1 0
1 0
log ( ) ( )
1
( )
log ( ) log ( )
m t m t
N t
m t m t
| |
+
|
(4.1)
Decide the system to be unreliable and reject if
1
0
Q
A
Q
i.e.,
1 0
1 0
1
log ( ) ( )
( )
log ( ) log ( )
m t m t
N t
m t m t
| |
+
|
\
(4.2)
Continue the test procedure as long as
1 0 1 0
1 0 1 0
1
log ( ) ( ) log ( ) ( )
1
( )
log ( ) log ( ) log ( ) log ( )
m t m t m t m t
N t
m t m t m t m t
| | | |
+ +
| |
\ \
< <
(4.3)
Substituting the appropriate expressions of the respective mean value function m(t) of HLSRGM,
we get the respective decision rules and are given in followings lines
Acceptance region:
( )
( )
0 1
0 1 0 1
0 1
0 1
2
log
1
1
( )
1 1
log
1 1
b t b t
t b b b t b t
b t b t
b t b t
a e e
e e e
N t
e e
e e
| |
( +
|
+ + + \ (
( | | | | +
( | |
+
\ \
(4.4)
International Journal of Computer Engineering and Technology (IJCET), ISSN 0976-6367(Print),
ISSN 0976 - 6375(Online), Volume 4, Issue 5, September - October (2013), IAEME
282
Rejection region:
( )
( )
0 1
0 1 0 1
0 1
0 1
2
1
log
1
( )
1 1
log
1 1
b t b t
t b b b t b t
b t b t
b t b t
a e e
e e e
N t
e e
e e
| |
( +
|
+ + + \ (
( | | | | +
( | |
+
\ \
(4.5)
Continuation region:
( )
( )
( )
( )
0 0 1 1
0 1 0 1 0 0 1 1
0 0 1 1
0 1 1
2 2
1
log log
1 1 1
( )
1 1 1 1
log log
1 1 1 1
b t b t bt bt
t b b t b b b t b t bt bt
b t b t bt bt
b t bt bt
a e e a e e
e e e e e e
N t
e e e e
e e e
( (
| | | |
( ( + +
| |
+ + + + + + \ \ ( (
< <
( | | | | | | + +
( | | |
+ +
\ \ \
0
b t
e
( | |
( |
\
(4.6)
It may be noted that in the above model the decision rules are exclusively based on the
strength of the sequential procedure (, ) and the values of the respective mean value functions
namely,
0
( ) m t ,
1
( ) m t . If the mean value function is linear in t passing through origin, that is, m(t) =
t the decision rules become decision lines as described by Stieber (1997). In that sense equations
(4.1), (4.2), (4.3) can be regarded as generalizations to the decision procedure of Stieber (1997). The
applications of these results for live software failure data are presented with analysis in Section 5.
V. SPRT ANALYSIS OF LIVE DATA SETS
The developed SPRT methodology is for a software failure data which is of the form [t, N(t)].
Where, N(t) is the failure number of software system or its sub system in t units of time. In this
section we evaluate the decision rules based on the considered mean value function for Five different
data sets of the above form, borrowed from (Xie, 2002), (Pham, 2006) and (LYU,1996). The
procedure adopted in estimating the parameters is a two step approach (Satyaprasad et al.,2013).
Based on the estimates of the parameter b in each mean value function, we have chosen the
specifications of
0
b b = ,
1
b b = + equidistant on either side of estimate of b obtained through a
Data Set to apply SPRT such that b
0
< b < b
1
. Assuming the value of 0.025 = , the choices are given
in the following table.
Table 5.1: Estimates of a, b & Specifications of b
0
, b
1
for Time domain
Data Set Estimate of a Estimate of b b
0
b
1
XIE 31.524466 0.029012 0.004012 0.054012
NTDS 28.767254 0.075071 0.050071 0.100071
IBM 18.610725 0.105451 0.080451 0.130451
AT&T 23.655141 0.026521 0.001521 0.051521
LYU 27.139750 0.470899 0.445899 0.495899
Using the selected
0
b ,
1
b and subsequently the
0 1
( ), ( ) m t m t for the model, we calculated the
decision rules given by Equations 4.4 and 4.5, sequentially at each t of the data sets taking the
strength ( , ) as (0.05, 0.2). These are presented for the model in Table 5.2. The following
consolidated table reveals the iterations required to come to a decision about the software of each
Data Set.
International Journal of Computer Engineering and Technology (IJCET), ISSN 0976-6367(Print),
ISSN 0976 - 6375(Online), Volume 4, Issue 5, September - October (2013), IAEME
283
Table 5.2: SPRT analysis for 5 data sets of Time domain data
Data Set T N(t) Acceptance region () Rejection Region () Decision
Xie 30.02 1 2.096161 3.892803 Accept
NTDS 9 1 3.289091 10.007634 Accept
IBM
10 1 9.537308E-01 1.161761E+01
Continue
19 2 -1.043887E+00 1.484484E+01
32 3 -9.708590E+00 2.581256E+01
43 4 -2.609443E+01 5.180791E+01
58 5 -8.665526E+01 1.568921E+02
70 6 -2.236631E+02 3.995060E+02
88 7 -9.364992E+02 1.667050E+03
103 8 -3.110639E+03 5.535421E+03
125 9 -1.819048E+04 3.236855E+04
150 10 -1.357475E+05 2.415514E+05
169 11 -6.257971E+05 1.113554E+06
199 12 -6.991078E+06 1.244004E+07
231 13 -9.174644E+07 1.632552E+08
256 14 -6.856016E+08 1.219971E+09
296 15 -1.712571E+10 3.047378E+10
AT&T
5.5 1 0.346755 1.578489
Reject
7.33 2 0.549381 1.782911
LYU
0.5 1 -1.197242E+01 2.915316E+01
Continue
1.7 2 -9.029384E+00 3.620727E+01
4.5 3 -1.761479E+01 6.114396E+01
7.2 4 -5.297372E+01 1.243779E+02
10 5 -1.608839E+02 3.145575E+02
13 6 -5.273155E+02 9.641456E+02
14.8 7 -1.085730E+03 1.956316E+03
15.7 8 -1.563321E+03 2.805418E+03
17.1 9 -2.768828E+03 4.949402E+03
20.6 10 -1.181216E+04 2.103861E+04
24 11 -4.952239E+04 8.813843E+04
25.2 12 -8.249745E+04 1.468140E+05
26.1 13 -1.211256E+05 2.155489E+05
27.8 14 -2.508898E+05 4.464526E+05
29.2 15 -4.581086E+05 8.151803E+05
31.9 16 -1.470789E+06 2.617159E+06
35.1 17 -5.904594E+06 1.050674E+07
37.6 18 -1.757032E+07 3.126493E+07
39.6 19 -4.214090E+07 7.498623E+07
44.1 20 -3.036268E+08 5.402786E+08
47.6 21 -1.417638E+09 2.522570E+09
52.8 22 -1.407760E+10 2.504991E+10
60 23 -3.410741E+11 6.069131E+11
70.7 24 -3.942281E+13 7.014960E+13
From the Table 5.2, a decision of either to accept, reject the system or continue is reached
much in advance of the last time instant of the data.
International Journal of Computer Engineering and Technology (IJCET), ISSN 0976-6367(Print),
ISSN 0976 - 6375(Online), Volume 4, Issue 5, September - October (2013), IAEME
284
VI. CONCLUSION
The above consolidated table of HLSRGM as exemplified for five Data Sets indicates that the
model is performing well in arriving at a decision. The model has given a decision of acceptance for 2
Data Sets i.e Xie and NTDS at 1
st
and 1
st
instances respectively, a decision of rejection for 1 Data Sets i.e
AT&T at 2
nd
instance and a decision of continue for 2 Data Sets i.e IBM and LYU. Therefore, we may
conclude that, applying SPRT on data sets we can come to an early conclusion of reliability / unreliability
of software.
VII. REFERENCES
1. Lyu, M.R. (1996). The hand book of software reliability engineering, McGrawHill & IEEE Computer
Society press.
2. Pham. H., (2006). System software reliability, Springer.
3. Satya Prasad (2007).Half logistic Software reliability growth model Ph.D Thesis of ANU, India.
4. Satyaprasad. R, Shaheen and Krishna Mohan. G., (July-August, 2013). Two Step approach for Software
Process control:HLSRGM, International Journal of Emerging Trends & Technology in Computer
Science(IJETTCS), Volume 2, Issue 4.
5. Stieber, H.A. (1997). Statistical Quality Control: How To Detect Unreliable Software Components,
Proceedings the 8th International Symposium on Software Reliability Engineering, 8-12.
6. Wald. A., 1947. Sequential Analysis, John Wiley and Son, Inc, New York.
7. Xie, M., Goh. T.N., Ranjan.P. (2002). Some effective control chart procedures for reliability monitoring
-Reliability engineering and System Safety 77 143 -150.
8. Sandeep P. Chavan, Dr. S. H. Patil and Amol K. Kadam, Developing Software Analyzers Tool using
Software Reliability Growth Model for Improving Software Quality, International Journal of Computer
Engineering & Technology (IJCET), Volume 4, Issue 2, 2013, pp. 448 - 453, ISSN Print: 0976 6367,
ISSN Online: 0976 6375.
AUTHORS PROFILE
Dr. R. Satya Prasad Received Ph.D. degree in Computer Science in the faculty of
Engineering in 2007 from Acharya Nagarjuna University, Andhra Pradesh. He received
gold medal from Acharya Nagarjuna University for his outstanding performance in a
first rank in Masters Degree. He is currently working as Associative Professor in the
Department of Computer Science & Engineering, Acharya Nagarjuna University. His
current research is focused on Software Engineering. He published 70 research papers in
National & International Journals.
Miss. Shaheen working as Assistant Professor, Institute of Public Enterprise (IPE),
Osmania Univeristy Campus. She did her Master of Computer Science. She was
associated with INFOSYS, Gacchibowli, Hyderabad and Genpact, Uppal as an
Academic Consultant training fresh recruits on technical subjects. She is currently
pursuing Ph. D. in Computer Science from Acharya Nagarjuna University.
Mr. G. Krishna Mohan, working as a Reader in the Department of Computer
Science, P.B.Siddhartha College, Vijayawada. He obtained his M.C.A degree from
Acharya Nagarjuna University, M.Tech from JNTU, Kakinada, M.Phil from Madurai
Kamaraj University and pursuing Ph.D from Acharya Nagarjuna University. He
qualified, AP State Level Eligibility Test. His research interests lies in Data Mining and
Software Engineering. He published 19 research papers in various National and
International journals.