You are on page 1of 43

FIABILITATE

Academia Tehnică Militară


Cuprins
1. Terminologie ......................................................................................................................................... 3
1.1 Descriere ............................................................................................................................................. 3
1.2 Terminologia ....................................................................................................................................... 3
1.3 Software-ul de fiabilitate al măsurătorilor .......................................................................................... 4
1.4 Creșterea fiabilității ............................................................................................................................. 5
2. Modele de creștere a fiabilității software .............................................................................................. 6
2.2. Littlewood-Verrall (LV) ............................................................................................................... 7
2.2.1. Descriere ............................................................................................................................... 7
2.2.2. Presupuneri ........................................................................................................................... 8
2.3. Formule ......................................................................................................................................... 8
2.4. Modelul Musa Okumoto ............................................................................................................... 9
2.5. Generalized Poisson model ........................................................................................................... 9
2.6. Yamada S-shaped model ............................................................................................................... 9
2.7. Supermodele ................................................................................................................................. 9
2.7.1. SLC_SUP .............................................................................................................................. 9
2.7.2. RLC_SUP ........................................................................................................................... 10
2.7.3. DLC_SUP ........................................................................................................................... 10
3. Acuratețea modelelor de predicție ...................................................................................................... 10
3.1 Plotul U ............................................................................................................................................. 11
3.2 Plotul Y ............................................................................................................................................. 12
3.3 Zgomot .............................................................................................................................................. 12
3.4 Prequential Likelihood Ratio (PLR) ................................................................................................. 12
3.5 Recalibrarea ...................................................................................................................................... 13
4. Aplicarea a 3 modele originale pentru setul de date S2.dat ................................................................ 14
4.1. Testul Laplace ............................................................................................................................. 15
4.2. Running Arithmetic Mean .......................................................................................................... 16
4.3. Aplicarea de modele de creștere a fiabilității .............................................................................. 17
4.4. Numarul eșecurilor cumulative ................................................................................................... 17
4.5. Fiabilitate .................................................................................................................................... 18
4.6. Model Bias (U-plot) .................................................................................................................... 19
4.7. Model Bias Trend (y-plot) .......................................................................................................... 20
4.8. Prequential Likelihood (Densitatea de probabilitate) ................................................................. 21
4.9. Model Noise (Zgomotul modelului) ........................................................................................... 22
4.10. Model ranking- Prediction Noisiness(Predictia zgomotului) .................................................. 22

1
4.11. Model ranking –Model Bias ................................................................................................... 23
4.12. Verosimilitatea relativă-Prequential Likelihood Ratio ........................................................... 23
4.13. Concluzia ................................................................................................................................ 24
5. Super modele ...................................................................................................................................... 25
5.1. Sarcinile statice (SLC) ................................................................................................................ 25
5.2. Sarcini bazate pe rezultate (RLC) ............................................................................................... 28
5.3. Sarcini bazate pe evaluare (DLC) ............................................................................................... 30
5.4. Compararea supermodelelor (SLC, RLC, DLC)......................................................................... 32
5.5. Concluzia supermodelelor........................................................................................................... 34
6. Setul de date fc_test1.dat .................................................................................................................... 34
6.1. Testul Laplace ............................................................................................................................. 34
6.2. Running Arithmetic Average (Media Aritmetica) ...................................................................... 35
6.3. Failure counts (Numărul erorilor în intervalul de timp) .............................................................. 37
6.4. Failure Intensity(Intensitatea erorilor) ........................................................................................ 37
6.5. Cumulative Failures (Erorile Cumulative) .................................................................................. 38
6.6. Fiabiliatatea ................................................................................................................................. 39
6.7. Goodness of Fit (Intervalul de incredere) ................................................................................... 39
6.8. Prequential Likelihood (Densitatea de probabilitate) ................................................................. 40
6.9. Relative Accuracy (Verosimilitatea relativă) .............................................................................. 41
6.10. Ranking : Prequential Likelihood (Densitatea de probabilitate) ............................................. 41
6.11. Concluzie ................................................................................................................................ 42

2
1. Terminologie

1.1 Descriere

Atunci când soft-ul se defectează sau se comportă incorect acesta poate fi descris în termenii
eșecuri, defecte și erori. Atunci când descrii o problemă este importnat să știi precis si concis definirea
termenilro utilizați. În fiabilitatea softului termenii sunt definiți după cum urmează:

1.2 Terminologia

Eșec: Un pas important, un proces sau o definiție a datelor într-un soft care cauzează sistemul să
funcționeze într-o manieră neintenționată și/sau neanticipată.
Defect: Incapacitatea sistemului sau componentei de a funcționa funcțiile necesare în parametrii
de performanță specificati.
Eroare: O necorespondență dintre calculul, observația sau valoarea măsurată sau condiția
necesară ca fiind adevărată, specificată sau teoretic corectă ca valoare sau condiție.
Măsurătorile de eșecuri și defecte asociate sunt esențiale pentru măsurătorile de dezvoltare,
testare și funcționarea sistemelor complexe

Tabelul de mai jos prezintă posibile clasificări de eșecuri, care sunt posibile pentru fiecare sistem
software.

Clasa eșecului Descrierea


Tranzitorie Apare numai cu anumite intrări
Permanente Apar la toate imputurile
Recuperabile Systemul poate sa fie recuperat prin operația
inversă
Ne-recuperabile Este nevoie de o intervenție la operator pentru a se
recupera din starea de eșec
Non-stricător Eșecul nu corupe stare sistemului sau datele
Stricător Eșecul corupe sistemul sau datele

În scopul de a crește fiabilitatea sistemului software, poate fi necesar să se identifice diferitele


categorii de eșec prin utilizarea diferitelor măsurători pentru fiecare dintre aceste clase.
De asemenea, este esențial să se știe că, atunci când măsurarea fiabilitatea, consecințele eșecurilor
nu vor fi luate în considerare. Eșecuri tranzitorii nu poate produce consecințe, cu excepția cazului în care
se utilizează o parte defectuoasă a sistemului, dar și alte eșecuri pot întrerupe pierderi de date sau de
corupție și pierderea serviciu de sistem.

3
1.3 Software-ul de fiabilitate al măsurătorilor

Măsurătorile de fiabilitate de mai jos sunt o condiție esențială pentru a înțelege măsurarea
fiabilității software.Variabila t se definește ca termen-unitate și funcția F (t) este funcția de distribuție a
variabilei aleatoare t.

Metrică Definiție Formulă


Fiabilitatea Probabilitatea ca un anumit R(t) = P(T > t) = 1 − F(t) = 1 −
software se va executa fără eșec P(T < t)
într-o stare specificată și într-un
anumit interval de timp t.
P este probabilitatea

Timpul mediu al defecțiunii Măsurarea timpului între MTTF =∫0 𝑡𝑓(𝑡)𝑑𝑡
defecțiuni, de exemplu MTTF
de 500 înseamnă că timpul scurs
între eșecuri constă 500 unitati
de timp
Mijlocul: m Chiar probabilitatea sau mijlocul F(m) = 12
o distribuție statistică
Rata aparitiei eșecului Frecvența de apariție a f(t)
λ(t) =R(t)
comportamentului neașteptat, de
exemplu ROOT de 0,02
înseamnă 2 eșecuri probabil în
fiecare 100 de unități de timp de
funcționare
Disponibilitatea Măsurarea probabilității ca 𝐴 = 1 − (1 − 𝐴𝑥)2
sistemul sa fie disponibil.
Timpul pentru
reparație/repornire este luat în
calcul. De exemplu,
disponibilitatea a 0.998
inseamna ca sistemul este
disponibil 998 din 1000 de
unități de timp
Probabilitatea de eșec la cerere Măsurarea probabilității că POFODavg ≈ λDUm
POFOD sistemul va eșua atunci când o unde
cerere de serviciu se face. De λDU = rata de eșec a unui
exemplu, POFOD = 0, 001 pericol mare nedetectat
înseamnă că din 1000 de cereri
de servicii rezultă un eșec

4
1.4 Creșterea fiabilității

În această secțiune, accentul este pus pe predicția fiabilității software, în care vom prezenta
modelele care au fost folosite în cadrul proiectului. Unele dintre modele sunt mai pesimiste în timp ce
altele sunt mai optimiste, în funcție de scenariu. În unele cazuri, un model va fi mai optimist decât altele,
în timp ce modelul foarte asemănător poate fi complet opus, astfel încât nu este sigur sa concluzionăm
care model este mai bun în faza de început.
Determinarea modelului depinde în întregime de datele pe care le va aplica modele pe.
Comparațiile se va face între modele în ceea ce privește deplasarea și zgomotul, care sunt definite ca:

 Deplasarea reprezintă distanța dintre linia pantă-unitate având graficul modelului definit ca si
deplasare. Cu cât valoarea deplasării este mai mare, cu atât modelul are deplasarea mai mare.
În capitolul urmator vom explica fenomenul de deplasare mult mai detaliat.
 Zgomotul reprezintă faptul că fluctuația de modele poate varia de la foarte mare la foarte
scăzut. Această fluctuație este cunoscută sub numele de zgomot, ceea ce este un lucru pe care
dorim să-l evităm deoarece acesta va face modelul mai puțin precis. În capitolele următoare
vom defini mai bine modul în care se măsoară zgomotul, și cum se poate prezice zgomotul.
De asemenea lucrând cu fiabilitatea software avem două teoreme care ar trebui sa ne intereseze,
acestea fiind următoarele:
1. Legea randamentelor în scădere: Această lege spune că dacă un sistem conține un număr
mare de eșecuri pe care le avem pentru a depana, este nevoie de mai mult timp pentru a
descoperi noi eșecuri. Acest lucru înseamnă că o echipă de testeri de software vor trebui să
folosească mai mult timp pentru a descoperi erori ca urmare a evoluției procesului de
depanare. În cele din urmă ei vor ajunge la un punct în cazul în care trebuie să ia în
considerare oprirea testării deoarece este nevoie de prea mult timp pentru a depana eșecurile,
și le-ar cheltui prea mulți bani în scopul de a obține îmbunătățiri foarte mici ale fiabilității.
2. Teorema: Bayes: teorema descrie relațiile care există într-o serie de probabilități simple și
condiționate. De exemplu, daca mamogramele sunt cunoscute a fii 95% probabile, aceasta ar
însemna faptul ca sunt 5% negativ false (cazuri pierdute), sau un amestec între falsul pozitiv
și falsul negativ. Teorema Bayes permite calculul probabilității de a avea cancer la sân, dând
un mamogram pozitiv, pentru oricare dintre aceste trei cazuri. Probabilitatea unei
mamograme pozitive va fi diferită pentru fiecare dintre aceste cazuri.

Pentru a îmbunătăți sistemele de software în viitorul apropiat, datele preluate in prealabil vor fi
foarte importante pentru a învăța să ajustăm parametrii în funcție de noile informații. În capitolul urmator
vom avea o privire mai exactă asupra unui număr de modele de creștere a fiabilității.

5
2. Modele de creștere a fiabilității software

Capitolul anterior explică importanța fiabilității software si cum afecteaza lumea software.
Creșterea cerințelor fiabilității software a adus la creearea diferitelor modele de crestere a fiabilității.
Aceste modele au ca scop modelarea fiabilității, în moduri diferite. Cum aceste modele se comportă
diferit, ele exprimă fie un comportament optimist sau pesimist.

Modelele pot arăta un anumit grad de:

 Deviația descrie cât de mult modelele predictive difera fața de tendințele actuale.
 Zgomotul descrie cât de mult fluctuează modelul, i.e. o noțiune de ambivalență.
Acest capitol va conține descrierea modelelor de creștere, care vor fi folosite de-a lungul proiectului.
Pentru fiecare model, se vor prezenta:

 Descrierea modelului
 Presupunerile modelului
 Formulele modelului

2.1. Jelinski-Moranda (JM)

2.1.1. Descriere

Modelul JM este primul model propus în aces câmp, și este un model optimist. Estimeaza
timpul dintre eșecuri ca o funcție exponențială, îmbrățisând Legea Diminuării
Randamentului. Modelul JM este folosit pentru estimarea MTTF-ului, cantitatea de erori
rămase nedectate și rata detectării de erori.
JM presupune ca procesul de depanare este în întregime determinist și ca toate eșecurile
contribuie egal la rata de eșec pentru software. Atunci când o eroare este detectată, rata de
eșec globală este scăzută cu o valoare proportională constantă φ.

2.1.2. Presupuneri

 Eșecurile sunt detectate individual una față de cealaltă


 Rata de eșec este neschimbată între două eșecuri consecutive
 Eșecurile sunt corectate si înlăturate imediat după detectare
 Corectarea unui defect nu poate introduce un alt defect
 Rata de eșec este proportională cu numărul de eșecuri nedetectate

6
2.1.3. Formule

Formulele dintre eșecuri sunt definite ca:

𝑋𝑖 = 𝑇𝑖 − 𝑇𝑖−1 , 𝑖 = 1 … 𝑛
Rata de eșec este:
𝜆𝑖 = (𝑁 − 𝑖 + 1) ∙ 𝛷
, unde i este indexul eșecului, N este numărul inițial de eșecuri și phi este contribuția ratei de eșec
globală.
Timpul mediu între eșecuri este, deci:

Funcția de fiabilitate este definită ca:

Și funcția densității de probabilitate exponențială este:

Parametrii necunoscuți, N și 𝛷, pot fi estimați de către metoda aproximării:

În concordanță cu cele presupunerile menționate mai sus:


 𝜆 este determinist
 Toate eșecurile contribuie egal la rata eșecurilor, numită 𝛷
 Fiecare înlăturare reduce rata de eșec cu 𝛷

2.2. Littlewood-Verrall (LV)

2.2.1. Descriere

Modelul LV a fost lansat după apariția modelului JM. LV privește lucrurile la un alt nivel, luând
în considerare ambele incertitudini:

 Inputul aleator
 Depanarea aleatoare
Mai mult, modelul LV îmbrațișeaza posibile fluctuații ale fiabilității. Modelul vede procesul de
depanare ca un proces independent, stohastic, unde fiabilitatea poate crește sau scade. Astfel, acest model
poate susține un model mai realistic al procesului de depanare, unde în corecția unei defectări poate duce
la o altă defectare.

7
2.2.2. Presupuneri
 Erorile sunt distribuite aleator
 Erorile reziduale nu pot fi estimate
 Corectarea unei erori, poate duce la descoperirea alteia.
 Executări sucesive între eșecuri sunt variabile aleatoare exponențiale independente
 Software-ul este operat într-o manieră similară utilizării operaționale anticipate.

2.3. Formule
Funcția de densitate exponențială dintre doua eșecuri consecutive este:

Secvența ratei λi este tratată ca o secvență de variabile descrescătoare independete, stohastice.


Densitatea de probabilitate pentru λi :

Pentru Ψ(i),se observă că:

 Crescând Ψ(i) implică o creștere în fiabilitate


 Scăzând Ψ(i) implică un program mai puțin fiabil, din moment ce o corecție a unui eșec
introduce un nou eșec
Utilizatorul poate definii arbitrar familia parametrilor Ψ(i), dar aici, următoarea regulă este folosită:

Funcția de densitate de probabilitate dupa t inter-eșecuri ori este:

Și fiabilitatea este definită ca:

ROCOF este:

Si MTTFi este:

Parametrii necunoscuti α, β1 si β2 sunt estimați folosind metoda Aproximării Maxime:

8
2.4. Modelul Musa Okumoto
Acest model ia in considerare faptul ca defectiuniile ai rate de aparitie diferite. Cele din stagiile
initiale ale sistemului au un impact mai mare decat cele ce apar mai tarziu. Se realizeaza urmatoarele
presupuneri:
 Detectia independenta a erorilor
 Esecurile nu apar in mod simultan
 Predictiile viitoare sunt independente de cele din trecut
 Software nu va fii niciodata lipsit de erori
𝜆
 ROCOF este estimat de catre functia : 𝜆𝑖 (𝑡) = 𝛽+𝑡
 Numarul estimat de erori este o functie logaritmica in timp
 Intensitatea erorilor scade in mod exponential odata cu cresterea numarului esecurilor
suferite
 Predictia este facuta prim substituirea estimatiilor ML a parametrilor

2.5. Generalized Poisson model


 Software-ul este operat în maniere similare ca folosirea operațională anticipată
 Numărul de eșecuri așteptat, apărute în orice interval de timp este proporțional cu eșecul
la timpul testării, și cu niște funcții legate de cantitatea de timp acoradată in testarea
eșecurilor
 Toate eșecurile sunt egal probabile esa apară și sunt independente unele de celelalte
 Fiecare eșec este de același nivel de ”severitate” ca orice alt eșec
 Eșecurile sunt conectate la capetele intervalului de testare, fară sa introducă noi eșecuri
2.6. Yamada S-shaped model
 Un sistem software este subiectul eșecurilor aleatoare cauzate de defecțiuni prezente în
sistem
 Conținutul eșecului inițial al sistemului software este cauzat de o variabilă aleatoare
 Timpul dintre eșecuri (k-1) și k depind de timpul pana la eșecul (k-1)
 De fiecare data când un eșec apare, defecțiunea care a cauzato este înlăturată imediat, și
nu este introdus un alt eșec
 Numărul total de eșecuri așteptate să fie văzute au o legătura înalta.
2.7. Supermodele
Pentru obtinerea unui supermodel, niște modele simple (de bază) au fost combinate și
niște ponderi medii importante au fost atribuite lor. Urmează prezentarea descrierii super
modelelor care sunt formate de noi, cu scopul testării.

2.7.1. SLC_SUP
Acest model este format din ponderea componentelor predictive ale modelului, cu
greutați ponderate. Cele doua modele componente alese sunt JM și LV. Modelelor li se atribuie
ponderi diferite, făcând astfel un super model – o Combinație Liniară de Ponderi Inegale(Statice)
(SLC – în limba engleză). Informal, modele pot fii descrise ca:

9
2.7.2. RLC_SUP
Acesta este un super model, o Combinație Liniară bazată pe Rezultat. La fiecare pas de
calcul, perfomanța fiecarei componente a modelului este evaluată si modelul este clasat. Cea mai
mare clasă a unui model este dată de ponderea 5/10, a doua este dată de ponderea 3/10 și cel mai
de jos model este dat de ponderea 2/10. Evaluarea performanței este dată ca o medie peste pașii
anteriori. Cele trei modele componente sunt JM, LV si MO.
2.7.3. DLC_SUP
Super modelul Combinația Liniară cu pondere Dinamică (DLC) asignează ponderi în
concordanță cu distribuția de probabilitate r, unde sunt în total m modele, este:

Modelele componente sunt: JM, LV si MO.

3. Acuratețea modelelor de predicție

Modelele definite în capitolul anterior au diferite utilizări și se comportă diferit. Dar care este cel
mai bun pentru setul de date actual? Această este întrebarea care trebuie pusă pentru a avea încredere în
rezultatele modelului. Chiar și pe același set de date, modele diferite pot oferi predicții diferite și, în
realitate, nu este un model ”perfect” pentru fiabilitatea software. Nimeni nu se poate într-un model fără un
motiv.
Acest capitol va descrie metode pentru evaluarea modelelor de predicție și va compara modelele
între ele. Plotul U și plotul Y sunt folosite pentru detectarea deviației, iar Raportul probabilității continue
(PLR) este folosit pentru compararea modelelor.

10
3.1. Plotul U

U-plot este o tehnică folosită pentru identificarea deviației unui model. Așadar, poate oferi
încredere în modelul ales. Detectează diferențele dintre comportamentul prezis și cel observat al
eșecurilor.

Fie o estimare de
𝐹𝑖 (𝑡) = 𝑃(𝑇𝑖 < 𝑡),
unde 𝑡1 , 𝑡2 , … , 𝑡𝑖−1 sunt datele observate.

Fie 𝐹̂ (𝑡) notația pentru o predicție adevărată, necunoscând F(t). Așadar, ne interesează cât de
aproape este 𝐹̂ (𝑡) de F(t).
Se consideră următoarea secvență de transformări:

𝑢𝑖 = 𝐹̂𝑖 (𝑡𝑖 )

Dacă 𝐹̂ este identic cu adevăratul F, atunci 𝑢𝑖 ar fi o formare de variabile aleatorii ale


uniformității U(0,1). Deci, comparația dintre 𝐹̂ și F poate fi redusă la o problemă mai simplă, și anume
cât de mult se aseamănă secvența 𝑢𝑖 de un eșantion aletor din U(0,1).
În acest scop, se folosește distanța Kolmogorov -Smirnov. Distanța Kolmogorov -Smirnov
presupune măsurarea deviației verticale maxime, după cum se poate observa în figura 3.1. În acest
exemplu, predicția este considerată ca fiind deviată, deoarece este destul de pesimistă. Altfel spus, 𝑢𝑖 sunt
prea „mari”, întrucât asta înseamnă supraestimarea șansei unui eșec prematur.

Figura 3.1: Exemplu Kolmogorov-Smirnov.

11
3.2. Plotul Y

Deoarece U-plot pierde, in calcule, informație temporală, se folosește tehnica Y-plot. De


exemplu, dacă un model se comportă inițial în mod optimist, apoi pesimist, comportamentul său nu poate
fi identificat în plotul U. Tehnica Y-plot a fost dezvoltată pentru a identifica aceste variații locale. Plotul
Y extinde tehnica plotului U, transformând 𝑢𝑖 în 𝑦𝑖 , după cum urmează:

, n fiind numărul total al eșecurilor observate. Rezolvând aceste calcule, trendurile locale pot fi
descoperite în 𝑢𝑖 .

3.3. Zgomot

Modelul de zgomot este definit folosind ecuația

, unde 𝑡𝑖 este predicția în timp pentru modelul i.

3.4. Prequential Likelihood Ratio (PLR)

PLR este o tehnică pentru compararea secvențelor de predicție pentru acuratețe. Este folosit
pentru identificarea celui mai exact model de predicție, însă nu oferă dovezi directe ale acestei exactități.
Valoarea PLR este calculată în funcție de zgomotul și de deviația modelelor analizate.

Fig. 3.2: PLR

12
Probabilitatea continuă este

,
Iar raportul probabilității continue este

Se poate demonstra că dacă 𝑃𝐿𝑅𝑛 → ∞ așa cum 𝑛 → ∞, atunci modelul A este de preferat. Dacă
𝑃𝐿𝑅𝑛 → 0, modelul B este preferat. Așadar, modelul cu cea mai mare valoare a lui 𝑃𝐿𝑛 este modelul cel
mai de încredere.

3.5. Recalibrarea

Pentru anumite seturi de date, anumite modele par a se comporta doar deviate. În aceste cazuri, se
poate estima relația dintre modelul predictiv și realitate, iar aceasta se poate folosi pentru a recalibra
modelul predictiv.

Tehnica recalibrării funcționează astfel:

 Se obține plotul U, se alege 𝐺𝑖∗ în funcție de predicțiile făcute înaintea pasului i,


 Se obține predicția la pasul i;
 Se calculează predicția recalibrată;
 Se repetă pașii anteriori; se va obține o secvență de predicții recalibrate.

Este important de reținut că nu trebuie să se considere că predicțiile recalibrate sunt mai bune
decât cele neprelucrate. Se poate folosi PLR pentru a identifica cel mai bun model recalibrat de predicție.

13
4. Aplicarea a 3 modele originale pentru setul de date S2.dat

În această secțiune lucrăm cu setul de date “S2.dat”, și îl analizăm cu ajutorul a 3 modele de


creștere a fiabilității software. Cele trei modele sunt reprezentate de modelele Jelinski-Moranda (JM),
Littlewood-Verall (LV) și Musa Okumoto(MO). Începem prin a ne uita la setul de date S2
neprelucrate,urmând a aplica modelele. Figura 4-1 ne arată acest lucru.

Figura 4-1. Date neprelucrate

14
4.1. Testul Laplace

Testul Laplace este folosit pentru a arata dependența locală și globală a fiabilității software. Cum
toate eșecurile software nu contribuie cu aceeași cantitate de încredere software, graficul nu este liniar.
Există de asemenea și riscul scăderii fiabilității software totale a programului, când un eșec este corectat.
Din aceasta cauză, graficul este cababil sa fluctueze. Testul Laplace este reprezentat in Figura 4-2.

Figura 4-2. Testul Laplace

Trebuie să ținem cont de doi factori importanți, atunci când analizăm un plot al testului Laplace:
a) Valori pozitive ale testului Laplace indică faptul că sunt scăderi globale ale fiabilității.
Aceste cazuri sunt reprezentate de eșecurile cu numărul 3, 4, 11 și 12. În rest, se observă
o creștere globală a fiabilității.

15
b) Cu toate că fiabilitatea software crește global, poate exista și o scădere locală a
fiabilității în procesul de depanare. O creștere a valorilor testului Laplace indică acest
lucru. Când aceste valori cresc, spunem că avem o scădere locală a fiabilității software.
Aceste cazuri sunt reprezentate în intervalul de eșecuri, începand de la eșecul numărul
22, pâna la eșecul numărul 33. După eșecul 33, valorile încep sa scadă din nou, și,
implicit, avem o creștere locală a fiabilității.

4.2. Running Arithmetic Mean

Acest plot arată timpul mediu dintre eșecuri. În general, ne dorim ca timpul dintre eșecuri să
crească în procesul de depanare, din moment ce acest lucru indică o creștere a fiabilității programului.

Figura 4-3. Running Arithmetic Mean

16
În Figura 4-3 este reprezentat timpul dintre eșecuri, ce crește odata cu trecerea timpului în
procesul de depanare. Acest lucru ne indica faptul că setul de date S2 este potrivit pentru a aplica modele
asupra lui.

4.3. Aplicarea de modele de creștere a fiabilității


Dorim să analizăm setul de date S2, folosind diferite modele, mai precis modelele JM, LV și MO.
Începem prin selectarea acestor modele și analizarea numărului de eșecuri cumulative. Acest lucru se
observă in Figura 4-4.

4.4. Numarul eșecurilor cumulative

Figura 4-4. Timpul cumulat dintre eșecuri

17
Acest plot arată că timpul dintre eșecuri este mic la începutul procesului de depanare, și crește cu
cât eșecurile sunt corectate. Acest lucru este arătat de către curba care începe să se atenueze, indicând
faptul că timpul crește foarte rapid, dar numărul de erori nu crește, ci tinde către saturare. Aceasta este o
dovadă puternică a legii diminuării randamentului. Această lege spune că odată cu creșterea numărului de
eșecuri corectate, crește si timpul necesar descoperirii unui nou eșec. Înseamnă că echipa de testeri
software va avea nevoie din ce în ce mai mult de timp pentru a descoperii eșecurilor. Eventual ei vor
ajunge la un punct în care trebuie să ia în considerare încetarea testării, din moment ce ia prea mult timp
pentru a descoperii un nou eșec, iar costurile încep să crească din ce în ce mai mult, în timp ce
îmbunatățirile fiabilitații cresc foarte greu.

4.5. Fiabilitate

Figura 4-5. Plotul Fiabilității cu modelele JM, JV, și Musa Okumoto

În graficul din Figura 4-5, observăm fiabilitatea estimată pentru următoarele 3902 secunde. Cu
cât curba crește pe axa-y, cu atât modelele sunt mai optimiste în legătură cu urmatoarele fiabilități. Putem
observa, că după prima perioadă, unde cele trei modele sunt identice, modelele JM și MO devin chiar
optimiste. JM este un model optimist in general, și este cel mai optimist model de aici.

18
4.6. Model Bias (U-plot)

U-plot-ul este folosit pentru a vedea cât de deplasate sunt modelele teoretice față de datele reale
ale experimentului. Ne dorim ca modelele sa fie cât mai apropiate de realitate deoarece acest fapt ar crește
încrederea în modelele respective în vederea realizării altor predicții viitoare. Ne putem da seama dacă un
model este apropiat de realitate prin analiza u-plotului și observarea diferenței față de graficul rampei
unitate. Cu cât distanța dintre model și rampa unitate este mai mare cu atât este mai deplasat față de
realitate. Se folosește distanța Kolomogorov-Smirnoff pentru a măsura distanța dintre rampa-unitate și
graficul modelului. Valori mai mari indică depărtări mai mari de modelul real.
Figura următoare ne indică faptul că pentru setul de date s2.dat cele trei modele aplicate sunt
deplasate (Jelinsky-Moranda, Musa-Okumoto și Linear LV).

Figura 4-6 : Model Bias (U-plot) pentru modelele JM,LV și MO

Se poate remarca faptul că modelele Musa-Okumoto și Jelinsky-Moranda au pantă variabilă în


jurul rampei unitate în timp ce modelul Linear LV este un model pesimist, graficul acestuia plasându-se

19
sub graficul rampei unitate. Distanțele KS pentru cele trei modele sunt reprezentate în marginea de sus a
figurii. Conform acestora, modelul JM este cel mai apropiat de datele reale cu o distanță KS de 0.144209,
în timp ce modelul LV este cel mai depărtat de realitate cu o distanță KS de 0.197663.
Distanțele KS sunt reprezentate în figura 4-7 și indică faptul că modelele se află în marja de 5%,
indicând o potrivire bună pentru testul KS. Modelul Musa-Okumoto prezintă cea mai bună potrivire
având valoarea distanței KS cea mai mare, în timp ce modelul Linear LV prezintă cea mai proastă
potrivire având distanța cea mai mică.

Figura 4-7: Potrivire (Goodness of fit) celor 3 modele Linear LV,JM si MO

4.7. Model Bias Trend (y-plot)

La generarea u-plot-ului anumite informații temporale sunt pierdute . Rezultatul acestor pierderi
constă în evoluția neconsistentă a graficului. Dacă la începutul experimentului modelul este pesimist , în
timp acesta poate deveni optimist, tranziție care nu este reprezentată în graficul u-plot-ului. Pentru a
vedea această informație, numită în literatura de specialitate tendință, se utilizează y-plot-ul. În locul ”ui”-
urilor (probabilitate de defectare) pe ordonată se foloseste notația ”yi”. Aceste valori se translatează în
următoarea manieră :

Conform figurii 4-8 niciunul din modele propuse nu au o tendință de variație dominantă. Y-plot-
ul însă a demonstrat că modelul Linear LV nu este așa de pesimist precum u-plot-ul l-a arătat.

20
Figura 4-8: Model Bias Trend (Y-plot) pentru modelele MO,Linear LV si JM

4.8. Prequential Likelihood (Densitatea de probabilitate)


Afișarea rezultatelor –ln PL pentru cele 3 modele JM,Linear LV si MO pentru setul de date
s2.dat din Figura 3.9 arată că modelul Linear LV are cea mai mare valoare a parametrului PL.

Figura 4-9 Prequential Likelihood pentru modelele JM,Linear LV si MO

21
4.9. Model Noise (Zgomotul modelului)
Graficul modelelor uneori poate varia necontrolat. Această variație poartă denumirea de
”zgomot”. Se dorește minimalizarea sau eliminarea totală a zgomotului deoarece dă modelului un grad de
imprecizie. Nivelul de zgomot specific fiecărui model este afișat în Figura 4-10.

Figura 4-10 Nivelul de zgomot pentru modelele JM,Linear LV si MO


Conform acestei figuri se poate trage concluzia că modelul JM are cel mai mare nivel de zgomot,
implicit cel mai mare nivel de incertitudine, în timp ce modelul Linear LV este cel mai precis din punct de
vedere al zgomotului având cel mai mic nivel de zgomot.

4.10. Model ranking- Prediction Noisiness(Predictia zgomotului)

Programul CASRE oferă posibilitatea utilizatorului de a realiza un clasament bazat pe parametrii


de interes pe baza cărora se compară cele trei modele. Dorim să comparăm modelele cu privire la
”predicția zgomotului” motiv pentru care setăm clasamentul parametrilor in următoarea ordine:
1. Prediction Noisiness
2. Prequential likelihood
3. Goodness of fit
4. Trend in model bias
5. Model Bias
Prediction noisiness este setat pe cu rangul 1 deoarece dorim ca acesta sa fie parametrul
dominant. Rezultatul este afișat in Figura 4-11.

Figura 4-11 : Prediction noisiness pentru modelele Linear LV,JM si MO

22
Conform acestor date modelul Linear LV este modelul cu cea mai bună comportare când vine
vorba de predicția zgomotului din moment ce are cel mai mic nivel de zgomot dintre cele 3 modele
urmărite.

4.11. Model ranking –Model Bias

Putem face acelasi lucru și în cazul deviației modelelor. Vom seta ”Model Bias” cu cel mai mic
rang si comparăm modelele. Rezultatele sunt următoarele :
1. Model Bias
2. Prequential likelihood
3. Goodness of fit
4. Trends in model bias
5. Prediction Noisiness

Figura 4-12 Model ranking –Model bias pentru modelele JM,MO si Linear LV

Conform acestor rezultate ne putem da seama ca modelul cel mai bun este JM având în vedere că
acesta avea și cel mai mic nivel de deviație.

4.12. Verosimilitatea relativă-Prequential Likelihood Ratio

Până acum ne-am concentrat pe rând la câte un parametru pentru compararea celor trei modele.
Pentru a compara modelele pe baza mai multor parametrii ne uităm la Prequential Likelihood pentru
fiecare model în parte. Această valoare este calculata tinând cont atât de nivelul de zgomot cât și de
deviația modelului. Formulele pentru calcularea acestui parametru sunt:

Unde :
PL este valoarea parametrului prequential likelihood(densitatea de probabilitate), fi(T) este predicția
pentru al i-lea timp de eșec iar ti este valoarea observată. Este bine să comparăm două modele pe baza
valorilor PR individuale. Această comparație poartă denumirea de ”Prequential Likelihood Ratio” notată
cu PLR. Pentru două modele A si B PLR se calculează în felul următor:

23
Dacă întreaga expresie crește cu un ordin de mărime n, înseamnă că modelul A are o valoare PLR
mai bună, iar în caz contrar modelul B are o valoare PLR mai bună. Modelul cu valoarea PL mai mare are
un nivel de încredere mai ridicat pentru realizarea predicțiilor viitoare.
În cazul nostru valorile PLR sunt următoarele :

Figura 4-13 : Verosimilitatea relativă pentru modelele Linear LV, JM si MO


Conform acestor date MO prezintă cele mai mari valori ale parametrului PL în comparație cu
celelalte două modele.

4.13. Concluzia
În această secțiune am analizat cele trei modele de creștere a fiabilității JM,Linear LV si MO.
Când vine vorba de determinarea celui mai bun model pentru viitoare predicții se iau în calcul mai mulți
factori. Cei mai importanți se referă la cât de deviate sunt modelele, cât zgomot produc și cum se
rapoartează una la cealaltă pe scara PLR. Am ajuns la concluzia ca Linear LV cea mai bună alegere în
acest context. Această alegere se bazează pe faptul că are fluctuații atenuate,iar nivelul de zgomot este
scăzut. Cel de-al doilea criteriu este valoarea PLR pentru cele trei modele și din nou modelul LV s-a
comportat cel mai bine având cele mai mari valori. Cel de-al treilea criteriu este nivelul de variație al
modelelor. U-plot-ul a arătat că Linear LV era mai deviat decât celelalte modele dar y-plot-ul a arătat ca
nu era așa de pesimist cum se credea inițial din u-plot. De asemenea modelul Linear LV are nivele de
deviatie mult mai mari decât alte modele. Astfel am ajuns la concluzia că modelul LV a arătat deviații

24
acceptabile față de modelul real. Cele trei criterii ne-au făcut să credem că modelul Linear LV este cea
mai bună alegere în cazul unei predicții viitoare în acest context.

5. Super modele

Din comparațiile anterioare ale JM, MO și modelelor Liniare LV, alegem modelul care a avut cea
mai buna performanță al setului de date specificat și apoi folosim acest model pentru următoarea
predicție.
Acest lucru va respinge probabil acele modele care sunt foarte aproape de cea mai bună
performanță, deoarece avem nevoie, în mod normal, doar de un model, alegându-l astfel pe cel mai bun și
respingându-le pe restul. Pentru a îmbunătăți această situație, putem combina predicțiile a două sau mai
multe modele. Uneltele CASRE ne oferă posibilitatea combinării diferitelor modele. Modelul rezultat
după combinare se numește supermodel. Ecuația următoare arată combinarea a două modele:
̂𝑗 (𝑡) = 𝑤1 𝐹
𝐹 ̂𝑗 𝐴(𝑡) + 𝑤2 𝐹
̂𝑗 𝐵(𝑡), 𝑤1 + 𝑤2 = 1

A și B sunt modele candidate, w1 și w2 sunt sarcini și 𝐹 ̂𝑗 (𝑡) este predicția combinată. Această
ecuație poate fi folosită pentru a combina două sau mai multe modele. Când trebuie să alegem sarcinile
{ 𝑤𝑘 }, una dintre variantele posibile pentru a alege valorile sarcinilor optime este: pentru o predicție la
pasul i, presupunem că {𝑤𝑘 } ia valorile care maximizează probabilitatea continuă (PL) al predicatorilor
combinați asupra predicțiilor anterioare. Următoarea ecuație arată posibilele soluții:
𝑗=𝑖−1 𝑗=𝑖−1
̂𝑗 (𝑡𝑗 ) = 𝑚𝑎𝑥 ∏ (𝑤1 𝐹
𝑚𝑎𝑥 ∏ 𝐹 ̂𝑗 𝐴(𝑡) + 𝑤2 𝐹
̂𝑗 𝐵(𝑡))
𝑗=1 𝑗=1

În capitolul următor, vom combina modelele JM și LV pentru a forma trei tipuri de supermodele.
Diferența dintre cele trei este modalitatea de calcul a sarcinilor. Vom compara supermodelele cu modelele
originale. În final, vom compara supermodelele între ele. Setul de date pentru test este ”S1.dat”.

5.1. Sarcinile statice (SLC)

Acest supermodel este o combinație a modelelor JM și LV, iar sarcinile celor două modele sunt
selectate static, când este definit supermodelul. Sarcina de contribuție poate fi setată ca în figura
următoare. Sarcina de contribuție pentru JM este 50%, iar pentru LV este 50%.

25
Supermodelul va fi comparat cu modelul original după modelele Bias și Goodness of Fit.
Clasamentul este bazat, în primul rând, pe modelul Goodness of Fit și în al doilea rând pe modelul Bias.

SLC - Goodness Of Fit

Figura de mai sus arată că modelul Liniar LV are distanța KS cea mai mică, ceea ce oferă cea mai
bună predicție. SLC este al doilea model. Toate modelele sunt potrivite pentru un procent de
reprezentativitate de 5%.

26
SLC Biased

În figură se observă că modelele JM și LV sunt deviate și doar SLC este nedeviat. Modelul JM
este prea optimist, iar cel LV prea pesimist.

27
SLC Rank models

SLC Ranking

Figura arată ca SLC oferă cea mai bună performanță. Chiar dacă Goodness of Fit este mai slab
decât LV liniar, SLC rămâne cel mai bun model.

5.2. Sarcini bazate pe rezultate (RLC)

Sarcinile bazate pe rezultate iau rezultatele anterioare ca referință. În acest caz, sarcinile sunt
alese în funcție de clasament. Sarcinile fiecăruia dintre modelele originale sunt determinate comparând
rezultatele modelelor inițiale. Se setează sarcinile pentru JM și LV la 5. Supermodelul RLC este comparat
cu modelul inițial. Clasamentul este bazat pe modelul Goodness of Fit și, apoi, pe modelul Bias.

28
RLC Goodness of Fit

Figura de mai sus arată că, din nou, LV liniar are cea mai mică distanță KS, care oferă cea mai
buna predicție. RLC este al doilea cel mai bun model. Toate modelele sunt reprezentative pentru un
procent de 5%.

RLC Biased

In grafic se observă ca JM și LV sunt deviate, doar RLC fiind nedeviat. JM este prea optimist și
LV prea pesimist. RLC este cel mai apropiat de panta liniară unitară.

29
RLC Ranking

Se observă că cea mai buna performanță o oferă RLC. Chiar daca Goodness of Fit este mai slab
decât LV liniar, RLC rămâne cel mai bun model.

5.3. Sarcini bazate pe evaluare (DLC)

În acest model, sarcinile sunt atribuite dinamic, după o combinație bazată pe evaluări. Sarcinile
pentru fiecare model original sunt determinate după statistica schimbărilor de bază într-o probabilitate
continuă în urma unui număr mic de observații.

Figura arată că, din nou, LV liniar are cea mai mică distanță KS, care oferă cele mai bune
predicții. DLC este al doilea cel mai bun model. Toate modelele sunt potrivite pentru un coeficient de
reprezentativitate de 5%.

30
DLC Biased

Din grafic se observă că, din nou JM și LV sunt deviate și că doar DLC este nedeviat. JM este
prea optimist, iar LV prea pesimist. DLC este cel mai apropiat de panta liniară unitate, ceea ce înseamnă
ca este cel mai puțin deviat.

DLC Ranking

Figura arată că cea mai bună performanță o are DLC. Chiar dacă Goodness of Fit este mai slab
decât LV, DLC rămâne cel mai bun model pentru setul de date s1.dat.

31
5.4. Compararea supermodelelor (SLC, RLC, DLC)

În această secțiun,vom compara performanțele celor trei supermodele SLC, RLC și DLC.
Alegerea supermodelelor din aplicația Casre:

Comparare modele DLC, RLC și SLC

Comparația bazată pe tipul Goodness of fit, Model bias și Model ranking.

Figure 4-12 Goodness of Fit(Slc, RLC, DLC )

Figura 4-12 ne arată faptul că SLC și RLC au cele mai mari distante KS, ceea ce dă cea mai bunp
predicție. DLC este cel mai puțin bun din cele trei supermodele. Toate modelele sunt setate pentru 5%
importanță.

32
Figure 4-13 Model Bias (SLC, RLC, DLC)

Figura 4-13 ne arată faptul că niciunul dintre cele trei modele nu este partiționat (biased), din
moment ce toate acestea sunt nepartiționate (unbiased). Toate acestea sunt aproape de panta liniară
unitate, ceea ce înseamnă modelul combinat este mai părtinitor (biased) decât modelele originale.
Creând aceste modele din combinația modelelor originale , în care este un model optimistic si unul
pesimistic, îmbunătățind comportamentul modelelor originale.

Figure 4-14 Model Ranking (SLC, RLC, DLC)

În figura 4-14 rezultatele Model Ranking ne arată faptul că cea mai bună performanță este dată
de DLC. Performanta SLC si RLC este foarte similară una alteia. Putem concluziona faptul că DLC este
cel mai bun model care să se potriveasca specificațiilor modelului s1.dat

33
5.5. Concluzia supermodelelor

În capitolul precedent am comparat toate cele trei tipuri de supermodele cu modelele lor originale
si supermodelele între ele. Combinația supermodelului este făcută între modelul optimistic JM si cel
pesimistic LV. Combinația îmbunătățește performanțele modelului original.
După cum ne-am așteptat toate combinațiile supermodelelor au performanțe mai bune decat cele
originale. Supermodelele minimizează părtinirea (bias-ul). După cum putem observa, ponderile fiecărui
model de combinații este foarte important pentru a determina comportamentul supermodelelor. Modelul
DLC are performanță mult mai bună decât celelalte modele, datorânduse faptului că ponderile sunt
alocate dinamic în loc să fie selectate de către utilizatori..

6. Setul de date fc_test1.dat

Spre deosebire de datasetul anterior, acest dataset diferă prin modul cum au fost recoltate datele și
anume număr de erori pe intervalul de timp. Pentru acest dataset ca modele de creștere a fiabilității s-au
ales modelele NHPP,Yamada S-Shaped și Poisson Generalizat.

6.1. Testul Laplace

Testul Laplace din Figura 4.2 indică faptul că statisticile testului scad odată cu creșterea
numărului de eșecuri suferite, arătând că fiabilitatea sistemului este în creștere. Se poate observa că
graficul ce modelează testul statistic Laplace se afla deasupra axei OX ceea ce nu indică o creștere a
fiabilității.

34
Numărul de esecuri pe intervalul de timp pentru datasetul fc_test1.dat

Testul Laplace pe setul de date fc_test1.dat

6.2. Running Arithmetic Average (Media Aritmetica)

Media aritmetică din figura urmatoare ne arată că timpul mediu dintre erori crește indicând în
acest mod faptul că sistemul nu arată o creștere a fiabilitatii sistemului.

35
Timpul mediu între erori
Conform figurii, modelul Yamada S-shaped este un model mult prea optimist în timp ce modelul
Poisson Generalizat aproximează cel mai bine modelul real iar NHPP este ușor pesimist.Modelele
Yamada S-Shaped prezintă cea mai mare reducere a erorilor unui sistem.

Media aritmetică a erorilor pentru setul de date fc_test1.dat

Timpul mediu între erori pentru modelele GP,NHPP și Yamasa S-shaped

36
6.3. Failure counts (Numărul erorilor în intervalul de timp)

În cazul tuturor modelelor se observă o descreștere a numărului de erori pe intervalul de timp


odată cu trecerea timpului.

Numărul de erori pe intervalul de timp pentru modelele PG,NHPP si Yamada S-Shaped

Din figura precedentă ne putem da seama că modelul Poisson Generalizat aproximează cel mai
bine modelul real.

6.4. Failure Intensity(Intensitatea erorilor)

Din figura ne putem da seama că intensitatea erorilor scade cu trecerea intervalelor de timp, astfel
putem spune că avem o creștere a fiabilității sistemului.

37
Intensitatea erorilor pentru modele PG,NHPP și Yamada S-Shaped

6.5. Cumulative Failures (Erorile Cumulative)

Erorile cumulative pentru modelele Yamada S-Shaped,PG și NHPP

Figura precedentă ne arată că cele trei modele resprectă cu foarte bună aproximație modelul real
punând în evidență legea randamentului în descreștere. Alura graficului este una concavă indicând faptul

38
că la început timpul de detectare al erorilor este mic, acesta crescând odată cu numărul de erori( devine
mai greu sa detectezi erorile și să le elimini din sistem).

6.6. Fiabiliatatea

Fiabilitatea modelelor Yamasa S-Shape,PG și NHPP

Fiabilitatea modelului Poisson Generalizat este cea mai apropiată de cea a modelului real.
Fiabilitatea modelului NHPP se aseamănă foarte mult cu cea a modelului Poisson Generalizat, amândouă
fiind două modele ușor pesimiste. Cât despre modelul Yamada S-Shape se poate observa că este un model
mult prea optimist indicând o creștere exagerată a fiabilității.

6.7. Goodness of Fit (Intervalul de incredere)

Din figura ne dăm seama că modelele NHPP și Poisson Generalizat respectă testul statistic
Kolmogorov-Smirnov de 5%. Yamada S-Shaped nu respectă testul.

39
Interval de încredere pentru modelele Yamada S-Shaped,NHPP și Poisson Generalizat

6.8. Prequential Likelihood (Densitatea de probabilitate)

Densitatea de probabilitate pentru modelele PG,Yamada S-Shaped si NHPP

Din figura anterioară se poate observa că modelul Yamada S-Shaped are cea mai mare densitate
de probabilitate având o valoare a parametrului –ln PL de 37.08.

40
6.9. Relative Accuracy (Verosimilitatea relativă)

Din figura următoare se observă că modelul NHPP are cea mai mare valoare a acestui parametru
și anume 2.03.

Verosimilitatea relativă pentru modelele PG,NHPP și Yamada S-Shaped

6.10. Ranking : Prequential Likelihood (Densitatea de probabilitate)

Dorim sa comparăm modelele cu privire la ”densitatea de probabilitate” motiv pentru care setăm
clasamentul parametrilor în următoarea ordine:
1. Prequential Likelihood
2. Godness of fit
Prequential Likelihood este setat cu rangul 1 deoarece dorim ca acesta să fie parametrul
dominant. Rezultatul este afișat.

41
Densitatea de probabilitate pentru modelete NHPP, PG și Yamada S-Shaped

Conform acestor date modelul Poisson Generalizat este modelul cu cea mai bună comportare
când vine vorba de distribuția de probabilitate, în timp ce modelul Yamada S-Shaped nu suportă această
evaluare.

6.11. Concluzie

În cazul acestui set de date modelul de creștere a fiabilității cel mai apropiat de cel real este cel
Poisson Generalizat, comportându-se foarte bine în cazul comparațiilor pe baza unor parametrii de
interes.

42

You might also like