Prediction of Software Reliability bounds in new Operational Environment

Krassimir B. Djambazov

Institute of Computer and Communication Systems, Bulgarian Academy of Sciences

  

1. Introduction 

The reliability of a software product depends on its quality and on the application environment. The quality is presented by the existence of design faults, while the application environment defines the activation conditions of such faults. 
The goal of the sketched study is the measured residual failure rate of a product, demonstrated under a known operational environment (called hereinafter test profile), to be used for reliability prediction when the same product is implemented under another operational environment. 
A faulty (defect) point of the input space is defined as one that activates fault(s) when selected. 
By definition the input space profile of a software product is given by the distribution of the probabilities of occurrence of the input points [Musa93].  
Intensity profile is defined as the distribution of occurrence rates of the input points.  

2. Description of the method  

The residual faulty points could be located everywhere in the input space. They could be grouped in “faulty regions”, each belonging to a design fault. The smallest faulty region consists of one input point.  

 

The residual failure rate Lr under the old profile is presented as the sum of the intensities of P faulty regions (1). The failure rate of a hypothetical region i, which includes ni faulty points with approximately equal intensities li, is given by (2). Finally, (3) represents the residual failure rate formed by S faulty regions. 
Since no information is available either about the real distribution of faulty regions over the input space or about their sizes, the worst and the best case are considered.  
The basic assumptions are given bellow:  

  • Both old and new applications share the same input space range.
  • The test is long enough the obtained value of the residual failure rate to be of high confidence, 
  • The fault activation is due to defect point selection only,
  • Old and new intensity profiles are described up to single point intensity. 

The worst and the best case conditions in terms of faulty points distribution over the input space are described by (4) and (5) respectively:  
 
For the sake of brevity we omit the best case related discussion when possible.  
The worst case reliability L*r max is the maximum sum of S faulty regions' intensities. To find the solution of (4) with respect to S and ni we can use the constraints following from the knowledge of the old intensity profile -- (6) and (7).  
The variable ni is constrained by the maximum value Ni of the faulty points that could be grouped around the point i (with intensity li) if all the faulty points in the system are concentrated there.  
Theorem 1 is proven that gives the solution (8) and (9) of (4) satisfying (5) and (6) [KD97].  
The best case solutions are presented in (10) and (11) and are based on similar deductions - Theorem 2 [KD97].  
 
To facilitate the solving efforts in the real systems we propose two ways of reduction of the number of points to be evaluated. The first one supposes that the whole input space is divided into equally sized regions. The mean value of the occurrence rate of a point in region i corresponds to li introduced in (2).  
The worst case distribution of the faulty points with respect to the residual failure rate in the new profile corresponds to that given by (8) or (9) and the best case – by (10) and (11). 
Following the approach of equal partitioning, the worst case requirements could not be met due to the deviation of the points’ intensities inside the arbitrary defined regions.  
To closer satisfy the worst case conditions we suggest the regions’ determination to be tied to the shape of the old intensity profile. The partitioning of the input space will then follow the exact maximum number of faulty points that could be located inside the regions. This way the input space is partitioned into regions, each region i characterized by maximum of Ni faulty points. All points satisfying Lr/(Ni+1) < li < Lr/Ni belong to region i. 
Once the regions are defined, the same solutions as those described by (8), (9), (10) and (11) could be found. The better results obtained by this equipotent partitioning are due to the avoidance of the mean values of the occurrence rates in the regions.  

3. Probabilities of been tested  

After a certain testing period Tt the probability pti(Tt) that a point has been tested differs for different points. This could be used the maximum number of Ni faulty points in a region to be corrected to mi such that mi<Ni. 
The mean value for mi out of Ni not tested faulty points in region i is determined to redefine the worst case of defect points distribution over the regions. An ordering is formed (12) where the ratios are numbered in descending order, the maximum ratio is numbered “0”. To find the worst case distribution (4) has to be solved with respect to S and ni. A procedure is given for determination of the distributions in case of limited number of faults mi in a region. The procedure assigns n0=m0 points to region “0” and calculates N1corr according to (13). If m1<N1corr then n1=m1 and the next step is entered. If m1>N1corr then n1=N1corr and the procedure stops. In every step the same recalculation (13) is repeated following the same rules. Theorem 3 shows the correctness of the described procedure with respect to satisfying worst and best case conditions [KD97].  
 
4. Discussion  

The precision of the proposed method depends on the precision of the residual failure rate determination and the input space profiles' identification.  
The method could be applied the designers of a new application to make a rough analysis whether or not the reuse of a software product meets the reliability requirements.  
Another application of the method could be in test planning. According to the expression (9) the worst case residual failure rate in the new profile depends on the maximum value of the ratio (li*/li). We can therefore construct a risk profile that will reveal the most delicate parts of the input space with respect to the worst case distribution.  
Definition of the most risky regions could be used for their intensive tests, thus proving the absence of faulty inputs or removing the existing ones. It has to be emphasized that the worst case region, in general, does not coincide with the region of maximum intensity under the new environment. So, the testing strategy might be adapted to cover the most critical regions first but not the most intensively used.  
Here, at least two cases are possible:  

  • Proving that the most critical regions are free of faults will shift the worst case conditions to the less critical regions, thus correcting the worst prediction according to the procedure presented in §3. Such type of selective testing could be stopped when the predicted worst case value reaches the required reliability. 
  • If some faults are removed, a precise analysis of their size could give information for the residual failure rate correction in the old operational profile, followed by a corresponding recalculation of the reliability worst and best cases under the new environment. 

5. Conclusions  
The proposed method gives an instrument the worst and the best case failure rates to be predicted when a software product is reused in a new intensity profile. The method utilizes the operational data collected during the test in the old intensity profile and the knowledge of the new one. It could be applied for early reliability estimation and for test planning when the profile is changed. 

References: 
[Musa93] John D. Musa, “Operational Profiles in Software Reliability Engineering”, IEEE Software, March 1993, pp.14-32 
[KD97] Krassimir B. Djambazov, “Software Reliability in New Operational Profiles”, Technical Report, Institute of Computer and Communication Systems, Sofia, Bulgaria, December 1997, (in Bulgarian)

Contacts:
Prof. Krassimir B. Djambazov
Institute of Computer and Communication Systems, Bulgarian Academy of Sciences
Acad. G. Bonchev St., bl. 2
1113 Sofia, 
Bulgaria,

phone: +359 2 71 90 97
fax: +359 2 72 39 05

e-mail: kbd@iccs.acad.bg