Što je testiranje pouzdanosti? (Primjer)

Što je testiranje pouzdanosti?

Testiranje pouzdanosti je proces testiranja softvera koji provjerava može li softver izvesti rad bez grešaka u određenom okruženju tijekom određenog vremenskog razdoblja. Svrha testiranja pouzdanosti je osigurati da softverski proizvod nema grešaka i da je dovoljno pouzdan za svoju očekivanu svrhu.

Pouzdanost znači "davanje istog", drugim riječima, riječ "pouzdano" znači da je nešto pouzdano i da će svaki put dati isti rezultat. Isto vrijedi i za testiranje pouzdanosti.

Primjer testiranja pouzdanosti

Vjerojatnost da računalo u trgovini radi i radi osam sati bez pada je 99%; to se naziva pouzdanost.

Testiranje pouzdanosti može se kategorizirati u tri segmenta,

  • Manekenstvo
  • Mjerenje
  • Poboljšanje

Sljedeća formula služi za izračunavanje vjerojatnosti neuspjeha.

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

Primjer testiranja pouzdanosti

Čimbenici koji utječu na pouzdanost softvera

  1. Broj grešaka prisutnih u softveru
  2. Način na koji korisnici upravljaju sustavom

Testiranje pouzdanosti jedan je od ključeva za bolju kvalitetu softvera. Ovo testiranje pomaže u otkrivanju mnogih problema u dizajnu i funkcionalnosti softvera.

Glavna svrha testiranja pouzdanosti je provjeriti ispunjava li softver zahtjeve pouzdanosti korisnika.

Testiranje pouzdanosti provodit će se na nekoliko razina. Složeni sustavi će se testirati na razini jedinice, sklopa, podsustava i sustava.

Zašto testirati pouzdanost?

Testiranje pouzdanosti provodi se kako bi se testirala izvedba softvera u danim uvjetima.

Cilj izvođenja testiranja pouzdanosti je,

  1. Pronaći strukturu ponavljajućih neuspjeha.
  2. Za pronalaženje broja kvarova potrebno je određeno vrijeme.
  3. Otkriti glavni uzrok neuspjeha.
  4. Provoditi Ispitivanje performansi različitih modula softverskih aplikacija nakon otklanjanja kvara.

I nakon izlaska proizvoda možemo minimizirati mogućnost pojave nedostataka i time poboljšati pouzdanost softvera. Neki od alata korisnih za to su- Analiza trenda, Ortogonalna Mana Klasifikacija, formalne metode itd.

Vrste ispitivanja pouzdanosti

Testiranje pouzdanosti softvera uključuje testiranje značajki, Testiranje opterećenjai Ispitivanje regresije

Testiranje značajki: -

Istaknuto testiranje provjerava značajku koju nudi softver i provodi se u sljedećim koracima:-

  • Svaka operacija u softveru izvodi se barem jednom.
  • Interakcija između dvije operacije je smanjena.
  • Svaka se operacija mora provjeriti radi pravilnog izvođenja.

Testiranje opterećenja: -

Obično će softver raditi bolje na početku procesa, a nakon toga će početi propadati. Testiranje opterećenja provodi se kako bi se provjerila izvedba softvera pod maksimalnim radnim opterećenjem.

Regresijski test: -

Regresijsko testiranje uglavnom se koristi za provjeru jesu li uvedene nove pogreške zbog popravljanja prethodnih grešaka. Regresijsko testiranje provodi se nakon svake promjene ili ažuriranja softverskih značajki i njihovih funkcionalnosti.

Kako napraviti testiranje pouzdanosti

Testiranje pouzdanosti je skupo u usporedbi s drugim vrstama testiranja. Dakle, tijekom testiranja pouzdanosti potrebno je pravilno planiranje i upravljanje. To uključuje proces testiranja koji treba implementirati, podatke za testno okruženje, raspored testiranja, ispitne točke itd.

Za početak testiranja pouzdanosti, ispitivač mora pratiti stvari,

  • Postavite ciljeve pouzdanosti
  • Razviti operativni profil
  • Planirajte i izvedite testove
  • Koristite rezultate testiranja za donošenje odluka

Kao što smo ranije spomenuli, postoje tri kategorije u kojima možemo provesti testiranje pouzdanosti, - Modeliranje, mjerenje i poboljšanje.

Ključni parametri uključeni u testiranje pouzdanosti su:-

  • Vjerojatnost rada bez greške
  • Duljina vremena rada bez greške
  • Okruženje u kojem se izvodi

Korak 1) Modeliranje

Tehnika softverskog modeliranja može se podijeliti u dvije podkategorije:

1. Modeliranje predviđanja

2. Modeliranje procjene

  • Značajni rezultati mogu se dobiti primjenom odgovarajućih modela.
  • Mogu se napraviti pretpostavke i apstrakcije kako bi se pojednostavili problemi, a niti jedan model neće biti prikladan za sve situacije. Glavne razlike između ova dva modela su:-
Pitanja Modeli predviđanja Modeli procjene
Referenca podataka Koristi povijesne podatke Koristi trenutne podatke iz razvoja softvera.
Kada se koristi u razvojnom ciklusu Obično se stvara prije faze razvoja ili testiranja. Obično će se koristiti kasnije u životnom ciklusu razvoja softvera.
Vremenski okvir To će predvidjeti pouzdanost u budućnosti. Predvidit će pouzdanost ili za sadašnje vrijeme ili za buduće vrijeme.

Korak 2) Mjerenje

Pouzdanost softvera ne može se izravno mjeriti; stoga se za procjenu pouzdanosti softvera uzimaju u obzir i drugi povezani čimbenici. Trenutačne prakse mjerenja pouzdanosti softvera podijeljene su u četiri kategorije:-

Mjerenje 1: Mjerni podaci proizvoda

Mjerni podaci proizvoda kombinacija su 4 vrste mjernih podataka:

  • Veličina softvera: – Linija koda (LOC) je intuitivan početni pristup za mjerenje veličine softvera. Samo se izvorni kod broji u ovoj metrici, a komentari i druge neizvršne izjave neće se računati.
  • Funkcijska točka Metrički:- Function Pont Metric je metoda za mjerenje funkcionalnosti razvoja softvera. Uzet će u obzir broj ulaza, izlaza, master datoteka itd. Mjeri funkcionalnost isporučenu korisniku i neovisna je o programskom jeziku.
  • Složenost izravno je povezan s pouzdanošću softvera, stoga je predstavljanje složenosti važno. Metrika orijentirana na složenost određuje složenost kontrolne strukture programa pojednostavljivanjem koda u grafički prikaz.
  • Mjerni podaci o pokrivenosti testiranja:- To je način procjene greške i pouzdanosti dovršavanjem testova softverskih proizvoda. Pouzdanost softvera znači da je funkcija utvrđivanja da je sustav u potpunosti provjeren i testiran.

Mjerenje 2: Metrike upravljanja projektom

  • Istraživači su shvatili da dobro upravljanje može rezultirati boljim proizvodima.
  • Dobrim upravljanjem može se postići veća pouzdanost korištenjem boljeg razvoja, upravljanja rizicima i procesa upravljanja konfiguracijom.

Mjerenje 3: metrika procesa

Kvaliteta proizvoda izravno je povezana s procesom. Mjerne vrijednosti procesa mogu se koristiti za procjenu, nadzor i poboljšanje pouzdanosti i kvalitete softvera.

Mjerenje 4: Metrike grešaka i grešaka

Metrike grešaka i kvarova uglavnom se koriste za provjeru je li sustav potpuno bez kvarova. Obje vrste grešaka pronađenih tijekom procesa testiranja (tj. prije isporuke) kao i greške koje su prijavili korisnici nakon isporuke prikupljaju se, sažimaju i analiziraju kako bi se postigao ovaj cilj.

Pouzdanost softvera mjeri se u smislu srednje vrijeme između kvarova (MTBF). MTBF se sastoji od

  • Srednja vrijednost kvara (MTTF): to je vremenska razlika između dva uzastopna kvara.
  • Srednje vrijeme popravka (MTTR): To je vrijeme potrebno da se popravi kvar.
MTBF = MTTF + MTTR

Pouzdanost za dobar softver je broj između 0 i 1.

Pouzdanost se povećava kada se uklone greške ili bugovi iz programa.

Korak 3) Poboljšanje

Poboljšanje u potpunosti ovisi o problemima koji su se pojavili u aplikaciji ili sustavu, odnosno karakteristikama softvera. Ovisno o složenosti softverskog modula, razlikovat će se i način poboljšanja. Dva glavna ograničenja, vrijeme i proračun ograničit će napore uložene u poboljšanje pouzdanosti softvera.

Primjeri metoda za ispitivanje pouzdanosti

Testiranje pouzdanosti odnosi se na vježbu aplikacije za otkrivanje i uklanjanje kvarova prije nego što se sustav postavi.

Postoje uglavnom tri pristupa koji se koriste za testiranje pouzdanosti

  • Test-Retest pouzdanosti
  • Pouzdanost paralelnih obrazaca
  • Dosljednost odluka

U nastavku smo sve to pokušali objasniti primjerom.

Test-Retest pouzdanosti

Test-Retest pouzdanosti

Kako bi se procijenila pouzdanost test-retest, jedna grupa ispitanika će provesti proces testiranja u razmaku od samo nekoliko dana ili tjedana. Vrijeme treba biti dovoljno kratko da se mogu procijeniti ispitanikove vještine u tom području. Odnos između rezultata ispitanika iz dviju različitih administracija procjenjuje se pomoću statističke korelacije. Ova vrsta pouzdanosti pokazuje do koje mjere test može proizvesti stabilne, dosljedne rezultate kroz vrijeme.

Pouzdanost paralelnih obrazaca

Pouzdanost paralelnih obrazaca

Mnogi ispiti imaju više formata upitnika, ti paralelni oblici ispita pružaju sigurnost. Pouzdanost paralelnih oblika procjenjuje se primjenom oba oblika ispita na istoj skupini ispitanika. Rezultati ispitanika na dvama ispitnim obrascima su u korelaciji kako bi se utvrdilo koliko slično funkcioniraju dva ispitna obrasca. Ova procjena pouzdanosti je mjera koliko se mogu očekivati ​​dosljedni rezultati ispitanika u svim oblicima testa.

Dosljednost odluka

Nakon provođenja Pouzdanosti testa i ponovnog testiranja i Pouzdanosti paralelnog obrasca, dobit ćemo rezultat prolaznih ili neuspjelih ispitanika. Pouzdanost ove odluke o klasifikaciji procjenjuje se u pouzdanosti dosljednosti odluke.

Važnost ispitivanja pouzdanosti

Za poboljšanje performansi softverskih proizvoda i procesa potrebna je temeljita procjena pouzdanosti. Testiranje pouzdanosti softvera u velikoj će mjeri pomoći upraviteljima softvera i praktičarima.

Za provjeru pouzdanosti softvera putem testiranja:-

  1. Velik broj testnih slučajeva treba se izvoditi dulje vrijeme kako bi se odredilo koliko dugo će se softver izvršavati bez greške.
  2. Distribucija testnog slučaja trebala bi odgovarati stvarnom ili planiranom operativnom profilu softvera. Što se funkcija softvera češće izvršava, to je veći postotak testnih slučajeva koji se trebaju dodijeliti toj funkciji ili podskupu.

Alati za testiranje pouzdanosti

Neki od Alati za ispitivanje pouzdanosti koji se koriste za pouzdanost softvera su:

1. WEIBULL++:- Pouzdani život Analiza podataka

2. RGA: - Analiza rasta pouzdanosti

3. RCM:-Održavanje usmjereno na pouzdanost

rezime

Ispitivanje pouzdanosti važan je dio programa inženjeringa pouzdanosti. Točnije rečeno, to je duša inženjerskog programa pouzdanosti. Nadalje, testovi pouzdanosti uglavnom su dizajnirani za otkrivanje određenih načina kvarova i drugih problema tijekom testiranja softvera.

In Programsko inženjerstvo, Testiranje pouzdanosti može se kategorizirati u tri segmenta,

  • Manekenstvo
  • Mjerenje
  • Poboljšanje

Čimbenici koji utječu na pouzdanost softvera

  • Broj grešaka prisutnih u softveru
  • Način na koji korisnici upravljaju sustavom