Hvad er pålidelighedstest? (Eksempel)
Hvad er pålidelighedstest?
Pålidelighedstest er en softwaretestproces, der kontrollerer, om softwaren kan udføre en fejlfri operation i et bestemt miljø i et bestemt tidsrum. Formålet med pålidelighedstest er at sikre, at softwareproduktet er fejlfrit og pålideligt nok til dets forventede formål.
Pålidelighed betyder "at give det samme", med andre ord betyder ordet "pålidelig" noget er pålideligt, og at det vil give det samme resultat hver gang. Det samme gælder for pålidelighedstest.
Eksempel på pålidelighedstest
Sandsynligheden for, at en pc i en butik er oppe og køre i otte timer uden at gå ned er 99 %; dette kaldes pålidelighed.
Pålidelighedstest kan kategoriseres i tre segmenter,
- Modeling
- Mål
- Forbedring
Følgende formel er til beregning af sandsynligheden for fejl.
Probability = Number of failing cases/ Total number of cases under consideration
Faktorer, der påvirker softwarepålidelighed
- Antallet af fejl i softwaren
- Den måde brugerne betjener systemet på
Pålidelighedstest er en af nøglerne til bedre softwarekvalitet. Denne test hjælper med at opdage mange problemer i softwaredesignet og -funktionaliteten.
Hovedformålet med pålidelighedstest er at kontrollere, om softwaren opfylder kravet om kundepålidelighed.
Pålidelighedstestning vil blive udført på flere niveauer. Komplekse systemer vil blive testet på enheds-, samlings-, undersystem- og systemniveau.
Hvorfor udfører man pålidelighedstest?
Pålidelighedstest udføres for at teste softwarens ydeevne under de givne forhold.
Målet bag udførelse af pålidelighedstest er,
- At finde strukturen for gentagne fejl.
- For at finde antallet af fejl, der opstår, er det angivne tidsrum.
- At opdage hovedårsagen til fejl.
- At foretage Test af ydeevne af forskellige moduler af softwareapplikationer efter udbedring af en defekt.
Også efter frigivelsen af produktet kan vi minimere muligheden for forekomst af defekter og derved forbedre softwarens pålidelighed. Nogle af de værktøjer, der er nyttige til dette, er-Trendanalyse, Ortogonal Defekt Klassificering og formelle metoder mv.
Typer af pålidelighedstestning
Test af softwarepålidelighed inkluderer funktionstest, Load Testingog Regressionstest
Funktionstest: -
Udvalgte test kontrollerer den funktion, der leveres af softwaren og udføres i følgende trin:
- Hver handling i softwaren udføres mindst én gang.
- Interaktion mellem de to operationer er reduceret.
- Hver operation skal kontrolleres for dens korrekte udførelse.
Belastningstest:-
Normalt vil softwaren fungere bedre i begyndelsen af processen, og derefter begynder den at blive forringet. Belastningstest udføres for at kontrollere softwarens ydeevne under den maksimale arbejdsbelastning.
Regressionstest:-
Regressionstest bruges hovedsageligt til at kontrollere, om der er blevet introduceret nye fejl på grund af at rette tidligere fejl. Regressionstest udføres efter hver ændring eller opdatering af softwarefunktionerne og deres funktionaliteter.
Sådan laver du pålidelighedstest
Pålidelighedstest er dyrt sammenlignet med andre typer test. Så korrekt planlægning og ledelse er påkrævet, mens du udfører pålidelighedstest. Dette inkluderer testprocessen, der skal implementeres, data til testmiljøet, testplan, testpunkter osv.
For at begynde med pålidelighedstestning skal testeren blive ved med at følge ting,
- Etabler pålidelighedsmål
- Udvikle driftsprofil
- Planlægge og udføre tests
- Brug testresultater til at tage beslutninger
Som vi diskuterede tidligere, er der tre kategorier, hvor vi kan udføre pålidelighedstestning,- Modellering, måling og forbedring.
Nøgleparametrene involveret i pålidelighedstestning er: -
- Sandsynlighed for fejlfri drift
- Varighed af fejlfri drift
- Det miljø, det udføres i
Trin 1) Modellering
Softwaremodelleringsteknik kan opdeles i to underkategorier:
1. Forudsigelsesmodellering
2. Estimationsmodellering
- Meningsfulde resultater kan opnås ved at anvende egnede modeller.
- Antagelser og abstraktioner kan gøres for at forenkle problemerne, og ingen enkelt model vil være egnet til alle situationer. De største forskelle mellem de to modeller er:
Issues | Forudsigelsesmodeller | Estimationsmodeller |
---|---|---|
Datareference | Den bruger historiske data | Den bruger aktuelle data fra softwareudvikling. |
Når det bruges i udviklingscyklus | Det vil normalt blive oprettet før udviklings- eller testfasen. | Det vil normalt blive brugt senere i softwareudviklingens livscyklus. |
Tidsramme | Det vil forudsige pålidelighed i fremtiden. | Det vil forudsige pålideligheden enten på nuværende tidspunkt eller i fremtiden. |
Trin 2) Måling
Softwarepålidelighed kan ikke måles direkte; derfor anses andre relaterede faktorer for at estimere softwarens pålidelighed. Den nuværende praksis for måling af softwarepålidelighed er opdelt i fire kategorier:
Måling 1: Produktmålinger
Produkt-metrics er kombinationen af 4 typer metrics:
- Software størrelse: – Line of Code (LOC) er en intuitiv indledende tilgang til måling af softwarens størrelse. Kun kildekoden tælles i denne metrik, og kommentarerne og andre ikke-eksekverbare sætninger tælles ikke.
- Funktionspunkt Metrisk:- Funktion Pont Metric er metoden til at måle funktionaliteten af softwareudvikling. Den vil tage højde for antallet af input, output, masterfiler osv. Den måler den funktionalitet, der leveres til brugeren og er uafhængig af programmeringssproget.
- Kompleksitet er direkte relateret til softwarepålidelighed, så det er vigtigt at repræsentere kompleksitet. Den kompleksitetsorienterede metrik bestemmer kompleksiteten af et programs kontrolstruktur ved at forenkle koden til en grafisk repræsentation.
- Testdækningsmålinger:- Det er en måde at estimere fejl og pålidelighed ved at gennemføre softwareprodukttest. Softwarepålidelighed betyder, at det er funktionen til at fastslå, at systemet er blevet fuldstændig verificeret og testet.
Måling 2: Project Management Metrics
- Forskere har indset, at god ledelse kan resultere i bedre produkter.
- God ledelse kan opnå højere pålidelighed ved at bruge bedre udviklings-, risikostyrings- og konfigurationsstyringsprocesser.
Måling 3: Process Metrics
Kvaliteten af produktet er direkte relateret til processen. Procesmålinger kan bruges til at estimere, overvåge og forbedre pålideligheden og kvaliteten af software.
Måling 4: Fejl- og fejlmålinger
Fejl- og fejlmålinger bruges hovedsageligt til at kontrollere, om systemet er fuldstændigt fejlfrit. Både de typer af fejl, der er fundet under testprocessen (dvs. før levering) såvel som de fejl, der er rapporteret af brugere efter levering, indsamles, opsummeres og analyseres for at nå dette mål.
Softwarens pålidelighed måles i forhold til middeltid mellem fejl (MTBF). MTBF består af
- Mean to failure (MTTF): Det er tidsforskellen mellem to på hinanden følgende fejl.
- Gennemsnitlig tid til reparation (MTTR): Det er den tid, der kræves for at rette fejlen.
MTBF = MTTF + MTTR
Pålidelighed for god software er et tal imellem 0 og 1.
Pålideligheden øges, når fejl eller fejl fra programmet fjernes.
Trin 3) Forbedring
Forbedring afhænger fuldstændigt af de problemer, der er opstået i applikationen eller systemet, eller af softwarens egenskaber. Afhængigt af kompleksiteten af softwaremodulet vil måden til forbedring også være forskellig. To hovedbegrænsninger, tid og budget, vil begrænse indsatsen for at forbedre softwarens pålidelighed.
Eksempel på metoder til pålidelighedstestning
Test for pålidelighed handler om at træne et program for at opdage og fjerne fejl, før systemet implementeres.
Der er hovedsageligt tre tilgange, der bruges til pålidelighedstestning
- Test-gentest pålidelighed
- Parallelle formers pålidelighed
- Beslutningskonsistens
Nedenfor forsøgte vi at forklare alle disse med et eksempel.
Test-gentest pålidelighed
For at estimere test-gentest-pålidelighed vil en enkelt gruppe eksaminander udføre testprocessen med kun få dage eller ugers mellemrum. Tiden bør være kort nok til, at eksaminandens færdigheder på området kan vurderes. Sammenhængen mellem eksaminandens score fra to forskellige administrationer estimeres gennem statistisk korrelation. Denne type pålidelighed demonstrerer, i hvilket omfang en test er i stand til at producere stabile, ensartede resultater over tid.
Parallelle formers pålidelighed
Mange eksamener har flere formater af spørgsmålspapirer, disse parallelle eksamensformer giver sikkerhed. Parallelformernes pålidelighed estimeres ved at administrere begge prøveformer til samme gruppe af eksaminander. Eksaminandens score på de to testformer er korreleret for at bestemme, hvor ens de to testformer fungerer. Dette pålidelighedsestimat er et mål for, hvor ensartede eksaminanders score kan forventes på tværs af testformerne.
Beslutningskonsistens
Efter at have udført Test-Retest Reliability og Parallel Form Reliability, vil vi få et resultat af eksaminander enten bestået eller ikke bestået. Pålideligheden af denne klassificeringsbeslutning estimeres i beslutningskonsistenspålidelighed.
Vigtigheden af pålidelighedstestning
En grundig vurdering af pålideligheden er påkrævet for at forbedre ydeevnen af softwareprodukter og processer. Test af softwarepålidelighed vil i høj grad hjælpe softwareadministratorer og praktikere.
For at kontrollere pålideligheden af softwaren via test: -
- Et stort antal testcases bør udføres i en længere periode for at bestemme, hvor længe softwaren vil køre uden fejl.
- Testcasefordelingen skal matche softwarens faktiske eller planlagte driftsprofil. Jo oftere en funktion af softwaren udføres, jo større er procentdelen af testtilfælde, der skal allokeres til den pågældende funktion eller delmængde.
Værktøjer til pålidelighedstest
Nogle af de Værktøjer til test af pålidelighed bruges til softwarepålidelighed er:
1. WEIBULL++:- Pålidelighed Levetid Dataanalyse
2. RGA:- Pålidelighedsvækstanalyse
3. RCM:-Plidelighedscentreret vedligeholdelse
Resumé
Pålidelighedstest er en vigtig del af et pålidelighedsingeniørprogram. Mere korrekt er det sjælen i et pålidelighedsingeniørprogram. Desuden er pålidelighedstests hovedsageligt designet til at afdække særlige fejltilstande og andre problemer under softwaretest.
In Software Engineering, Pålidelighedstestning kan kategoriseres i tre segmenter,
- Modeling
- Mål
- Forbedring
Faktorer, der påvirker softwarepålidelighed
- Antallet af fejl i softwaren
- Den måde brugerne betjener systemet på