2.7. Approbation of the non-monotonic software reliability and security evaluation model

The study has shown that the suggested non-monotonic models (Eqs. (4) and (6)) provide high accuracy (σ<sup>j</sup> < 0:001) when the number of revisions exceeds 10 and the number of runs exceeds 50. In order to control the model consistency with the basic data, the Mises criterion was used (at threshold value of 0.01) [25]:

$$\begin{aligned} \omega\_n^2 & \in [0.26; 1.9] \\ \widehat{\boldsymbol{\mu}}(0.01) &= 2.1, \end{aligned} \tag{22}$$

to 5–15% reduction of the required number of software runs during test procedures. It should be noted that debugging models provide low accuracy at low statistics; however, this drawback can be avoided by using appropriate accuracy increase techniques, including Wald's

The suggested method and models can be also recommended to estimate the parameters of

In the course of the software reliability management, it is necessary to plan the cost of testing in order to achieve the required level of the software reliability. Thus, it is useful to evaluate the trends relevant to the software development and implementation and predict the number of

The models (Eqs. (3), (4), (6)) described above can be used to calculate a number of planning indicators. Unfortunately, statistical models of reliability evaluation do not allow predicting the frequency of corrections of a specific type but only use this information. Specific revisions that depend on operating conditions, the achieved level of reliability, requirements for the software reliability, developers' qualification and experience and, consequently, their content may differ. In order to consider the revision types, it is reasonable to use the theory of multiple factor analysis. Since the change of the number of specific corrections is considered within the scope of revisions, the software modification complexity function can be approximated using,

kj ¼ κ<sup>0</sup> þ κ1j þ κ2j

X<sup>u</sup> j¼1 bkj j

<sup>u</sup>ð Þ <sup>1</sup>�<sup>u</sup> ;

X<sup>u</sup> j¼1

X<sup>u</sup> j¼1

Then, assuming that the estimation Pu of the model parameters and the achieved software reliability level was obtained based on the available test data, we have the following calculated

It is easy to demonstrate that the polynomial parameters have the following form:

<sup>b</sup>kj � <sup>2</sup> u uð Þ � 1

<sup>b</sup>kj � <sup>2</sup> u þ 1

<sup>u</sup><sup>2</sup> <sup>þ</sup> <sup>3</sup><sup>u</sup> � <sup>2</sup>

<sup>2</sup> � <sup>u</sup>

2

<sup>2</sup>�β<sup>2</sup> <sup>2</sup>þ3u�3u2�2u<sup>3</sup> ð Þ

X<sup>u</sup> j¼1 bkj j 2

<sup>10</sup>ð Þ <sup>u</sup>�<sup>1</sup> ;

<sup>b</sup>kj <sup>j</sup>� <sup>2</sup> u � 1

<sup>u</sup>� <sup>4</sup>�u<sup>2</sup> ð Þ :

bkj <sup>j</sup>�β<sup>2</sup> <sup>1</sup>�u<sup>2</sup> ð Þ<sup>u</sup>

, (23)

Models for Testing Modifiable Systems http://dx.doi.org/10.5772/intechopen.75126 159

(24)

method.

various modifiable and learning systems.

3. Test planning and software revision models

remaining errors and complexity of their correction.

for example, a quadratic polynomial in one variable:

κ<sup>0</sup> ¼

8

>>>>>>>>>>>>><

>>>>>>>>>>>>>:

κ<sup>1</sup> ¼ 6ð X<sup>u</sup> j¼1

κ<sup>2</sup> ¼

30ð X<sup>u</sup> j¼1

X<sup>u</sup> j¼1 bkj

expression of the reliability-level prediction model:

where κ0, κ1, and κ<sup>2</sup> are the polynomial parameters (j ¼ 1, u).

where ω<sup>2</sup> <sup>n</sup> is the Mises criterion and <sup>b</sup><sup>u</sup> is the threshold value.

Analysis of the effect of the software revision efficiency factor on the model (Eq. (6)) accuracy has shown that the accuracy can increase by an order of magnitude on the condition that revision classes are taken into account. Comparison of the suggested models with the wellknown debugging models has demonstrated a number of their advantages, namely:


Thus, the study actually substantiates the method of test planning based on utilization of the non-monotonic software reliability evaluation model using the results of runs and revisions. Within the scope of the suggested method, we obtained calculated expressions of parameters of the software reliability evaluation model and estimated accuracy and test planning. The suggested generic non-monotonic model (Eq. (6)) allows considering probable moments of the software reliability decrease typical, for instance, for open-source software development, multiple version software, etc. Accuracy of the generic model depends on how the task of software revision classification is solved. The model can be integrated with software reliability values obtained during the early stages of the software development. Simplification of the model allows reducing it to exponential NHPP models of reliability growth used at the stages of information system operation and upgrade [23].

The main advantage of the suggested non-monotonic models is the possibility to increase accuracy by more than 10% (as the results of introducing revision categories), which is equal to 5–15% reduction of the required number of software runs during test procedures. It should be noted that debugging models provide low accuracy at low statistics; however, this drawback can be avoided by using appropriate accuracy increase techniques, including Wald's method.

The suggested method and models can be also recommended to estimate the parameters of various modifiable and learning systems.
