Ce este testarea de fiabilitate? (Exemplu)

Ce este testarea de fiabilitate?

Testarea fiabilității este un proces de testare a software-ului care verifică dacă software-ul poate efectua o operațiune fără erori într-un anumit mediu pentru o anumită perioadă de timp. Scopul testării de fiabilitate este de a se asigura că produsul software este lipsit de erori și suficient de fiabil pentru scopul dorit.

Fiabilitate înseamnă „a obține același lucru”, în alți termeni, cuvântul „de încredere” înseamnă că ceva este de încredere și că va da același rezultat de fiecare dată. Același lucru este valabil și pentru testarea de fiabilitate.

Exemplu de testare a fiabilității

Probabilitatea ca un PC dintr-un magazin să funcționeze timp de opt ore fără să se blocheze este de 99%; aceasta se numește fiabilitate.

Testarea de fiabilitate poate fi clasificată în trei segmente,

  • Modelare
  • Măsurare
  • Îmbunătăţire

Următoarea formulă este pentru calcularea probabilității de defecțiune.

Probability = Number of failing cases/ Total number of cases under consideration

Exemplu de testare a fiabilității

Factori care influențează fiabilitatea software-ului

  1. Numărul de erori prezente în software
  2. Modul în care utilizatorii operează sistemul

Testarea fiabilității este una dintre cheile pentru o calitate mai bună a software-ului. Această testare ajută la descoperirea multor probleme în designul și funcționalitatea software-ului.

Scopul principal al testării de fiabilitate este de a verifica dacă software-ul îndeplinește cerințele de fiabilitate a clienților.

Testele de fiabilitate vor fi efectuate la mai multe niveluri. Sistemele complexe vor fi testate la nivel de unitate, ansamblu, subsistem și sistem.

De ce faceți teste de fiabilitate?

Testarea de fiabilitate se face pentru a testa performanța software-ului în condițiile date.

Obiectivul din spatele efectuării testelor de fiabilitate este:

  1. Pentru a găsi structura eșecurilor repetate.
  2. Pentru a găsi numărul de defecțiuni care apar este perioada specificată.
  3. Pentru a descoperi cauza principală a eșecului.
  4. A conduce Test de performanta a diferitelor module de aplicații software după remedierea unui defect.

Și după lansarea produsului, putem minimiza posibilitatea apariției defectelor și, prin urmare, putem îmbunătăți fiabilitatea software-ului. Unele dintre instrumentele utile pentru aceasta sunt: ​​Analiza tendințelor, Ortogonale Defect Clasificare și metode formale etc.

Tipuri de testare a fiabilității

Testarea fiabilității software include testarea caracteristicilor, Încărcarea testelor și Testarea regresiei

Testarea caracteristicilor: -

Featured Testing verifică caracteristica oferită de software și se desfășoară în următorii pași:-

  • Fiecare operație din software este executată cel puțin o dată.
  • Interacțiunea dintre cele două operațiuni este redusă.
  • Fiecare operație trebuie verificată pentru executarea ei corectă.

Testare de sarcină: -

De obicei, software-ul va funcționa mai bine la începutul procesului, iar după aceea, va începe să se degradeze. Testarea de încărcare este efectuată pentru a verifica performanța software-ului la sarcina maximă de lucru.

Test de regresie:-

Testarea de regresie este folosită în principal pentru a verifica dacă au fost introduse erori noi din cauza remedierii erorilor anterioare. Testarea de regresie este efectuată după fiecare modificare sau actualizare a caracteristicilor software și a funcționalităților acestora.

Cum se face testarea de fiabilitate

Testarea de fiabilitate este costisitoare în comparație cu alte tipuri de testare. Prin urmare, este necesară o planificare și un management adecvat în timp ce se efectuează teste de fiabilitate. Aceasta include procesul de testare care urmează să fie implementat, date pentru mediul de testare, programul de testare, punctele de testare etc.

Pentru a începe cu testarea de fiabilitate, testerul trebuie să urmărească în continuare lucrurile,

  • Stabiliți obiective de fiabilitate
  • Dezvoltați profilul operațional
  • Planificați și executați teste
  • Utilizați rezultatele testelor pentru a lua decizii

După cum am discutat mai devreme, există trei categorii în care putem efectua teste de fiabilitate, - Modelare, măsurare și îmbunătățire.

Parametrii cheie implicați în testarea fiabilității sunt: ​​-

  • Probabilitatea de funcționare fără defecțiuni
  • Durata de funcționare fără defecțiuni
  • Mediul în care se execută

Pasul 1) Modelare

Tehnica de modelare software poate fi împărțită în două subcategorii:

1. Modelarea predictiilor

2. Modelare estimativă

  • Rezultate semnificative pot fi obținute prin aplicarea unor modele adecvate.
  • Se pot face ipoteze și abstracții pentru a simplifica problemele și niciun model nu va fi potrivit pentru toate situațiile. Diferențele majore dintre cele două modele sunt:
Probleme Modele de predicție Modele de estimare
Referință de date Folosește date istorice Utilizează datele curente din dezvoltarea de software.
Când este utilizat în ciclul de dezvoltare De obicei, acesta va fi creat înainte de fazele de dezvoltare sau de testare. De obicei, va fi folosit mai târziu în ciclul de viață al dezvoltării software.
Interval de timp Va prezice fiabilitatea în viitor. Acesta va prezice fiabilitatea fie pentru momentul prezent, fie în timpul viitor.

Pasul 2) Măsurare

Fiabilitatea software-ului nu poate fi măsurată direct; prin urmare, alți factori corelați sunt luați în considerare pentru a estima fiabilitatea software-ului. Practicile actuale de măsurare a fiabilității software-ului sunt împărțite în patru categorii: -

Măsurarea 1: Valorile produsului

Valorile de produs sunt o combinație a 4 tipuri de valori:

  • Dimensiunea software-ului: – Line of Code (LOC) este o abordare inițială intuitivă pentru măsurarea dimensiunii software-ului. Doar codul sursă este numărat în această măsurătoare, iar comentariile și alte declarații neexecutabile nu vor fi luate în considerare.
  • Punct de funcție Metric:- Funcția Pont Metric este metoda de măsurare a funcționalității dezvoltării software. Acesta va lua în considerare numărul de intrări, ieșiri, fișiere master, etc. Măsoară funcționalitatea furnizată utilizatorului și este independent de limbajul de programare.
  • Complexitate este direct legată de fiabilitatea software-ului, deci este importantă reprezentarea complexității. Metrica orientată spre complexitate determină complexitatea structurii de control a unui program prin simplificarea codului într-o reprezentare grafică.
  • Valori de acoperire a testului:- Este o modalitate de estimare a defecțiunii și a fiabilității prin finalizarea testelor produselor software. Fiabilitatea software-ului înseamnă că este funcția de a determina dacă sistemul a fost complet verificat și testat.

Măsurarea 2: Măsuri de management de proiect

  • Cercetătorii au realizat că un management bun poate duce la produse mai bune.
  • Un management bun poate obține o fiabilitate mai mare prin utilizarea unor procese mai bune de dezvoltare, management al riscului și management al configurației.

Măsurarea 3: Măsurarea procesului

Calitatea produsului este direct legată de proces. Măsurile de proces pot fi utilizate pentru a estima, monitoriza și îmbunătăți fiabilitatea și calitatea software-ului.

Măsurarea 4: Valori de eroare și defecțiune

Măsurile de erori și defecțiuni sunt utilizate în principal pentru a verifica dacă sistemul este complet lipsit de defecțiuni. Atât tipurile de defecte găsite în timpul procesului de testare (adică înainte de livrare), cât și defecțiunile raportate de utilizatori după livrare sunt colectate, rezumate și analizate pentru a atinge acest obiectiv.

Fiabilitatea software-ului este măsurată în termeni de timpul mediu dintre defecțiuni (MTBF). MTBF constă din

  • Mean to failure (MTTF): este diferența de timp dintre două eșecuri consecutive.
  • Timpul mediu de reparare (MTTR): este timpul necesar pentru remedierea defecțiunii.
MTBF = MTTF + MTTR

Fiabilitatea pentru un software bun este un număr între 0 și 1.

Fiabilitatea crește atunci când erorile sau erorile din program sunt eliminate.

Pasul 3) Îmbunătățire

Îmbunătățirea depinde în totalitate de problemele apărute în aplicație sau sistem, sau de caracteristicile software-ului. În funcție de complexitatea modulului software, modul de îmbunătățire va diferi și el. Două constrângeri principale, timpul și bugetul vor limita eforturile depuse pentru îmbunătățirea fiabilității software-ului.

Exemple de metode pentru testarea fiabilității

Testarea fiabilității se referă la exersarea unei aplicații pentru a descoperi și elimina defecțiunile înainte ca sistemul să fie implementat.

Există în principal trei abordări utilizate pentru testarea fiabilității

  • Fiabilitate Test-Retest
  • Fiabilitatea formelor paralele
  • Consecvența deciziei

Mai jos am încercat să explicăm toate acestea cu un exemplu.

Fiabilitate Test-Retest

Fiabilitate Test-Retest

Pentru a estima fiabilitatea test-retest, un singur grup de examinați va efectua procesul de testare la doar câteva zile sau săptămâni distanță. Timpul ar trebui să fie suficient de scurt pentru a putea fi evaluate abilitățile examinatului în domeniu. Relația dintre scorurile examinatului de la două administrații diferite este estimată prin corelație statistică. Acest tip de fiabilitate demonstrează măsura în care un test este capabil să producă scoruri stabile și consistente în timp.

Fiabilitatea formelor paralele

Fiabilitatea formelor paralele

Multe examene au mai multe formate de lucrări cu întrebări, aceste forme paralele de examen oferă securitate. Fiabilitatea formelor paralele este estimată prin administrarea ambelor forme ale examenului către același grup de examinați. Scorurile examinatului la cele două formulare de testare sunt corelate pentru a determina cât de similare funcţionează cele două forme de testare. Această estimare a fiabilității este o măsură a modului în care pot fi așteptate scorurile consecvente ale examinatorilor în toate formularele de testare.

Consecvența deciziei

După ce facem Test-Retest Reliability și Parallel Form Reliability, vom obține un rezultat al examinatorilor fie că au promovat, fie că nu au reușit. Fiabilitatea acestei decizii de clasificare este estimată în fiabilitatea coerenței deciziilor.

Importanța testării fiabilității

O evaluare aprofundată a fiabilității este necesară pentru a îmbunătăți performanța produselor și proceselor software. Testarea fiabilității software-ului va ajuta în mare măsură managerii și practicienii de software.

Pentru a verifica fiabilitatea software-ului prin testare: -

  1. Un număr mare de cazuri de testare ar trebui să fie executate pentru o perioadă extinsă pentru a determina cât timp se va executa software-ul fără eșec.
  2. Distribuția cazului de testare trebuie să se potrivească cu profilul operațional real sau planificat al software-ului. Cu cât o funcție a software-ului este executată mai des, cu atât este mai mare procentul de cazuri de testare care ar trebui alocate acelei funcții sau subset.

Instrumente de testare a fiabilității

Unele dintre Instrumente de testare a fiabilității utilizate pentru fiabilitatea software-ului sunt:

1. WEIBULL++: - Fiabilitate de viață Analiza datelor

2. RGA:- Analiza creșterii fiabilității

3. RCM:-Întreținere centrată pe fiabilitate

Rezumat

Testarea fiabilității este o parte importantă a unui program de inginerie a fiabilității. Mai corect, este sufletul unui program de inginerie a fiabilității. În plus, testele de fiabilitate sunt concepute în principal pentru a descoperi anumite moduri de defecțiune și alte probleme în timpul testării software-ului.

In Inginerie Software, Testarea de fiabilitate poate fi clasificată în trei segmente,

  • Modelare
  • Măsurare
  • Îmbunătăţire

Factori care influențează fiabilitatea software-ului

  • Numărul de erori prezente în software
  • Modul în care utilizatorii operează sistemul