Вы находитесь на странице: 1из 21

Odessa National Polytechnic University

D. Maevsky

SOFTWARE RELIABILITY. A NEW APPROACH

Contradictions of traditional Software Reliability theory


Non probabilistic character of refuses and using of the probability theory as a conceptual base of software reliability. Necessity of applied setting software reliability modeling and absence of compatible modeling methods and procedures of their choice Necessity of the second defects account and absence of such account methods

Software Reliability theory. A points of view


Errors caused by software have no stochastic nature: they will repeat as

soon as some conditions will be repeated. Errors of software, in a sense, are not objective they depend on type of operations, type of inputs and, at last, on type of users. attempts to put hardware reliability shoes on software legs are absolutely wrong and, moreover, will lead only to a logical dead end.
: , . , , , , , . , . Ushakov, I. (2006) Reliability: past, present, future. Reliability: Theory & Applications, No.1, January 2006 : p. 10 16.

Now we come to the most confusing area in reliability theory and practice

the so-called software reliability. This term is rooted in software engineering though it very much contradicts to traditional understanding of the term reliability in hardware engineering. It leads to erroneous attempts of applying probabilistic reliability concepts to this subject that led only to some disaster. ... One thing is clear: software reliability specialists should distinguish their reliability from hardware reliability, develop their own non-probabilistic and non-time dependent mathematical tools.
. , . , . :
Ushakov, I. (2012) Reliability theory: history & current state in bibliographies. RT&A # 01 (24) Vol.1 2012, March: p. 8 35

Software Reliability theory. A points of view

, . ( ) .
It should be stressed that so far the theory of software reliability cant be regarded as an established science. one can ascertain the presence of a substantial gap between theory (mathematical models and methods) and practice.
Kharchenko V.S., Sklar V.V., Tarasyuk O.M. (2004) Methods for modeling and evaluating the quality and reliability of the programming security. Kharkov: Nat. Aerospace Univ. "HAI".

Streams of defects in software systems


Software system (SS) Subject domain (SD)

Primary
Discovery

stream
Correction

Bringing

Secondary
Information structure of PS

stream

Information structure of SD

A defect is disparity of information structure of SS and information structure of SD An error is a defect which is showing up during the process of exploitation

The processes of discovery and correction of defects in software systems are similar to the processes of transfer in the non-equilibrium systems
5

The transport phenomena in the non-equilibrium systems TRANSPORT PHENOMENA - transport phenomena concerns the exchange of mass, energy, momentum and other between two observed systems
Transfer type Electric charge q Electric potential
Conductivity C Electric capacity

Amount of warmth Q
T Abs. temp. (thermal potential) k Heat conductivity coefficient C - Heat capacity

Amount of substance Chemical potential


D Diffusion coefficient K amount of particles per volume unit

Connection Law

= =

= =

= =

Generalized Transfer Equation

Q generalized charge; Transfer coefficient; Difference of potentials

Main hypotheses of the Dynamic Theory of the Software Systems


1. Software system (SS) is the open non-equilibrium system, which interacts with its subject domain on the laws of non-equilibrium processes..
2. SS is characterized the special function of the state amount of being in it defects. 3. Disappearance and appearance of defects in SS is the result of the united action of direct (out coming) and reverse (incoming) streams of defects. 4. Intensity of stream is proportional the amount of defects, which formative a stream. 5. (Principle of equality of rights). All defects are equal and participate in formation of stream in the same way, regardless of reason of origin, localization, type of defect and possible consequences of its exposure. 6. (Principle of continuity). A function is differentiated on all range of its definition.

Mathematical models in the Dynamic Theory of the Software Systems


Mathematical model is the autonomous system of differential equations:
1 2

= 1 1 2 2 = 2 1 1 2
,

Where

1 - an own coefficient of influence, 2 - is a mutual coefficient of influence

Classification of the software systems in SSD theory


1. On the sign of linearness. Nonlinear software system will be called the system, coefficients' influence of which are depend on the amount of defects in it.
For non-linear systems:

2. On the order of models. The order of model of software system will be called the order of differentiation equalization, which is describes the law of changing of amount of errors in time in this model.
For the first-order systems:

df1 dt A1 (f1 , f 2 ) f1 A 2 (f1 , f 2 ) f 2 df 2 A (f , f ) f A (f , f ) f 2 1 2 1 1 1 2 2 dt

1 = 1 1

DTSS. First-ordering model Solutions for the number of defects

A number of defects is in the system: 1 = 0 1 Failure intensity function : 1 = 0 1 1 Cumulative number of defects:
1 = 0 0 1

DTSS. Two-ordering model Solutions for the going out stream of defects

A number of defects is in the system: 1 = 0 1 2 Failure intensity function : 0 1 = 1 + 2 2


0 1 = 2
2 1

+ 1 2

2 +1

Cumulative number of defects:


2 + 1 2 1 2 2 + 1 2 2 + 2 1 2 2 2 1 2 + 1 2 1 2

10

DTSS. Two-ordering model


Defects of out-coming stream depending on =
2 1

Remaining number of defects

Cumulative number of defects

11

Software systems dynamics . Two-ordering model Solutions for the incoming stream of defects

Number of defects that is brought to the system: 2 = 0 1 2 Failure intensity function : 0 2 = 1 + 2 2


0 2
2 1

+ 2 1

2 +1

Cumulative number of defects:


2 = 2 + 1 2 1 1 2 2 2 1 4 2 2 1 2 + 1 2 1 2

12

Software systems dynamics . Two-ordering model


Defects of incoming stream depending on =
2 1

Number of the brought in defects

Cumulative number of defects

13

Software systems dynamics . Two-ordering model


Phase plane for software systems

14

Software systems dynamics . Two-ordering model


Internal equilibrium of the software systems
Defects
100 90 80 70 60 50 40 30 20 10

Outcoming
Incoming Equilibrum state

0
0 50 100 150 200 250 300

te

350

400

450

500

Time

ln 0 1 + 2

Law of streams equilibrium. In any software system output and entrance streams arrive at an internal equilibrium. Time of achievement of internal equilibrium straight proportional to the initial amount of defects and inversely proportional to the sum of coefficients of influence
15

Software systems dynamics . Two-ordering model


External equilibrium of the software systems
Points of external equilibrium

Theorem of equilibrium. For passing of the software system to the state of external equilibrium it is necessary and enough implementations of one of terms : 1. A1 < A2 (less defects are brought in SS than corrected); 2. . A1 = A2 (so much defects are brought in SS how many corrected). Theorem of stability. Position of external equilibrium is asymptotically steady at implementation of condition A1 < A2
Steady

Quasistable

16

Software systems dynamics . Two-ordering model


Types of the cumulative curves
Type 3 Type 2

Type 1

Type 1: Type 2: Type 3:

intensity of outgoing stream is more than incoming intensity of outgoing stream is equal to intensity of incoming

or the founded defects are not corrected


intensity of outgoing stream less than incoming

17

Software systems dynamics . Two-ordering model


Types of the real cumulative curves (1)

Michael R. Lyu. Handbook of Software Reliability Engineering. Chapter10, Ss1.dat

18

Software systems dynamics . Two-ordering model


Types of the cumulative curves (2)

OS Android http://code.google.com/p/android/issues/list

19

Software systems dynamics. Experimental verification


123 data sets, 10 reliability models A criterion of models comparison is standard deviation (SD)
Values Number of untilled data sets Minimal SD Maximal SD SSD 0 0,03 54,54 Jel..-. 22 0,64 902,9 NHPP 9 0,28 823,7 Schneide SGeome MusaMusa Weibul Duane wind shape. tric Okum. 49 0,12 306,9 52 0 0 0 2 49 0,47 0,02 0,01 0,26 0,16 0,63 10441 559,7 245,9 1006,4 6452,2 417,84

Results of models comparison (in relation to SSD)

20

Conclusions
1. The concept of streams of defects is first entered, that allowed to use the methods of the non-equilibrium system dynamics theory for the software reliability estimates 2. On the base of the main hypotheses the software systems dynamics theory was created 3. On the basis of this theory the concept of the order of a software systems model was introduced and proposed the classification on the basis of linearity. 4. As first the mathematical model of identify and introduction of defects for a twoorder were obtained. 5. There were introduced three main types of cumulative curves of the detection of defects and identified the conditions of their occurrence. 6. The experimental verification and comparative analysis of existing models of reliability of PC and the developed model were completed. 7. These results confirm the validity of the theory of the software systems dynamics

21

Оценить