Risikobasiertes Testen: Ansatz, Matrix, Prozess und Beispiele

Risikobasiertes Testen

Risikobasiertes Testen (RBT) ist eine Art von Softwaretests, die auf der Wahrscheinlichkeit von Risiken basiert. Dabei wird das Risiko anhand der Softwarekomplexitรคt, der geschรคftlichen Kritikalitรคt, der Nutzungshรคufigkeit, mรถglicher Bereiche mit Defekt usw. Beim risikobasierten Testen wird das Testen von Merkmalen und Funktionen der Softwareanwendung priorisiert, die wirkungsvoller sind und wahrscheinlich Fehler aufweisen.

Risiko ist das Eintreten eines ungewissen Ereignisses mit positiver oder negativer Auswirkung auf die messbaren Erfolgskriterien eines Projekts. Dabei kann es sich um Ereignisse handeln, die in der Vergangenheit stattgefunden haben, um aktuelle Ereignisse oder um etwas, das in der Zukunft passieren kรถnnte. Diese ungewissen Ereignisse kรถnnen Auswirkungen auf die Kosten-, Geschรคfts-, Technik- und Qualitรคtsziele eines Projekts haben.

Risiken kรถnnen positiv oder negativ sein.

  • Positive Risiken werden als Chancen und Hilfen fรผr die Nachhaltigkeit von Unternehmen bezeichnet. Zum Beispiel in ein neues Projekt investieren, Geschรคftsprozesse รคndern, neue Produkte entwickeln.
  • Negative Risiken werden als Bedrohungen bezeichnet und Empfehlungen zu deren Minimierung oder Beseitigung mรผssen fรผr den Projekterfolg umgesetzt werden.

Wann sollten risikobasierte Tests implementiert werden?

Risikobasierte Tests kรถnnen implementiert werden

  • Projekte mit Zeit-, Ressourcen-, Budgetbeschrรคnkungen usw.
  • Projekte, bei denen risikobasierte Analysen zur Erkennung von Schwachstellen eingesetzt werden kรถnnen SQL-Injection-Angriffe.
  • Sicherheitstests in Cloud-Computing-Umgebungen.
  • Neue Projekte mit hohen Risikofaktoren wie mangelnder Erfahrung mit den verwendeten Technologien, mangelndem Fachwissen in der Geschรคftsdomรคne.
  • Inkrementelle und iterative Modelle usw.

Risikomanagementprozesses

Lassen Sie uns nun die Schritte des Risikomanagementprozesses verstehen

Risiko-Einschรคtzung

Die Risikoermittlung kann durch Risiko-Workshops, Checklisten, Brainstorming, Interviews, die Delphi-Methode, Ursache-Wirkungs-Diagramme, Erkenntnisse aus frรผheren Projekten, Ursachenanalysen und die Kontaktaufnahme mit Fachexperten und Sachverstรคndigen erfolgen.

Risikoregister ist eine Tabelle, die eine Liste der identifizierten Risiken, mรถglichen Reaktionen und Grundursachen enthรคlt. Es wird verwendet, um die Risiken (sowohl Bedrohungen als auch Chancen) wรคhrend der gesamten Projektlaufzeit zu รผberwachen und zu verfolgen. Risikoreaktionsstrategien kรถnnen zur Bewรคltigung positiver und negativer Risiken eingesetzt werden.

Die Risikogliederungsstruktur spielt eine wichtige Rolle bei der Risikoplanung. Die Risikoaufschlรผsselungsstruktur hilft bei der Identifizierung risikoanfรคlliger Bereiche und hilft bei der effektiven Bewertung und Risikoรผberwachung im Verlauf des Projekts. Es trรคgt dazu bei, ausreichend Zeit und Ressourcen fรผr Risikomanagementaktivitรคten bereitzustellen. Es hilft auch bei der Kategorisierung vieler Quellen, aus denen die Projektrisiken entstehen kรถnnen.

Beispiel einer Risikoaufschlรผsselungsstruktur

https://www.guru99.com/images/3-2016/032316_1114_RiskBasedTe3.png

Risikoanalyse (einschlieรŸlich quantitativer und qualitativer Analyse)

Sobald die Liste potenzieller Risiken identifiziert wurde, besteht der nรคchste Schritt darin, diese zu analysieren und das Risiko anhand der Bedeutung zu filtern. Eine der qualitativen Risikoanalysetechniken ist die Verwendung der Risikomatrix (wird im nรคchsten Abschnitt behandelt). Diese Technik wird verwendet, um die Wahrscheinlichkeit und Auswirkung des Risikos zu bestimmen.

Risikoreaktionsplanung

Basierend auf der Analyse kรถnnen wir entscheiden, ob die Risiken eine Reaktion erfordern. Beispielsweise erfordern einige Risiken eine Reaktion im Projektplan, andere erfordern eine Reaktion in der Projektรผberwachung und andere erfordern รผberhaupt keine Reaktion.

Der Risikoeigentรผmer ist dafรผr verantwortlich, Optionen zu identifizieren, um die Wahrscheinlichkeit und Auswirkung der zugewiesenen Risiken zu verringern.

Risikominderung ist eine Risikoreaktionsmethode, mit der die negativen Auswirkungen mรถglicher Bedrohungen abgemildert werden. Dies kann dadurch erreicht werden, dass die Risiken beseitigt oder auf ein akzeptables MaรŸ reduziert werden.

Risikoreaktionsplanung

Risikokontingenz

Kontingenz kann als die Mรถglichkeit eines ungewissen Ereignisses beschrieben werden, dessen Auswirkungen jedoch unbekannt oder unvorhersehbar sind. Ein Notfallplan wird auch als Aktionsplan/Backup-Plan fรผr den schlimmsten Fall bezeichnet. Mit anderen Worten: Es bestimmt, welche Schritte unternommen werden kรถnnen, wenn ein unvorhersehbares Ereignis eintritt.

Risikoรผberwachung und -kontrolle

Risikokontroll- und รœberwachungsprozesse werden verwendet, um die identifizierten Risiken zu verfolgen, Restrisiken zu รผberwachen, neue Risiken zu identifizieren, das Risikoregister zu aktualisieren, die Grรผnde fรผr die ร„nderung zu analysieren, einen Risikoreaktionsplan auszufรผhren und Risikoauslรถser zu รผberwachen usw. Ihre Wirksamkeit bei der Reduzierung von Risiken zu bewerten .

Dies kann durch Risikoneubewertungen, Risikoaudits, Abweichungs- und Trendanalysen, technische Leistungsmessung, Statusaktualisierungsbesprechungen und retrospektive Besprechungen erreicht werden.

Die folgende Tabelle gibt Auskunft รผber die

Eingaben zur Risikoรผberwachung und -kontrolle Tools und Techniken zur Risikoรผberwachung und -kontrolle Ergebnisse der Risikoรผberwachung und -kontrolle
Risikomanagementplan Audits zur Reaktion auf Projektrisiken Workaround-Plรคne
Risikoreaktionsplan RegelmรครŸige Projektrisikoรผberprรผfungen Abhilfe
Projektkommunikationsplan Earned-Value-Analyse Projektรคnderungswรผnsche
Zusรคtzliche Risikoidentifizierung und -analyse Technische Leistungsmessung Aktualisierungen des riskResponse-Plans und der Checkliste zur Risikoidentifizierung
Umfangsรคnderungen Zusรคtzliche Risikoreaktionsplanung Risikodatenbank

Wir mรผssen bedenken, dass das Risiko mit ร„nderungen in der Technologie, der GrรถรŸe des Projekts, der Lรคnge des Projekts (lรคngerer Projektzeitraum), der Anzahl der Sponsoragenturen, den Projektschรคtzungen, dem Aufwand und einem Mangel an geeigneten Fรคhigkeiten steigt.

Risikobasierter Testansatz

  1. Analysieren Sie die Anforderungen.
  2. Dokumente (SRS, FRS, Usecases) werden รผberprรผft. Diese Aktivitรคt wird durchgefรผhrt, um Fehler und Unklarheiten zu finden und zu beseitigen.
  3. Die Freigabe von Anforderungen ist eine der Techniken zur Risikominderung, um die Einfรผhrung verspรคteter ร„nderungen in die Projekte zu vermeiden. Alle ร„nderungen an den Anforderungen nach der Erstellung des Dokuments wรผrden einen ร„nderungskontrollprozess und anschlieรŸende Genehmigungen erfordern.
  4. Bewerten Sie die Risiken, indem Sie die Wahrscheinlichkeit und Auswirkung berechnen, die jede Anforderung auf das Projekt haben kรถnnte, und dabei die definierten Kriterien wie Kosten, Zeitplan, Ressourcen, Umfang, technische Leistungssicherheit, Zuverlรคssigkeit, Komplexitรคt usw. berรผcksichtigen.
  5. Identifizieren Sie die Ausfallwahrscheinlichkeit und Hochrisikobereiche. Dies kann mithilfe einer Risikobewertungsmatrix erfolgen.
  6. Verwenden Sie ein Risikoregister, um die Menge der identifizierten Risiken aufzulisten. Aktualisieren, รผberwachen und verfolgen Sie die Risiken regelmรครŸig in regelmรครŸigen Abstรคnden.
  7. In dieser Phase muss eine Risikoprofilierung durchgefรผhrt werden, um die Risikokapazitรคt und die Risikotoleranzniveaus zu verstehen.
  8. Priorisieren Sie die Anforderungen anhand der Bewertung.
  9. Ein risikobasierter Testprozess ist definiert
  10. Hochkritische und mittlere Risiken kรถnnen bei der Planung, Umsetzung und Fortschrittsรผberwachung berรผcksichtigt werden. Auf einer Beobachtungsliste kรถnnen geringe Risiken berรผcksichtigt werden.
  11. Zur Analyse der Datenqualitรคt wird eine Risikodatenqualitรคtsbewertung durchgefรผhrt.
  12. Planen und definieren Sie den Test entsprechend der Bewertung
  13. Wenden Sie geeignete Testansรคtze und Testdesigntechniken an, um die Testfรคlle so zu entwerfen, dass die Elemente mit dem hรถchsten Risiko zuerst getestet werden. Elemente mit hohem Risiko kรถnnen von der Ressource mit guten Domรคnenkenntnissen getestet werden.
  14. Es kรถnnen verschiedene Testentwurfstechniken verwendet werden, z. B. die Entscheidungstabellentechnik fรผr Testelemente mit hohem Risiko und die โ€žnurโ€œ ร„quivalenzpartitionierung fรผr Testelemente mit niedrigem Risiko.
  15. Testfรคlle sind auรŸerdem so konzipiert, dass sie mehrere Funktionalitรคten und End-to-End-Geschรคftsszenarien abdecken.
  16. Bereiten Sie Testdaten und Testbedingungen sowie einen Prรผfstand vor.
  17. RevSehen Sie sich die Testplรคne, Teststrategien, Testfรคlle, Testberichte oder andere vom Testteam erstellte Dokumente an.
  18. Peer-Review ist ein wichtiger Schritt bei der Fehlererkennung und Risikominderung.
  19. Fรผhren Sie Probelรคufe und Qualitรคtsprรผfungen der Ergebnisse durch
  20. Testfรคlle werden entsprechend der Prioritรคt des Risikoelements ausgefรผhrt.
  21. Sorgen Sie fรผr die Rรผckverfolgbarkeit zwischen Risikoelementen, Tests, die sie abdecken, Ergebnissen dieser Tests und wรคhrend der Tests festgestellten Mรคngeln. Alle ordnungsgemรครŸ ausgefรผhrten Teststrategien reduzieren Qualitรคtsrisiken.
  22. Risikobasiertes Testen kann auf jeder Testebene eingesetzt werden, z. B. bei Komponenten-, Integrations-, System- und Abnahmetests
  23. Auf Systemebene mรผssen wir uns auf das Wesentliche in der Anwendung konzentrieren. Dies kann anhand der Sichtbarkeit der Funktionen, der Nutzungshรคufigkeit und der mรถglichen Ausfallkosten ermittelt werden.
  24. Bewertung der Ausstiegskriterien. Alle Hochrisikobereiche vollstรคndig getestet, es verbleiben nur noch geringe Restrisiken.
  25. Risikobasierte Testergebnisberichterstattung und Metrikanalyse.
  26. Bewerten Sie bestehende Risikoereignisse und neue Risikoereignisse basierend auf wichtigen Risikoindikatoren neu.
  27. Aktualisierung des Risikoregisters.
  28. Notfallplรคne โ€“ Dies dient als Rรผckfallplan/Notfallplan fรผr hohe Expositionsrisiken.
  29. Fehleranalyse und Fehlerprรคvention zur Beseitigung der Mรคngel.
  30. Wiederholungstests und Regressionstests zur Validierung der Fehlerbehebungen auf der Grundlage vorberechneter Risikoanalysen und Hochrisikobereiche sollten am intensivsten abgedeckt werden.
  31. Risikobasierte Automatisierungstests (sofern mรถglich)
  32. Berechnung des Restrisikos
  33. Risikoรผberwachung und -kontrolle
  34. Abgangskriterien oder Abschlusskriterien kรถnnen fรผr verschiedene Risikostufen verwendet werden. Alle wesentlichen Risiken wurden mit geeigneten MaรŸnahmen oder Notfallplรคnen angegangen. Die Risikoexposition liegt auf oder unter dem fรผr das Projekt als akzeptabel vereinbarten Niveau.
  35. Neubewertung des Risikoprofils und Kundenfeedback.

Risikobasierter Testansatz fรผr den Systemtest

  1. Technischer Systemtest โ€“Dies wird als Umgebungstest und Integrationstest bezeichnet. Umgebungstests umfassen Tests in der Entwicklungs-, Test- und Produktionsumgebung.
  2. Funktioneller Systemtestโ€“ Testen aller Funktionalitรคten, Features, Programme, Module. Der Zweck dieses Tests besteht darin, zu bewerten, ob das System seine spezifizierten Anforderungen erfรผllt.
  3. Nicht funktionsfรคhiger Systemtest-Testen der Leistung nicht-funktionaler Anforderungen, Belastungstests, Stresstests, Konfigurationstests, Sicherheitstests, Sicherungs- und Wiederherstellungsverfahren und Dokumentation (System-, Betriebs- und Installationsdokumentation).

Das folgende Diagramm gibt einen klaren รœberblick รผber den oben genannten Prozess

Risikobasierter Testansatz fรผr den Systemtest

Systemtests umfassen sowohl Funktionstests als auch nichtfunktionale Tests.

Funktionstests stellen sicher, dass das Produkt/die Anwendung den Kunden- und Geschรคftsanforderungen entspricht. Andererseits werden nichtfunktionale Tests durchgefรผhrt, um zu รผberprรผfen, ob das Produkt den Erwartungen des Kunden in Bezug auf Qualitรคt, Zuverlรคssigkeit, Benutzerfreundlichkeit, Leistung, Kompatibilitรคt usw. entspricht.

So fรผhren Sie risikobasierte Tests durch: SchlieรŸen Sie den Prozess ab

In diesem Abschnitt wird der risikobasierte Testprozess behandelt

  1. Risiko-Einschรคtzung
  2. Risikoanalyse
  3. Risiko-Reaktion
  4. Testumfang
  5. Testprozessdefinition

Risikobasiertes Testen

  1. In diesem Prozess werden die Risiken identifiziert und kategorisiert, ein Entwurf eines Risikoregisters erstellt und eine Risikosortierung durchgefรผhrt, um die wesentlichen Risiken zu identifizieren.
  2. Bei der Risikoreaktion geht es darum, die Testziele aus den Risiken zu formulieren und geeignete Techniken auszuwรคhlen, um zu demonstrieren, dass die Testaktivitรคt/Testtechnik die Testziele erreicht.
  3. Bei der Berechnung der Testeffektivitรคtsbewertung werden Dokumentabhรคngigkeiten, Anforderungen, Kosten, Zeitbedarf fรผr Softwaretests usw. berรผcksichtigt.
  4. Das Test-Scoping ist eine รœberprรผfungsaktivitรคt, die die Beteiligung aller Beteiligten und technischen Mitarbeiter erfordert. Es ist wichtig, den vereinbarten Risikoumfang einzuhalten. Diese Risiken mรผssen durch Tests angegangen werden, und alle Mitglieder sind mit den ihnen zugewiesenen Verantwortlichkeiten und dem fรผr diese Aktivitรคten bereitgestellten Budget einverstanden.
  5. Nachdem der Testumfang festgelegt wurde, mรผssen die Testziele, Annahmen und Abhรคngigkeiten fรผr jede Testphase im Standardformat zusammengestellt werden.

Risikobasiertes Testen

Betrachten wir die funktionalen Anforderungen F1, F2, F3 und die nichtfunktionalen Anforderungen N1 und N2

F1-funktionale Anforderung, R1-Risiko im Zusammenhang mit F1

  • Testziel 1 โ€“ Zeigen Sie mithilfe eines Tests, dass die erwarteten Merkmale und Funktionalitรคten des Systems einwandfrei funktionieren und das Risiko R1 durch Funktionstests angegangen werden kann
  • Test-Browserseitentests werden durchgefรผhrt, um wichtige Benutzeraufgaben auszufรผhren und zu รผberprรผfen, ob das R1 (mit F1 verbundenes Risiko) in einer Reihe von Szenarien angegangen werden kann.

F2-funktionale Anforderung, R2-Risiko im Zusammenhang mit F2

  • Testziel 2 โ€“ Demonstrieren Sie die Verwendung von a Test dass die erwarteten Features und Funktionalitรคten des Systems einwandfrei funktionieren und das Risiko R2 durch Funktionstests angegangen werden kann
  • Test-Browserseitentests werden durchgefรผhrt, um wichtige Benutzeraufgaben auszufรผhren und zu รผberprรผfen, ob der R2 in einer Reihe von Szenarien angesprochen werden kann

F3-funktionale Anforderung, R3-Risiko im Zusammenhang mit F3

  • Testziel 3 โ€“ Demonstrieren Sie die Verwendung von a Test dass die erwarteten Features und Funktionalitรคten des Systems einwandfrei funktionieren und das Risiko R3 durch Funktionstests angegangen werden kann
  • Test-Browserseitentests werden durchgefรผhrt, um wichtige Benutzeraufgaben auszufรผhren und zu รผberprรผfen, ob R3 in einer Reihe von Szenarien angegangen werden kann

N1 โ€“ nicht funktionale Anforderung, NR1 โ€“ mit N1 verbundenes Risiko

  • Testziel N1 โ€“ Demonstrieren Sie die Verwendung von a Test dass die Betriebseigenschaften des Systems einwandfrei funktionieren und das Risiko NR1 durch nicht-funktionale Tests angegangen werden kann
  • Test-Usability-Tests sind eine Technik, die verwendet wird, um zu bewerten, wie einfach Benutzeroberflรคchen zu verwenden sind, und um zu รผberprรผfen, ob der NR1 durch Usability-Tests angegangen werden kann

N2 โ€“ nicht funktionale Anforderung, NR2 โ€“ mit N2 verbundenes Risiko

  • Testziel N.2 - Zeigen Sie mithilfe eines Tests, dass die Betriebseigenschaften des Systems einwandfrei funktionieren und das Risiko NR2 durch nicht-funktionale Tests angegangen werden kann.
  • Test-Sicherheitstests sind eine Technik, mit der รผberprรผft wird, ob die Anwendung gesichert oder anfรคllig fรผr Angriffe ist, ob ein Informationsleck vorliegt, und um zu รผberprรผfen, ob NR2 durch Sicherheitstests behoben werden kann.

Spezifische Testziele: Die aufgefรผhrten Risiken und Testziele sind spezifisch fรผr die Testarten.

Risikobasiertes Testen

Verfahren zur Gestaltung des risikobasierten Testprozesses

  • Bereiten Sie ein Risikoregister vor. Darin werden die Risiken erfasst, die aus einer allgemeinen Risikoliste, einer vorhandenen Checkliste und einer Brainstorming-Sitzung abgeleitet wurden.
  • Berรผcksichtigen Sie die mit den funktionalen und nichtfunktionalen Anforderungen des Systems verbundenen Risiken (Benutzerfreundlichkeit, Sicherheit, Leistung).
  • Jedem Risiko wird eine eindeutige Kennung zugewiesen
Spalte Nr. Spaltenรผberschrift Beschreibung
3 Wahrscheinlichkeit Wahrscheinlichkeit, dass das System fรผr diese Fehlerart anfรคllig ist
4 Folgen Auswirkungen dieser Art des Scheiterns
5 Belichtung Produkt aus Wahrscheinlichkeit und Konsequenzen (Spalte 3 und 4)
6 Wirksamkeit testen Wie sicher sind die Tester, dass sie diesem Risiko begegnen kรถnnen?
7 Testprioritรคtsnummer Produkt aus Wahrscheinlichkeit, Konsequenzen und Testeffektivitรคt (Spalte 3,4, 6 XNUMX)
8 Testziel(e) welches Testziel zur Bewรคltigung dieses Risikos verwendet wird
9 Testtechniken welche Methode oder Technik verwendet wird
10 Abhรคngigkeiten Wovon gehen die Tester aus und worauf verlassen sie sich?
11 Aktion Wie viel Aufwand ist fรผr diesen Test erforderlich?
12 Zeitskala Wie viel Zeit ist fรผr diesen Test erforderlich?
13 Teststufe A-EinheitentestsTeststufe B-IntegrationstestTeststufe C-Systemtest Name der Person oder Gruppe, die diese Aktivitรคt durchfรผhrt

Die Wahrscheinlichkeit (1 Niedrig โ€“ 5 Hoch) und die Folgen (1 Niedrig โ€“ 5 Hoch) jedes Risikos werden bewertet

Risikobasiertes TestenRisikobasiertes Testen

  • Die Testbelichtung wird berechnet
  • Der Tester analysiert jedes Risiko und bewertet, ob das Risiko testbar ist oder nicht
  • Fรผr die testbaren Risiken werden Testziele definiert
  • Der Tester gibt die Testaktivitรคt an, die auf geplante Weise durchgefรผhrt werden sollte, um das Testziel zu erreichen (statische รœberprรผfungen, Inspektionen, Systemtests, Integrationstests, Abnahmetests, HTML-Validierung, Lokalisierungstests usw.).
  • Diese Testaktivitรคten kรถnnen in Phasen eingeteilt werden (Komponententest/Unit-Test, Integrationstests, Systemtests, Abnahmetests)
  • Manchmal kann ein Risiko durch eine oder mehrere Testphasen angegangen werden
  • Identifizieren Sie die Abhรคngigkeiten und Annahmen (Verfรผgbarkeit von Fรคhigkeiten, Tools, Testumgebungen, Ressourcen)
  • Die Testeffektivitรคt wird berechnet. Die Testeffektivitรคt bezieht sich auf das Vertrauensniveau des Testers, dass das Risiko durch Tests definitiv angegangen wird. Der Testeffektivitรคtswert ist eine Zahl zwischen eins und fรผnf. (5 โ€“ hohes Vertrauen, 1 โ€“ niedriges Vertrauen)
  • Schรคtzung des Aufwands, der benรถtigten Zeit und der Kosten fรผr die Vorbereitung und Durchfรผhrung dieser Tests.

Risikobasiertes Testen

Risikobasiertes Testen

  • Die Testprioritรคtszahl wird berechnet. Es ist das Produkt aus Wahrscheinlichkeit, Konsequenzen und Testeffektivitรคtswerten.
    • 125-Maximumร Ein sehr ernstes Risiko, das durch Tests erkannt werden konnte
    • 1-Minimum ร  Ein sehr geringes Risiko, das durch Tests nicht erkannt werden wรผrde
  • Basierend auf der Testprioritรคtsnummer kann die Testwichtigkeit als hoch (rot), mittel (gelb) und niedrig (grรผn) klassifiziert werden. Artikel mit dem hรถchsten Risiko werden zuerst getestet.
  • Ordnen Sie die Testaktivitรคten den Testphasen zu. Bestimmen Sie die Gruppe, die Tests fรผr jedes Ziel in den verschiedenen Testphasen durchfรผhrt (Unit-Tests, Integrationstests, Systemtests, Abnahmetests).
  • Was in den Testumfang fรคllt und was nicht, wird in der Test-Scoping-Phase entschieden
  • Fรผr jede Phase werden Testziele, zu testende Komponente, Verantwortung, Umgebung, Eintrittskriterien, Austrittskriterien, Werkzeuge, Techniken und Ergebnisse definiert.

Risikobasiertes Testen

Allgemeine Testziele โ€“ Diese allgemeinen Ziele gelten fรผr mehrere Projekte und Anwendungen

  • Komponente erfรผllt die Anforderung und ist fรผr den Einsatz in grรถรŸeren Subsystemen bereit
  • Die mit den spezifischen Testtypen verbundenen Risiken werden berรผcksichtigt und die Testziele werden erreicht.
  • Integrierte Komponenten sind korrekt zusammengebaut. Stellen Sie die Schnittstellenkompatibilitรคt zwischen den Komponenten sicher.
  • Das System erfรผllt die spezifizierten funktionalen und nichtfunktionalen Anforderungen.
  • Produktkomponenten erfรผllen die Bedรผrfnisse der Endbenutzer in ihrer vorgesehenen Betriebsumgebung
  • Die Risikomanagementstrategie dient der Identifizierung, Analyse und Minderung von Risiken.
  • Das System erfรผllt die Anforderungen der Branchenvorschriften
  • Das System erfรผllt vertragliche Verpflichtungen
  • Institutionalisierung und das Erreichen anderer festgelegter spezifischer Ziele wie Kosten-, Zeitplan- und Qualitรคtsziele.
  • System, Prozesse und Menschen erfรผllen die Geschรคftsanforderungen

Risikobasiertes Testen

Fรผr die verschiedenen Testphasen kรถnnen generische Testziele definiert werden

  • Komponententest
  • Integrationstests
  • Systemtest
  • Abnahmetests

Betrachten wir die Systemtestphase

  1. G4 und G5 zeigen, dass das System die funktionalen (F1, F2, F3) und nichtfunktionalen Anforderungen (N1, N2) erfรผllt.
  2. Zeigen Sie mithilfe von Tests, dass die erwarteten Features und Funktionalitรคten des Systems einwandfrei funktionieren und dass das mit F1, F2, F3 verbundene Risiko durch Funktionstests angegangen werden kann
  3. Zeigen Sie durch Tests, dass die Betriebseigenschaften des Systems einwandfrei funktionieren und dass das mit N1, N2 verbundene Risiko durch nicht-funktionale Tests angegangen werden kann.
  4. Basierend auf der Testprioritรคtsnummer kann die Testwichtigkeit als hoch (rot), mittel (gelb) und niedrig (grรผn) klassifiziert werden.

Priorisierungs- und Risikobewertungsmatrix

Die Risikobewertungsmatrix ist die Wahrscheinlichkeits-Auswirkungsmatrix. Es bietet dem Projektteam einen schnellen รœberblick รผber die Risiken und die Prioritรคt, mit der jedes dieser Risiken angegangen werden muss.

Risk rating = Probability x Severity

Die Wahrscheinlichkeit ist das MaรŸ fรผr die Wahrscheinlichkeit, dass ein ungewisses Ereignis eintritt. Belichtung in Bezug auf Zeit, Nรคhe und Wiederholung. Sie wird in Prozent ausgedrรผckt.

Dies kann als hรคufig (A), wahrscheinlich (B), gelegentlich (C), selten (D), unwahrscheinlich (E), eliminiert (F) klassifiziert werden.

  • Hรคufig: Es wird erwartet, dass es in den meisten Fรคllen mehrmals auftritt (91โ€“100 %).
  • Wahrscheinlich: Tritt in den meisten Fรคllen wahrscheinlich mehrmals auf (61 โ€“ 90 %).
  • Gelegentlich: Kann irgendwann auftreten (41 โ€“ 60 %)
  • Entfernt โ€“ Tritt unwahrscheinlich auf/kรถnnte irgendwann auftreten (11 โ€“ 40 %)
  • Unwahrscheinlich โ€“ Kann in seltenen und auรŸergewรถhnlichen Fรคllen auftreten (0โ€“10 %).
  • Beseitigen โ€“ Unmรถglich (0 %)

Der Schweregrad ist der Grad der Auswirkung von Schรคden oder Verlusten, die durch das ungewisse Ereignis verursacht werden. Bewertet mit 1 bis 4 und kann als katastrophal=1, kritisch=2, marginal=3, vernachlรคssigbar=4 klassifiziert werden

  • Katastrophal โ€“ Harte Konsequenzen, die das Projekt vรถllig unproduktiv machen und sogar zum Projektabbruch fรผhren kรถnnen. Dies muss beim Risikomanagement oberste Prioritรคt haben.
  • Kritischeโ€“ GroรŸe Konsequenzen, die zu groรŸen Verlusten fรผhren kรถnnen. Das Projekt ist stark bedroht.
  • Marginal โ€“ Kurzfristige Schรคden sind durch SanierungsmaรŸnahmen noch reversibel.
  • Unerheblichโ€“ Geringer oder minimaler Schaden oder Verlust. Dies kann durch Routineverfahren รผberwacht und verwaltet werden.

Die Prioritรคt wird in vier Kategorien eingeteilt, die der Schwere und Wahrscheinlichkeit des Risikos zugeordnet werden, wie in der folgenden Abbildung dargestellt.

  • Echte Beschallungs-
  • Hoch
  • Medium
  • Niedrig

    Priorisierungs- und Risikobewertungsmatrix

Ernst: Die Risiken, die in diese Kategorie fallen, sind in der Farbe Gelb gekennzeichnet. Die Aktivitรคt muss gestoppt werden und es mรผssen sofort MaรŸnahmen zur Eingrenzung des Risikos ergriffen werden. Wirksame Kontrollen mรผssen identifiziert und umgesetzt werden. Darรผber hinaus darf die Tรคtigkeit nicht fortgesetzt werden, es sei denn, das Risiko ist auf ein niedriges oder mittleres MaรŸ reduziert.

Hoch: Die Risiken, die in diese Kategorie fallen, sind in roter Farbe gekennzeichnet und weisen auf MaรŸnahmen oder Risikomanagementstrategien hin. Es mรผssen sofort MaรŸnahmen ergriffen werden, um das Risiko zu isolieren, zu beseitigen, zu ersetzen und wirksame Risikokontrollen umzusetzen. Wenn diese Probleme nicht sofort gelรถst werden kรถnnen, mรผssen strenge Zeitplรคne fรผr die Lรถsung dieser Probleme definiert werden.

Medium: Die Risiken, die in diese Kategorie fallen, sind gelb markiert. Es mรผssen angemessene und praktische MaรŸnahmen ergriffen werden, um die Risiken zu minimieren.

Niedrig: Die in diese Kategorie fallenden Risiken sind grรผn markiert und kรถnnen ignoriert werden, da sie in der Regel kein nennenswertes Problem darstellen. Eine regelmรครŸige รœberprรผfung ist ein Muss, um sicherzustellen, dass die Kontrollen wirksam bleiben

Allgemeine Checkliste fรผr risikobasierte Tests

Umfassende Liste wichtiger Punkte, die bei risikobasierten Tests berรผcksichtigt werden mรผssen

  • Wichtige Funktionalitรคten im Projekt.
  • Fรผr den Benutzer sichtbare Funktionalitรคt im Projekt
  • Die Funktionalitรคt mit der grรถรŸten Auswirkung auf die Sicherheit
  • Funktionalitรคten, die den grรถรŸten finanziellen Einfluss auf die Benutzer haben
  • Hochkomplexe Quellcodebereiche und fehleranfรคllige Codes
  • Features oder Funktionen, die frรผh im Entwicklungszyklus getestet werden kรถnnen.
  • Dem Produktdesign wurden in letzter Minute Features oder Funktionalitรคten hinzugefรผgt.
  • Kritische Faktoren รคhnlicher/verwandter frรผherer Projekte, die Probleme/Probleme verursacht haben.
  • Hauptfaktoren oder Probleme รคhnlicher/verwandter Projekte, die einen enormen Einfluss auf die Betriebs- und Wartungskosten hatten.
  • Schlechte Anforderungen fรผhren zu schlechten Designs und Tests, die sich auf die Projektziele und -ergebnisse auswirken kรถnnen.
  • Im schlimmsten Fall kann ein Produkt so fehlerhaft sein, dass es nicht mehr nachgearbeitet werden kann und komplett verschrottet werden muss, was zu einem erheblichen Reputationsschaden fรผr das Unternehmen fรผhren wรผrde. Identifizieren Sie, welche Art von Problemen fรผr die Produktziele entscheidend sind.
  • Situationen oder Probleme, die zu anhaltenden Kundendienstbeschwerden fรผhren wรผrden.
  • End-to-End-Tests kรถnnten sich leicht auf die vielfรคltigen Funktionalitรคten des Systems konzentrieren.
  • Optimaler Testsatz, der die Risikoabdeckung maximieren kann
  • Welche Tests bieten das beste Verhรคltnis zwischen hoher Risikoabdeckung und erforderlicher Zeit?

Risikobasierte Testergebnisse, Berichte und Metriken

  1. Erstellung des PrรผfberichtsBei der Berichterstattung รผber den Teststatus geht es darum, die Testergebnisse effektiv an die Projektbeteiligten zu kommunizieren. Und um ein klares Verstรคndnis zu vermitteln und den Vergleich der Testergebnisse mit den Testzielen zu zeigen.
  • Anzahl der geplanten vs. ausgefรผhrten Testfรคlle
  • Anzahl der bestandenen/fehlgeschlagenen Testfรคlle
  • Anzahl der identifizierten Mรคngel sowie deren Status und Schweregrad
  • Anzahl der Mรคngel und deren Status
  • Anzahl der kritischen Mรคngel โ€“ noch offen
  • Ausfallzeiten der Umgebung โ€“ falls vorhanden
  • Showstopper โ€“ falls vorhandenTestzusammenfassungsbericht, Testabdeckungsbericht
  1. MetrikvorbereitungMetriken sind eine Kombination aus zwei oder mehr MaรŸen, die zum Vergleich von Softwareprozessen, Projekten und Produkten verwendet werden.
    • Aufwands- und Zeitplanvariation
    • Produktivitรคt der Testfallvorbereitung
    • Abdeckung des Testdesigns
    • Produktivitรคt bei der Ausfรผhrung von Testfรคllen
    • Effizienz der Risikoidentifizierung %
    • Effizienz der Risikominderung %
    • Testeffektivitรคt %
    • Abdeckung der Testausfรผhrung
    • Produktivitรคt der Testausfรผhrung
    • Fehlerleckage %
    • Effizienz der Fehlererkennung
    • Anforderungsstabilitรคtsindex
    • Kosten der Qualitรคt
  1. Analysieren Sie die Risiken in nichtfunktionalen Kategorien (Leistung, Zuverlรคssigkeit und Benutzerfreundlichkeit) basierend auf dem Fehlerstatus und einer Reihe von Tests bestanden/nicht bestanden, basierend auf ihrer Beziehung zu Risiken.
  2. Analysieren Sie die Risiken in funktionalen Kategorien wie Tests, Fehlerstatus und Testbestanden/nicht bestanden, basierend auf ihrer Beziehung zu Risiken.
  3. Identifizieren Sie wichtige Lead- und Lag-Indikatoren und erstellen Sie Frรผhwarnindikatoren
  4. รœberwachen und berichten Sie รผber Lead- und Lag-Risikoindikatoren (Key Risk Indicators), indem Sie die Datenmuster, Trends und gegenseitigen Abhรคngigkeiten analysieren.

Bewertung des inhรคrenten Risikos im Vergleich zum Restrisiko

Die Risikoidentifizierung und -analyse sollte auch inhรคrente Risiken, Restrisiken, Sekundรคrrisiken und wiederkehrende Risiken umfassen

  • Inhรคrentes Risiko: Die Risiken, die im System identifiziert wurden/bereits vorhanden waren, bevor die Kontrollen und Reaktionen implementiert wurden. Inhรคrente Risiken werden auch als Bruttorisiken bezeichnet
  • Restrisiko: Die Risiken, die nach der Umsetzung der Kontrollen und Reaktionen รผbrig bleiben. Restrisiken werden als Nettorisiken bezeichnet
  • Sekundรคres Risiko: Das neue Risiko, das durch die Umsetzung des Risikoreaktionsplans entsteht
  • Wiederkehrende Risiken: Wahrscheinlichkeit, dass die anfรคnglichen Risiken eintreten.

Die risikobasierte Messung der Testergebnisse hilft dem Unternehmen, das verbleibende Qualitรคtsrisiko wรคhrend der Testausfรผhrung zu ermitteln und intelligente Release-Entscheidungen zu treffen.

Risikoprofilierung und Kundenfeedback

Bei der Risikoprofilierung handelt es sich um einen Prozess zur Ermittlung des optimalen Anlagerisikoniveaus fรผr den Kunden unter Berรผcksichtigung des erforderlichen Risikos, der Risikokapazitรคt und der Risikotoleranz.

  1. Das erforderliche Risiko ist das Risikoniveau, das der Kunde eingehen muss, um eine zufriedenstellende Rendite zu erzielen
  2. Unter Risikofรคhigkeit versteht man die Hรถhe des finanziellen Risikos, das der Kunde eingehen kann
  3. Unter Risikotoleranz versteht man den Grad des Risikos, den der Kunde eingehen mรถchte

Kundenfeedback

Sammeln Sie Kundenfeedback und Bewertungen, um das Geschรคft, das Produkt, den Service und die Erfahrung zu verbessern.

Vorteile risikobasierter Tests

Die Vorteile des risikobasierten Testens sind unten aufgefรผhrt

  • Verbesserte Produktivitรคt und Kostensenkung
  • Verbesserte Marktchancen (Markteinfรผhrungszeit) und pรผnktliche Lieferung.
  • Verbesserte Serviceleistung
  • Verbesserte Qualitรคt, da alle kritischen Funktionen der Anwendung getestet werden.
  • Bietet klare Informationen zur Testabdeckung. Mit diesem Ansatz wissen wir, was getestet wurde bzw. was nicht.
  • Die Aufteilung des Testaufwands auf der Grundlage einer Risikobewertung ist der effizienteste und effektivste Weg, das Restrisiko bei der Freigabe zu minimieren.
  • Die Messung der Testergebnisse auf der Grundlage einer Risikoanalyse ermรถglicht es der Organisation, das verbleibende Qualitรคtsrisiko wรคhrend der Testausfรผhrung zu ermitteln und intelligente Release-Entscheidungen zu treffen.
  • Optimierte Tests mit hochdefinierten Risikobewertungsmethoden.
  • Hรถhere Kundenzufriedenheit โ€“ Durch Kundeneinbindung und gute Berichterstattung und Fortschrittsverfolgung.
  • Frรผhzeitige Erkennung potenzieller Problembereiche. Zur Bewรคltigung dieser Probleme kรถnnen wirksame vorbeugende MaรŸnahmen ergriffen werden
  • Kontinuierliche Risikoรผberwachung und -bewertung wรคhrend des gesamten Projektlebenszyklus hilft bei der Identifizierung und Lรถsung von Risiken und bei der Lรถsung von Problemen, die das Erreichen der allgemeinen Projektziele gefรคhrden kรถnnten.

Zusammenfassung

Im Software Engineering ist risikobasiertes Testen der effizienteste Weg, das Projekt risikobasiert zu steuern.

Die Testbemรผhungen sind effektiv organisiert und die Prioritรคt jedes einzelnen Risikoelements wird bewertet. Jedes Risiko wird dann den entsprechenden Testaktivitรคten zugeordnet. Wenn ein einzelner Test mehr als ein Risikoelement aufweist, wird dem Test das hรถchste Risiko zugewiesen.

Tests werden entsprechend der Risikoprioritรคtsreihenfolge ausgefรผhrt. Der Risikoรผberwachungsprozess hilft dabei, die identifizierten Risiken im Auge zu behalten und die Auswirkungen von Restrisiken zu reduzieren.

Fassen Sie diesen Beitrag mit folgenden Worten zusammen: