Sunteți pe pagina 1din 13

Fiabilitatea softurilor.

1 Aspecte teoretice ale fiabilitii software


1.1

Indicatori de fiabilitate

Definiie: Fiabilitatea unui program este probabilitatea ca sistemul din care face parte s
opereze fr vreo defectare datorat activrii unui defect n program, n condiii date i ntr-un
interval de timp dat.
Indicatori:-Fiabilitatea R(t) R(t ) P (T t ) 1 F (t ) 1 P(T t )

-Media timpurilor ntre defectri MTTF MTTF t f (t ) dt


0

-Mediana m F (m)

1
2

-Rata defectrilor (t )
1.2

(t )

f (t )
R (t )

Modele de fiabilitate

Problema estimrii fiabilitii software este o problem de predicie, indicatorii prezentai


anterior sunt ncorporai ntr-o form sau alta n aa numitele modele de fiabilitate software (MFS)
acestea sunt modele statistice ce realizeaz predicii asupra ratei de defectare a unui program
cunoscndu-se istoria lui. Ele realizeaz i ipoteze asupra procesului de depistare i eliminare a
erorilor.
Exist dou tipuri de MFS-uri care prezic timpul ntre defectri i care prezic numrul de
defectri ntr-un interval de timp dat.
Cele dim prima clas pot fi exprimate ca o funcie densitate de probabilitate f i (t ) ai crei
parametri pot fi estimai pe baza valorilor timpilor dintre defectele anterioare, aceast funcie este
utilizat pentru a previziona timpul pn la urmtoarea defectare precum i fiabilitatea sistemului
software. Parametrii lui f i (t ) pot fi estimai fie prin metoda verosimilitii maxime fie prin
metoda celor mai mici ptrate.
n continuare vom prezenta cele mai importante trei modele de estimare a fiabilitii
software:
1.2.1

Modelul Jelinski-Moranda
Ipoteze:
a) Rata deteciei defectelor este proporional cu numrul curent de defecte din
program.
b) Toate defectrile au acela-i probabilitate de apariie i sunt independente una de
alta.
c) Fiecare defectare are acela-i ordin de severitate.
d) Rata de defectare rmne constant n intervalul dintre dou defectri.
e) Probramul este executat n manier similar cu funcionarea operaional anticipat.
f) Defectele sunt corelate instantaneu fr introducerea n program a unor defecte noi.
g) Numrul total de defecte ateptate este limitat superior.

Punctele slabe ale modelului:


- ipotezele iniiale sunt aproximative.
- estimrilre parametrilor au prioriti limitate.
- prediciile de fiabilitate sunt optimiste.

1.2.2

Modelul Musa-Okumoto
Ipoteze:
a) Deteciile defectrilor sunt independente unele de altele.
b) Numrul de defectri ateptat este o funcie de timp logaritmic.
c) Intensitatea de defectare scade exponenial cu numrul ateptat al defectrilor
aprute.
d) Nu exist o limit superioar a numrului total de defectri.
e) Probramul este executat n manier similar cu funcionarea operaional anticipat.
Principalele caracteristici ale modelului sunt:

- folosete pentru rata defectrilor relaia t


- predicia este realizat prin utilizarea unor estimri ale parametrilor.
1.2.3

Modelul Littlewood-Verall
Ipoteze:
a) Timpii ntre defectri consecutive sunt variabile aleatoare independente fiecare
avnd o distribuie exponenial.
b) Rata de defectare formeaz o secven de variabile independente fiecare din ele
avnd o alt distribuie. Cu alte cuvinte programul poate deveni mai puin fiabil pe durata
testrii dac n program sunt introduse mai multe defecte dect cele eliminate n etapa de
corecie.
c) Nu exist o limitate superioar a numrului de defecte.
Avantaje:
- poate reprezenta incertitudinea depanrii.
- poate reprezenta creterea sau scderea fiabilitii.
Dezavantaje:
- nu poate estima numrul defectelor rmase.

1.3

Supermodele

Un supermodel se obine prin combinarea unor modele de baz atribuind fiecruiea o anumit
pondere.
Pot fi definite trei tipuri de combinaii:
1. Combinaii liniare ponderate statistic
2. Combinaii n care ponderile sunt atribuite dinamic pe baza comportrii rezultatelor
modelelor pe durata celor n observaii anterioare.
3. Combinaii n care ponderile sunt atribuite dinamic pe baza verosimilitii
previzionale asupra celor n observaii anterioare.
1.4

Testarea datelor

Se poate demonstra c problema prediciei fiabilitii unui software are sens numai dac setul
de date indic o cretere n timp a fiabilitii. Astfel exist dou metode care permit detectarea
tendinei de evolutie a fiabilitii nainte de a ncepe analiza propriu-zis a datelor.
1.4.1

Media aritmetic a execuiilor

Rezultatele testului sunt afiate grafic i sunt interpretate dup cum urmeaz.Pentru datele
timpi ntre defectri dac media execuiilor crete atunci timpul ntre defectri crete i deci crete i
2

fiabilitatea sistemului, prin urmare modelele pot fi aplicate dac media aritmetic a execuiilor este
cresctoare.
1.4.2

Testul Laplace
Rezultatele sale sunt ilustrate grafic i sunt interpretate astfel:

se rejecteaz ipoteza nul c detecia defectelor urmeaz un proces Poisson omogen , n


favoarea unor ipoteze de cretere a fiabilitii cu un nivel de semnificaie de a% dac statistica
testului este mai mic sau egal cu valoarea la care funcia de distribuie cumulativ pentru o
distribuie normal este

se rejecteaz ipoteza nul c detecia defectelor urmeaz un proces Poisson omogen n favoarea
unei scderi de fiabilitate la un nivel de semnificaie de a% dac statistica testului este mai
mare sau egal cu valoarea la care funcia de distribuie cumulativ pentru distribuia normal
este

a
100

1 a
100

se rejecteaz ipoteza c exist o variaie a fiabilitii n favoarea ipotezei c nu exist nici o


tendin la un nivel de semnificaie de a% dac statistica testului este ntre valorile la care
funcia de distribuie cumulativ este

1 a
2 i
2
100
100

Vom testa cu ajutorul mediei aritmetice a execuiilor i a testului Laplace tendina pe care o are
fiabilitatea odat cu trecerea timpului n cazul setului de date 70.dat.

Fig. 1. Media aritmetic a execuiilor

Figura de mai jos (fig.1) reprezint testul mediei aritmetice a execuiilor aplicat setului de
date 70.dat i indic o cretere a mediei execuiilor ceea ce nseamn o cretere a timpului ntre
defectri i deci o certere a fiabilitii. Ca urmare modelele pentru predicia fiabilitii pot fi
aplicate cu succes.
3

Fig. 2. Testul Laplace

Figura de mai sus reprezint testul Laplace aplicat setului de date . Se observ c setul de
valori nu se pstreaz n limitele a 5 % n jurul valorii medii (4000) deci setul de date este
implementabil pentru dezvoltri ulterioare. n alt ordine de idei observm c ncepnd cu
defeciunea numrul 17 cu excepia a dou defeciuni toate valorile statistici testului sunt mai mici
sau egale cu 2 ceea ce denot o cretere a fiabilitii cu un nivel de semnificaie de 5%, nseamn
c modelele de fiabilitate pot fi aplicate cu succes pentru acest set de date.
1.4.3

Execuia modelelor i interpretarea rezultatelor

Pentru a estima fiabilitatea programului software ale crui caracteristici sunt date prin setul
de date, din multitudinea de modele de fiabilitate software existente n utilitarul Casre vom executa
doar modelul Musa-Okumoto, modelul Jelinski-Moranda i modelul quadratic Littlewood-Verral
considerate ca fiind cele mai importante.
Execuia acestor modele impune setarea corespunztoare a anumitor parametri. Astfel vom
considera c parametrii funciei densitate de probabilitate vor fi estimai prin metoda verosimiliti
maxime (maximul likelihood); ca istoric al programului pe baza cruia modele vor realiza predicii
asupra ratei de defectare a acestui program vom considera subsetul de date format din prima
jumtate a setului de date iniial ; numrul de predicii n viitor pe care l vor realiza modelele l
vom considera ca fiind 20% din numrul total de defecte (17 defecte). Dup ce aceti parametrii au
fost setai corespunztor putem trece la execuia modelelor.

Fig. 3. Timpul ntre defectri

n figura de mai sus (fig.3) am reprezentat numrul de defectri n funcie de timpul ntre
defectri. n acest figur apar pe lng setul de date iniial i trei curbe reprezentnd prediciile
celor trei modele, notate dup cum apare n legenda din partea de sus a figurii. Reamintim c prima
jumtate a setului de date (defectele nr. 1-67) este folosit ca istoric al programului n timp ce
ncepnd cu a doua jumtate (defectele nr. 68-135) punctele ce formeaz cele trei curbe sunt
predicii ale modelelor ce pot fi comparate cu datele reale pentru a vedea dac predicia modelel or
se apropie de realitate,ceea ce conform fig.3 este adevrat. Deasemenea punctele care apar dup
cele 3 bare verticale adic dup defectul 135 reprezint predicii n viitor ale modelelor prin care se
specific exact cte defectri au mai rmas dup dup defectul 135. Analiznd fig.3,conform
modelului Jelinski-Moranda se observ c dup defectul nr.135 nu mai sunt dect 7 defectri. Cu
privire la celelalte dou modele acestea estimez c dup defectul cu numrul 135 vor exista mai
mult de 20 de defectri. Ceea ce putem spune despre aceste dou modele este c modelul MusaOkumoto este mai optimist dect modelul qadratic Littlewood-Verall deoarece modelul MusaOkumoto estimez un timp ntre defectri mai mare dect timpul ntre defectri estimat de modelul
qadratic Littlewood-Verall.

Fig. 4. Intensitatea de defectare

n ceea ce privete intensitatea de defectare reprezentat n figua de mai sus (fig.4) putem spune
c rata de defectare ,conform celor trei modele executate, este paralel cu orizontala ceea ce
nseamn c ea este aproximativ constant.

Fig. 5. Numrul total de defectri

n figura de mai sus (fig.5) este reprezentat numrul total de defectri n funcie de timpul
acumulat de la nceputul detectrii defectelor i pn n momentul detectrii celui de-al 162-lea
defect (ultimul). Deoarece punctul de start din care modelele i ncep predicia este identic cu
primul punct din setul de date cele dou figuri ,nr.total de defectri pentru tot setul de date i nr.
total de defectri pentru subsetul de date pentru care s-a aplicat modelele, sunt identice.
6

Din figur observm c gra ficul ce reprezint prediciile modelului Jelinski-Moranda tinde s
devin tangent la asimtota orizontal aflat n dreptul defectrii nr.142, ceea ce nseamn c
numrul total de defectri, conform modelului Jelinski-Moranda, dup 200.000 secunde este de 142
i rmne constant.Conform modelului Musa-Okumoto dup 200.000 secunde numrul total al
defectelor este de 171 i continu s creasc odat cu trecerea timpului. Iar n ceea ce privete
modelul qadratic Littlewood-Verall acesta estimeaz c dup 200.000 secunde numrul total de
defectri este de 195 i continu s creasc.
i de aici putem trage concluzia c modelul modelul qadratic Littlewood-Verall este mai
pesimist dect modelul Musa-Okumoto.

Fig. 6. Fiabilitatea

Figura de mai sus (fig.6) reprezint fiabilitatea pentru urmtoarele 1.864 secunde. Acest interval
de timp este setat implicit de utilitarul Casre el fiind intervalul de timp care a tercut de la
remedierea penultimei defectri i pn la apariia ultimei defectri.
Observnd (fig.6) modelul Jerinski-Moranda estimeaz c dup 200.000 secunde de funcionare
probabilitatea de bun funcionare a programului pentru nc 1.864 secunde este 1. Conform
modelului Musa-Okumoto dup 200.000 secunde de funcionare probabilitatea de bun funcionare
a programului pentru nc 1.864 secunde este 0,67. Iar dup modelul qadratic Littlewood-Verall
dup 200.000 secunde de funcionare probabilitatea de bun funcionare a programului pentru nc
1.864 secunde este 0,54.
n ceea ce privete creterea de fiabilitate, aceasta se calculeaz ca fiind diferena dintre
fiabilitatea dup 200.000 secunde (sfitul prediciei) i fiabilitatea dup 85.000 secunde (nceputul
prediciei n viitor). Astfel modelul Jerinski-Moranda estimeaz o cerretre de fiabilitate de 0,38;
modelul Musa-Okumoto prezice o cretere de fiabilitatea de 0,27; iar modelul qadratic LittlewoodVerall presupune o cretere de fiabilitate de 0,18.
Conform celor trei modele executate asupra setului de date exist o cretere de fiabilitate,cretere
dealtfel normal deoarece odat cu detecia defectelor ele sunt remediate. i de aceast dat
observm c modelul Jelinski-Moranda este cel mai optimist n aceast privin iar modelul qadratic
Littlewood-Verall cel mai pesimist.
Menionm c fiabilitatea poate lua valori ntre 0 i 1.
7

n continuare vom prezenta i comenta cele mai importante criterii de evaluare a modelelor de
fiabilitate software.
n tabelul de mai jos (fig.7) sunt reprezentate calitile potrivirii celor trei modele executate
asupra setului de date. Acest test se realizeaz n prima faz naintea aplicrii oricrui alt criteriu de
evaluare, scopul testului este de a determina dac rezultatele unui model se ncadreaz n nivelul de
specificaie specificat. Pentru datele de tip timp ntre defectri este folosit testul KomogorovSmirnov. Pe prima coloan a tabelului avem numele modelului, pe coloana a doua este specificat
valoarea calitii potrivirii (mai exact statistica testului Kormogorov-Smirnov), iar n coloana a treia
se indic dac modelul se ncadreaz n nivelul de specificaie de 5%. Astfel observm din tabelul
de mai jos c toate rezultatele celor trei modele se ncadreaz n nivelul de specificaie de 5%
distanele Kolmogorov-Smirnov fiind corecte.

Fig. 7. Calitatea potrivirii

Fig. 8. Verosimilitatea previzional

n figura de mai sus (fig.8) este reprezentat verosimilitatea previzional a celor trei modele
executate. Acest criteriu de evaluare traseaz grafic rezultatul raportului dintre funciile de
verosimilitate a dou modele, ns pentru o reprezentare grafic mai simpl utilitarul Casre afieaz
negativul logaritmului natural al raportului ca funcie de numrul de erori ncepnd cu punctul n
care modelele i ncep predicia i pn la sfritul prediciei. Acest raport este realizat ntre
modelul n cauz i un model etalon.
Dac acest raport este unul supraunitar atunci primul model este mai precis dect cellalt; dac
raportul este egal cu 1 atunci ambele modele sunt la fel de precise; iar dac raportul este subunitar
atunci al doilea model este mai precis dect primul. Pe baza acestor proprieti se poate specifica
care dintre cele trei modele are o previziune mai precis. Legenda din partea de sus a fig.8 ne indic
8

ultimile valori ale negativului logaritmului natural la raportului pentru fiecare model n parte, deci,
se observ c verosimilitatea previzional a celor trei modele este foarte apropiat una de cealalt.
Precizia relativ prezentat n figua urmtoare (fig.9), care este nu criteriu de evaluare strict legat
de verosimilitatea previzional ilustrez exact probabilitatea ca un model s fie mai precis dect
altele. Observm din (fig.9) c n intervalul de timp n care modelele proceseaz defectele 67-110
predicia relativ a celor trei modele este aproximativ egal.
n intervalul de timp n care modelele analizeaz defectele 110-130 se observ clar c modelul cu
precizia de estimare cea mai ridicat este modelul qadratic Littlewood-Verall el ajungnd s prezic
de apeoape 5.750 de ori mai precis dect modelul Jelinski-Moranda i de aproape 2.000 de ori mai
precis dect modelul Musa-Okumoto, n dreptul defectului nr.126. n ultima parte a setului de date,
mai precis n dreptul ultimului defect, dup cum apare i n legenda figurii, modelul Musa-Okumoto
ajunge s prezic de 2.685 de ori mai precis dect modelul Jelinski-Moranda i modelul qadratic
Littlewood-Verall ajunge s prezic de 2.461 de ori mai precis dect modelul Jelinski-Moranda.

Fig. 9. Precizia relativ

Un alt criteriu de evaluare a modelelor de fiabilitate este acela prin care se detrmin tendina
modelului, astfel un model are o anumit tendin dac estimrile lui se ndeprteaz n mod
sistematic de comportarea programului deja observat. De exemplu dac un model estimeaz timpi
ntre defectri mai mari dect cei deja observai putem spune despre modelul respectiv c are o
tendin optimist. Iar n cazul n care un model estimeaz timpi ntre defectri mai mici dect cei
deja observai putem spune despre acel model c are o tendin pesimist. Acest criteriu de evalure
reprezint graficul unei funcii U n funcie de numrul de defecte, unde aceast funcie U reprezint
probabilitatea de defectare a programului nainte de timpul Ti estimat de model. Un model care nu
are nici o tendin ar trebui s aib un grafic n care toate punctele s fie distribuite uniform.
Modelele care au ns o anumit tendin prezint grafice n care punctele apar grupate. Astfel dac
aceste puncte sunt grupate n apropierea axei X de-a lungul unui anumit interval de defectri
nseamn c pe acel interval modelul respectiv are o tendin optimist. Dac ns punctele sunt
grupate n partea de sus a graficului de-a lungul unui anumit interval, atunci pe acel interval
modelul respectiv va avea o tendin pesimist.
9

Fig. 10. Probabilitatea de defectare

Dup cum observm din figura de mai sus (fig.10) de-a lungul primului interval de defectare
(68-100), pentru modelul Jelinski-Moranda avem 20 valori ale funciei U din totalul de 33 sub
pragul de 0,5, ceea ce nseamn c modelul are o tendin optimist , iar de-a lungul celui de-al
doilea interval de defectare (101-135) din totalul de 33 de valori ale funciei U ,27 sunt sub pragul
de 0,5 tendina modelului fiind una puternic optimist.
Modelul Musa-Okumoto de-a lungul primului interval de defectare din totalul de 33 de valori ale
funciei U ,22 sunt deasupra pragului de 0,5 modelul avnd un caracter pesimist iar de-a lungul
celui de-al doilea interval de defectare din totalul de 33 de valori ale funciei U ,20 sunt sub pragul
de 0,5 modelul avnd un caracter uor optimist. n fine modelul qadratic Littlewood-Verall de-a
lungul primului interval de defectare din totalul de 34 de valori ale funciei U ,22 sunt deasupra
pragului de 0,5 modelul avnd un caracter pesimist, iar de-a lungul celui de-al doilea interval de
defectare din totalul de 33 de valori ale funciei U ,18 sunt sub pragul de 0,5 modelul avnd un
caracter uor optimist
Un alt criteriu de evaluare a modelelor software este graficul U (fig.11) care indic tendina
prediciilor unui model la nivel global fr a ine cont de ordonarea n timp a valorilor distribuiilor.
n aceast figur vor aprea distribuia cumulativ a funciilor U i distribuia cumulativ a
probabilitii reale de defectare, aceasta din urm fiind prima bisectoare. Dac graficul U al unui
model este preponderent deasupra primei bisectoare atunci predicia sa pe ansamblul observaiilor
este una optimist, iar dac este sub prima bisectoare avem o tendin pesimist a modelului n
cauz. Dup cum observm din (fig.11) modelul Jelinski-Moranda are tendina de a face estimaii
optimiste n ceea ce privete timpi ntre defectri, n timp ce celelalte dou modele nu au nici un fel
de tendine ele urmrind n deaproape prima bisectoare, aceste presupuneri sunt confirmate i de
legenda din partea de sus a figurii, unde ne este indicat valoarea distanei Kormogorov pentru
fiecare model i dac ele au o anumit tendin.

10

Fig. 11. Graficul U

Dup cum am mai spus graficul U nu arat felul n care tendina modelelor s-ar putea schimba n
timp. S-ar putea de exemplu ca un model s aib o tendin pesimist la nceputul estimrii asuptra
setului de date i spre sfritul setului de date acesta s tind a fi optimist, acest lucru poate fi
ilustrat de un alt criteriu de evaluare graficul Y prezentat n figura urmtoare (fig.12). Interpretarea
graficului Y se face la fel ca i interpretarea graficului U. Am putea deci spune analiznd (fig.12) c
cele trei modele la nceputul i la sfritul tronsonului de date au o tendin pesimist pentru ca n
partea de mijloc s aib o tendin optimist. Din legenda figurii observm ns c nici unul din
modele nu depete nivelul de semnificaie de 5%, deci cele trei modele nu prezint o anume
tendin.

11

Fig. 12. Graficul Y

Criteriul de evaluare poate cel mai puin folosit este zgomotul modelului (fig.13) , el
reprezentnd imprecizia proprie a modelului datorat eroorilor introduse de fiecare model prin
calculele pe care le execut. Pe msur ce zgomotul modelului crete precizia de estimare a acestuia
scade.

Fig. 13. Zgomotul modelelor

n cele din urm modelele pot fi clasificate pe baza a cinci dintre criteriile prezentate mai sus :
calitatea potrivirii, verosimilitatea previzional, graficul U, graficul Y i zgomotul modelului.
Aceast clasificare este de dou tipuri: o clasificare sumar i o clasifcicare detailat. n cadrul
primului tip de clasificare modelele vor fi clasificate pe baza celor cinci criterii de evaluare dar
inndu-se cont numai de fiabilitatea msurat pn n momentul nceperii previziunii n viitor a
modelelor, pe cnd cel de-al doilea tip de clasificare se face tot pe baza celor cinci criterii de
evaluare dar innd cont de toate aspectele nu numai de fiabilitate.
n clasificrea modelelor de fiabilitate aceste cinci criterii prezint o importan mai mare sau mai
mic n funcie de proritile i ponderile pe care utilizatorul le va atribui acestor criterii. Ponderile
atribuite criteriilor pot lua valori ntre 0 i 1, cu ct ponderea unui criteriu va fi mai aproape de 1 cu
att el va avea un cuvnt mai greu de spus n stabilirea clasamentului modelelor executate. n ceea
ce privete prioritile acestea au rolul de a stabili ordinea n care vor fi aplicate cele cinci criterii
pentru a clasifica modelele executate. Astfel atribuind unui criteriu prioritatea 1 aceasta nseamn c
el va fi primul care va aciona asupra modelelor. Dac el nu poate s fac diferenierea ntre dou
modele atunci criteriul cu prioritatea nr. 2 va face acest lucru s.a.m.d. Utilitarul Casre ofer un set
implicit de prioriti i ponderi ale celor cinci criterii unde prioritile sunt urmtoarele:calitatea
potrivirii, verosimilitatea previzional, graficul U, graficul Y i zgomotul modelului iar n ceea ce
pricete ponderile acestea au toate valoarea 1.
Observm att din clasificarea sumar (fig.14) ct i din clasificarea detailat (fig.15) c
modelul cu cele mai precise estimaii este modelul Musa-Okumoto urmat pe locul doi de modelul
qadratic Littlewood-Verall i pe locul trei de modelul Jelinski-Moranda.
12

Fig. 14. Clasificarea sumar a modelelor

Din clasificarea detailat (fig.15) se observ c modelul qadratic Littlewood-Verall a fost pus pe
primul loc de trei dintre criterii, n timp ce modelul Musa-Okumoto a fost clasat pe primul loc doar
de dou dintre acestea, modelul Jelinski-Moranda fiind clasat de toate cele cinci criterii pe locul
trei. Dei doar dou dintre criteriile de evaluare au clasat modelul Musa-Okumoto pe primul loc
acestea fiind cotate cu prioriti i ponderi mai ridicate dect celelalte criterii au propulsat acest
model pe primul loc.
Modificnd prioritile i ponderile n limite restrnse vom observa c ordinea celor trei modele
nu se schimb, n timp ce dac prioritile i ponderile se vor modifica n limite largi pe primul loc
va trece modelul qadratic Littlewood-Verall, iar pe locul doi modelul Musa-Okumoto, n timp ce
modelul Jelinski-Moranda va rmne tot timpul pe locul trei indiferent de modificrile survenite n
rndul prioritilor sau a ponderilor. De exemplu modificarea prioritilor a dou criterii succesive
astfel nct ele s se succead n ordine invers sau modificrea oricrei ponderi ntr-o plaj de la 0,6
la 1 nu duce la modificarea clasificrii celor trei modele. n schimb de exemplu inversarea
prioritilor criteriilor 2 i 4 sau o atribuire sub 0,6 a unei ponderi duce la modificarea
clasamentului.

Fig. 15. Clasificarea detailat a modelelor

13