Wat is betrouwbaarheidstesten? (Voorbeeld)

Wat is betrouwbaarheidstesten?

Betrouwbaarheidstesten is een softwaretestproces dat controleert of de software gedurende een bepaalde periode een storingsvrije werking kan uitvoeren in een bepaalde omgeving. Het doel van betrouwbaarheidstests is ervoor te zorgen dat het softwareproduct vrij van bugs is en betrouwbaar genoeg voor het verwachte doel.

Betrouwbaarheid betekent ‘hetzelfde opleveren’, met andere woorden: het woord ‘betrouwbaar’ betekent dat iets betrouwbaar is en dat het elke keer hetzelfde resultaat zal opleveren. Hetzelfde geldt voor het testen van de betrouwbaarheid.

Betrouwbaarheidstestvoorbeeld

De kans dat een pc in een winkel acht uur lang aanstaat zonder te crashen is 99%; dit wordt betrouwbaarheid genoemd.

Betrouwbaarheidstesten kunnen worden onderverdeeld in drie segmenten:

  • Modellering
  • maat
  • Verbetering

De following De formule is bedoeld voor het berekenen van de faalkans.

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

Betrouwbaarheidstest voorbeeldafbeelding

Factoren die de betrouwbaarheid van software beïnvloeden

  1. Het aantal fouten in de software
  2. De manier waarop gebruikers het systeem bedienen

Betrouwbaarheidstesten zijn een van de sleutels tot betere softwarekwaliteit. Deze tests helpen bij het ontdekken van veel problemen in het softwareontwerp en de functionaliteit.

Het belangrijkste doel van betrouwbaarheidstesten is om te controleren of de software voldoet aan de eis van klantbetrouwbaarheid.

Betrouwbaarheidstesten zullen op verschillende niveaus worden uitgevoerd. Complex systemen zullen worden getest op eenheids-, assemblage-, subsysteem- en systeemniveau.

Waarom betrouwbaarheidstesten?

Betrouwbaarheidstests worden uitgevoerd om de softwareprestaties onder de gegeven omstandigheden te testen.

Het doel achter het uitvoeren van betrouwbaarheidstesten is:

  1. Om de structuur van herhaalde mislukkingen te vinden.
  2. Om het aantal optredende fouten te vinden, is de opgegeven hoeveelheid tijd nodig.
  3. Om de belangrijkste oorzaak van falen te ontdekken.
  4. Uitvoeren Performance Testing van verschillende modules van softwareapplicaties na het verhelpen van een defect.

Ook na de release van het product kunnen we de kans op het optreden van defecten minimaliseren en daarmee de betrouwbaarheid van de software verbeteren. Enkele van de hulpmiddelen die hiervoor nuttig zijn, zijn: Trendanalyse, Orthogonaal Defect Classificatie en formele methoden, enz.

Soorten betrouwbaarheid Testen

Het testen van de softwarebetrouwbaarheid omvat het testen van functies, load Testen en Regressie Testing

Functietesten: -

Uitgelichte tests controleren de functionaliteit van de software en worden hieronder uitgevoerdwing stappen:-

  • Elke bewerking in de software wordt minimaal één keer uitgevoerd.
  • De interactie tussen de twee operaties wordt verminderd.
  • Elke handeling moet worden gecontroleerd op de juiste uitvoering ervan.

Belastingtesten: -

Normaal gesproken zal de software aan het begin van het proces beter presteren, en daarna zal deze achteruit gaan. Er worden belastingtests uitgevoerd om de prestaties van de software onder de maximale werkbelasting te controleren.

Regressietest: -

Regressietesten worden voornamelijk gebruikt om te controleren of er nieuwe bugs zijn geïntroduceerd als gevolg van het repareren van eerdere bugs. Regressietesten worden uitgevoerd na elke wijziging of update van de softwarefuncties en hun functionaliteiten.

Betrouwbaarheidstesten uitvoeren

Betrouwbaarheidstesten zijn kostbaar in vergelijking met andere soorten testen. Een goede planning en beheer zijn dus vereist bij het uitvoeren van betrouwbaarheidstests. Denk hierbij aan het uit te voeren testproces, gegevens voor de testomgeving, testschema, testpunten etc.

Om te beginnen met het testen van de betrouwbaarheid, moet de tester zich aan de regels houdenwing dingen,

  • Stel betrouwbaarheidsdoelstellingen vast
  • Ontwikkelen operationeel profiel
  • Testen plannen en uitvoeren
  • Gebruik testresultaten om beslissingen te nemen

Zoals we eerder hebben besproken, zijn er drie categorieën waarin we betrouwbaarheidstesten kunnen uitvoeren: Modelleren, meten en verbeteren.

De belangrijkste parameters die betrokken zijn bij het testen van betrouwbaarheid zijn: -

  • Waarschijnlijkheid van een storingsvrije werking
  • Tijdsduur van een storingsvrije werking
  • De omgeving waarin het wordt uitgevoerd

Stap 1) Modellering

Software Modeling Technique kan worden onderverdeeld in twee subcategorieën:

1. Voorspellingsmodellering

2. Schattingsmodellering

  • Betekenisvolle resultaten kunnen worden verkregen door geschikte modellen toe te passen.
  • Er kunnen aannames en abstracties worden gemaakt om de problemen te vereenvoudigen, en geen enkel model zal geschikt zijn voor alle situaties. De belangrijkste verschillen tussen de twee modellen zijn: -
Problemen Voorspellingsmodellen Schattingsmodellen
Gegevensreferentie Er wordt gebruik gemaakt van historische gegevens Er wordt gebruik gemaakt van actuele gegevens uit de softwareontwikkeling.
Bij gebruik in de ontwikkelingscyclus Het wordt meestal gemaakt vóór de ontwikkelings- of testfase. Meestal zal er gebruik van worden gemaakt later in de levenscyclus van softwareontwikkeling.
Tijdsbestek Het zal de betrouwbaarheid in de toekomst voorspellen. Het zal de betrouwbaarheid voor de huidige tijd of in de toekomst voorspellen.

Stap 2) Meting

De betrouwbaarheid van software kan niet direct worden gemeten; daarom worden andere gerelateerde factoren in aanmerking genomen om de betrouwbaarheid van software te schatten. De huidige praktijken van Software Reliability Measurement zijn onderverdeeld in vier categorieën: -

Meting 1: Productstatistieken

Productstatistieken zijn de combinatie van 4 soorten statistieken:

  • Softwaregrootte: – Line of Code (LOC) is een intuïtieve eerste benadering voor het meten van de omvang van de software. Alleen de broncode wordt meegeteld in deze statistiek, en de opmerkingen en andere niet-uitvoerbare verklaringen worden niet meegeteld.
  • Functiepunt Metrisch:- Functie Pont Metric is de methode voor het meten van de functionaliteit van Softwareontwikkeling. Het houdt rekening met het aantal inputs, outputs, masterbestanden, enz. Het meet de functionaliteit die aan de gebruiker wordt geleverd en is onafhankelijk van de programmeertaal.
  • complexity is direct gerelateerd aan de betrouwbaarheid van software en vertegenwoordigt dus complexiteit is belangrijk. De complexity-georiënteerde metriek bepaalt de complexvan de besturingsstructuur van een programma door de code te vereenvoudigen tot een grafische weergave.
  • Testdekkingsstatistieken: - Het is een manier om fouten en betrouwbaarheid in te schatten door softwareproducttests uit te voeren. Softwarebetrouwbaarheid betekent dat het de functie is om te bepalen of het systeem volledig is geverifieerd en getest.

Meting 2: Projectmanagementstatistieken

  • Onderzoekers hebben zich gerealiseerd dat goed management kan resulteren in betere producten.
  • Goed management kan een hogere betrouwbaarheid bereiken door gebruik te maken van betere processen voor ontwikkeling, risicobeheer en configuratiebeheer.

Meting 3: Processtatistieken

De kwaliteit van het product houdt rechtstreeks verband met het proces. Procesmetrieken kunnen worden gebruikt om de betrouwbaarheid en kwaliteit van software te schatten, monitoren en verbeteren.

Meting 4: Fout- en storingsstatistieken

Fout- en storingsmetrieken worden voornamelijk gebruikt om te controleren of het systeem volledig storingsvrij is. Om dit doel te bereiken worden zowel de soorten fouten die tijdens het testproces (dat wil zeggen vóór de oplevering) zijn aangetroffen als de door gebruikers gerapporteerde fouten na de oplevering verzameld, samengevat en geanalyseerd.

De betrouwbaarheid van software wordt gemeten in termen van de gemiddelde tijd tussen storingen (MTBF). MTBF bestaat uit

  • Mean to Failure (MTTF): Het is het tijdsverschil tussen twee opeenvolgende mislukkingen.
  • Mean Time to Repair (MTTR): Dit is de tijd die nodig is om de storing te verhelpen.
MTBF = MTTF + MTTR

Betrouwbaarheid voor goede software is een getal tussen 0 en 1.

De betrouwbaarheid neemt toe wanneer fouten of bugs uit het programma worden verwijderd.

Stap 3) Verbetering

Verbetering hangt volledig af van de problemen die zich voordoen in de applicatie of het systeem, of anders van de kenmerken van de software. Volgens de complexAfhankelijk van de softwaremodule zal de manier van verbeteren ook verschillen. Twee belangrijke beperkingen, tijd en budget, zullen de inspanningen beperken die worden gestoken in het verbeteren van de betrouwbaarheid van software.

Voorbeeldmethoden voor het testen van de betrouwbaarheid

Testen op betrouwbaarheid gaat over het oefenen van een applicatie om fouten te ontdekken en te verwijderen voordat het systeem wordt geïmplementeerd.

Er worden hoofdzakelijk drie benaderingen gebruikt voor het testen van betrouwbaarheid

  • Test-hertest betrouwbaarheid
  • Betrouwbaarheid van parallelle formulieren
  • Beslissingsconsistentie

Hieronder probeerden we dit allemaal uit te leggen met een voorbeeld.

Test-hertest betrouwbaarheid

Afbeelding van Test-Hertest Betrouwbaarheid

Om de test-hertestbetrouwbaarheid te schatten, zal een enkele groep examenkandidaten het testproces met een tussenpoos van een paar dagen of weken uitvoeren. De tijd moet kort genoeg zijn zodat de vaardigheden van de examinandus op dit gebied kunnen worden beoordeeld. De relatie tussen de scores van de proefpersoon van twee verschillende administraties wordt geschat door middel van statistische correlatie. Dit type betrouwbaarheid laat zien in hoeverre een test in de loop van de tijd stabiele, consistente scores kan opleveren.

Betrouwbaarheid van parallelle formulieren

Parallelle formulieren Betrouwbaarheidsafbeelding

Veel examens hebben meerdere vraagformaten papersbieden deze parallelle examenvormen zekerheid. De betrouwbaarheid van parallelle formulieren wordt geschat door beide examenvormen aan dezelfde groep examenkandidaten af ​​te nemen. De scores van de examinandus op de twee toetsvormen worden gecorreleerd om te bepalen hoe vergelijkbaar de twee toetsvormen functioneren. Deze betrouwbaarheidsschatting is een maatstaf voor de mate waarin consistente scores van de examenkandidaat kunnen worden verwacht op verschillende toetsvormen.

Beslissingsconsistentie

Nadat we Test-Hertest Betrouwbaarheid en Parallelle Vorm Betrouwbaarheid hebben gedaan, krijgen we het resultaat van de examenkandidaten die wel of niet slagen. De betrouwbaarheid van deze classificatiebeslissing wordt geschat in de betrouwbaarheid van de beslissingsconsistentie.

Belang van betrouwbaarheidstesten

Een grondige beoordeling van de betrouwbaarheid is vereist om de prestaties van softwareproducten en -processen te verbeteren. Het testen van de betrouwbaarheid van software zal softwarebeheerders en praktijkmensen in grote mate helpen.

Om de betrouwbaarheid van de software te controleren via testen: -

  1. Er moet een groot aantal testgevallen gedurende een langere periode worden uitgevoerd om te bepalen hoe lang de software zonder fouten zal werken.
  2. De distributie van de testgevallen moet overeenkomen met het feitelijke of geplande operationele profiel van de software. Hoe vaker een functie van de software wordt uitgevoerd, hoe groter het percentage testgevallen dat aan die functie of subset moet worden toegewezen.

Betrouwbaarheidstesttools

Enkele Betrouwbaarheidstesttools gebruikt voor softwarebetrouwbaarheid zijn:

1. WEIBULL++: - Betrouwbaarheid Levensduur Data-analyse

2. RGA: - Betrouwbaarheidsgroeianalyse

3. RCM: Betrouwbaarheidsgericht onderhoud

Overzicht:

Betrouwbaarheidstesten zijn een belangrijk onderdeel van een betrouwbaarheidsengineeringprogramma. Correcter gezegd: het is de ziel van een betrouwbaarheidsengineeringprogramma. Bovendien zijn betrouwbaarheidstests vooral bedoeld om bepaalde foutmodi en andere problemen tijdens het testen van software aan het licht te brengen.

In Software EngineeringBetrouwbaarheidstesten kunnen worden onderverdeeld in drie segmenten:

  • Modellering
  • maat
  • Verbetering

Factoren die de betrouwbaarheid van software beïnvloeden

  • Het aantal fouten in de software
  • De manier waarop gebruikers het systeem bedienen