Risikobasiertes Testen: Ansatz, Matrix, Prozess und Beispiele

⚡ Intelligente Zusammenfassung

Beim risikobasierten Testen wird jedes Feature nach der Wahrscheinlichkeit eines Fehlers und dem Schaden, den dieser Fehler verursachen würde, eingestuft. Anschließend wird der verfügbare Testaufwand in der Reihenfolge der Priorität auf die am höchsten bewerteten Elemente konzentriert.

  • 🔘 Kernformel: Die Risikobewertung entspricht der Wahrscheinlichkeit multipliziert mit dem Schweregrad, wodurch eine subjektive Sorge in eine vergleichbare Zahl umgewandelt wird.
  • ☑️ Risikoregister: In einer einzigen Tabelle sind alle identifizierten Risiken, deren Verantwortlicher, die damit verbundene Gefährdung, das Testziel und die Phase, in der das Risiko angegangen wird, enthalten.
  • ✅ Testprioritätsnummer: Wahrscheinlichkeit, Konsequenzen und Testeffektivität werden multipliziert zu einer Punktzahl zwischen 1 und 125, die die Ausführungsreihenfolge festlegt.
  • 🧪 Fünf-Phasen-Prozess: Risikoidentifizierung, Risikoanalyse, Risikobewältigung, Testumfangping und die Testprozessdefinition wird nacheinander ausgeführt.
  • ️ Alle Teststufen: Der Ansatz gilt für Komponenten-, Integrations-, System- und Abnahmetests, nicht nur für Systemtests.
  • 📊 Restrisiko: Die Messung dessen, was nach der Durchführung noch ungetestet bleibt, ist das, was aus den Testergebnissen eine fundierte Freigabeentscheidung macht.

Matrix für risikobasiertes Testenping Wahrscheinlichkeit im Verhältnis zum Schweregrad zur Priorisierung des Testaufwands

Risikobasiertes Testen

Risikobasiertes Testen (RBT) ist eine Art von Softwaretest, die auf der Wahrscheinlichkeitsberechnung basiert. Dabei wird das Risiko anhand der Softwarekomplexität, der Kritikalität für das Unternehmen, der Nutzungshäufigkeit und der Bereiche, die am ehesten einen Fehler enthalten, bewertet. DefektRisikobasiertes Testen priorisiert das Testen derjenigen Merkmale und Funktionen der Softwareanwendung, die einen größeren Einfluss haben und mit höherer Wahrscheinlichkeit Fehler aufweisen.

Risiko bezeichnet das Eintreten eines ungewissen Ereignisses mit positiven oder negativen Auswirkungen auf die messbaren Erfolgskriterien eines Projekts. Es kann sich um ein vergangenes, ein aktuelles oder ein zukünftiges Ereignis handeln. Diese ungewissen Ereignisse können sich auf die Kosten sowie die geschäftlichen, technischen und qualitativen Ziele eines Projekts auswirken.

Risiken können positiv oder negativ sein.

  • Positive Risiken werden als Chancen bezeichnet und tragen zur Nachhaltigkeit von Unternehmen bei. Beispiele hierfür sind Investitionen in neue Projekte, die Veränderung von Geschäftsprozessen und die Entwicklung vonping Neue Produkte.
  • Negative Risiken werden als Bedrohungen bezeichnet, und Empfehlungen zu deren Minimierung oder Beseitigung müssen für den Projekterfolg umgesetzt werden.

Da die Technik den Aufwand verteilt, anstatt eine neue Teststufe hinzuzufügen, ergänzt sie die anderen. Arten von Softwaretests anstatt auch nur einen davon zu ersetzen.

Wann sollte risikobasiertes Testen implementiert werden?

Risikobasiertes Testen kann implementiert werden in

  • Projekte mit Zeit-, Ressourcen- oder Budgetbeschränkungen.
  • 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 etwa mangelnde Erfahrung mit den verwendeten Technologien oder fehlende Branchenkenntnisse.
  • Inkrementelle und iterative Liefermodelle.

Risikomanagementprozesses

Lassen Sie uns nun die einzelnen Schritte des Risikomanagementprozesses verstehen.

Risiko-Einschätzung

Die Risikoidentifizierung kann durch Risikoworkshops, Checklisten, Brainstorming, Interviews, die Delphi-Methode, Ursache-Wirkungs-Diagramme, Erkenntnisse aus früheren Projekten, Ursachenanalyse und die Kontaktaufnahme mit Domänenexperten und Fachexperten erfolgen.

Ein Risikoregister ist eine Tabellenkalkulation, die die Liste der identifizierten Risiken, potenziellen Gegenmaßnahmen und deren Ursachen enthält. Es dient der Überwachung und tracDie Risiken (sowohl Bedrohungen als auch Chancen) während der gesamten Projektlaufzeit müssen identifiziert werden. Risikomanagementstrategien können eingesetzt werden, um positive und negative Risiken zu steuern.

Eine Risikostrukturplanung spielt eine wichtige Rolle in der Risikoplanung. Sie hilft, risikobehaftete Bereiche zu identifizieren und unterstützt eine effektive Bewertung und Überwachung der Risiken während des gesamten Projektverlaufs. Sie trägt dazu bei, ausreichend Zeit und Ressourcen für Risikomanagementaktivitäten bereitzustellen und die vielfältigen Quellen potenzieller Projektrisiken zu kategorisieren.

Das folgende Beispiel zeigt, wie eine Risikostrukturanalyse Projektrisiken in Kategorien einteilt, sodass keine Risikoquelle übersehen wird.

Beispielhafte Risikostrukturanalyseping Projektrisiken in Kategorien für die Risikoplanung einteilen

Risikoanalyse (einschließlich quantitativer und qualitativer Analyse)

Sobald die Liste potenzieller Risiken erstellt ist, werden diese analysiert und nach ihrer Bedeutung gefiltert. Eine der qualitativen Risikoanalysemethoden ist die Risikomatrix (die in einem späteren Abschnitt behandelt wird). Mit dieser Methode lassen sich die Eintrittswahrscheinlichkeit und die Auswirkungen des Risikos bestimmen.

Risikoreaktionsplanung

Anhand der Analyse können wir entscheiden, ob die Risiken eine Reaktion erfordern. Beispielsweise erfordern manche Risiken eine Reaktion im Projektplan, andere eine Reaktion im Projektmonitoring und wieder andere gar 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 Methode der Risikobewältigung, die darauf abzielt, die negativen Auswirkungen potenzieller Bedrohungen zu verringern. Dies kann durch die Beseitigung der Risiken oder deren Reduzierung auf ein akzeptables Maß erreicht werden. Das folgende Diagramm ordnet die Risikobewältigungsplanung in den umfassenderen Risikomanagementzyklus ein.

Schritt der Risikoreaktionsplanung innerhalb des Risikomanagementprozesses

Risikokontingenz

Eine Eventualitätsplanung beschreibt die Möglichkeit eines ungewissen Ereignisses, dessen Auswirkungen unbekannt oder unvorhersehbar sind. Ein Notfallplan wird auch als Aktionsplan oder Ausweichplan für Worst-Case-Szenarien bezeichnet. Er legt fest, welche Maßnahmen ergriffen werden können, wenn ein unvorhersehbares Ereignis eintritt.

Risikoüberwachung und -kontrolle

Der Risikokontroll- und Überwachungsprozess dient dazu tracDie identifizierten Risiken werden überwacht, Restrisiken identifiziert, neue Risiken identifiziert, das Risikoregister aktualisiert, die Gründe für jegliche Änderungen analysiert, der Risikobewältigungsplan umgesetzt und Risikoauslöser überwacht. Anschließend wird die Wirksamkeit der Maßnahmen zur Risikominderung bewertet.

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

Die nachstehende Tabelle enthält Informationen über die Inputs, Instrumente und Outputs der Risikoüberwachung und -kontrolle.

Eingaben zur Risikoüberwachung und -kontrolle Instrumente 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 Risikomanagementplans und der Checkliste zur Risikoidentifizierung
Umfangsänderungen Zusätzliche Risikoreaktionsplanung Risikodatenbank

Wir müssen bedenken, dass das Risiko mit Veränderungen der Technologie, der Größe des Projekts, der Dauer des Projekts (einer längeren Projektlaufzeit), der Anzahl der Förderinstitutionen, den Projektschätzungen, dem Aufwand und einem Mangel an geeigneten Fachkräften zunimmt.

Risikobasierter Testansatz

Der oben beschriebene Managementprozess bildet die Grundlage für den unten beschriebenen Testansatz. Jeder nummerierte Schritt erzeugt eine Eingabe, die vom nächsten Schritt verarbeitet wird.

  1. Analysieren Sie die Anforderungen.
    • Die Dokumente (SRS, FRS, Anwendungsfälle) werden geprüft. Diese Maßnahme dient dazu, Fehler und Unklarheiten zu finden und zu beseitigen.
    • Die Freigabe von Anforderungen ist eine Methode zur Risikominderung, um nachträgliche Änderungen im Projekt zu vermeiden. Jede Änderung an einer Anforderung nach Festlegung des Basisdokuments erfordert einen Änderungskontrollprozess und weitere Genehmigungen.
  2. Bewerten Sie die Risiken durch Berechnung der Wahrscheinlichkeit und der Auswirkungen jeder Anforderung auf das Projekt unter Berücksichtigung der definierten Kriterien wie Kosten, Zeitplan, Ressourcen, Umfang, technische Leistungsfähigkeit, Sicherheit, Zuverlässigkeit und Komplexität.
    • Ermitteln Sie die Ausfallwahrscheinlichkeit und die Bereiche mit hohem Risiko. Dies kann mithilfe einer Risikobewertungsmatrix erfolgen.
    • Verwenden Sie ein Risikoregister, um die identifizierten Risiken aufzulisten. Aktualisieren, überwachen und track die Risiken periodisch in regelmäßigen Abständen.
    • In dieser Phase muss eine Risikoprofilierung durchgeführt werden, um die Risikokapazität und die Risikotoleranzniveaus zu verstehen.
  3. Priorisieren Sie die Anforderungen anhand der Bewertung.
    • Der risikobasierte Testprozess ist definiert.
    • Hochkritische und mittlere Risiken können für die Planung, Umsetzung und Überwachung von Risikominderungsmaßnahmen berücksichtigt werden. Niedrige Risiken können auf einer Beobachtungsliste geführt werden.
    • Zur Analyse der Datenqualität wird eine Risikodatenqualitätsbewertung durchgeführt.
  4. Planen und definieren Sie die Tests entsprechend der Bewertung.
    • Wählen Sie einen geeigneten Testansatz und geeignete Testdesigntechniken, um die Komponenten mit dem höchsten Risiko zuerst zu testen. Die Tests dieser Komponenten können von einer Fachkraft mit fundierten Kenntnissen und Erfahrung durchgeführt werden.
    • Es können verschiedene Testdesigntechniken verwendet werden – zum Beispiel die Entscheidungstabelle Technik bei risikoreichen Testaufgaben, und nur Äquivalenzpartitionierung für Testaufgaben mit niedrigem Risiko.
    • Testfälle sind außerdem so konzipiert, dass sie mehrere Funktionalitäten und durchgängige Geschäftsszenarien abdecken.
    • Bereiten Sie die Testdaten, Testbedingungen und den Testaufbau vor.
  5. RevSehen Sie sich die Testdokumentation an — die Testpläne, die Teststrategie, die Testfälle, die Testberichte und alle anderen vom Testteam erstellten Dokumente.
    • Peer-Review ist ein wichtiger Schritt bei der Fehlererkennung und Risikominderung.
  6. Führen Sie Probeläufe und Qualitätskontrollen der Ergebnisse durch.
    • Testfälle werden entsprechend der Priorität des Risikoelements ausgeführt.
    • Hilft dabei tracDie Übereinstimmung zwischen Risikofaktoren, den zugehörigen Prüfungen, den Prüfergebnissen und den dabei festgestellten Fehlern wird untersucht. Alle korrekt durchgeführten Prüfstrategien reduzieren Qualitätsrisiken.
    • Risikobasiertes Testen kann auf jeder Testebene eingesetzt werden. Komponente, Integration, fragst und Abnahmetests.
    • Auf Systemebene müssen wir uns auf die wichtigsten Aspekte der Anwendung konzentrieren. Dies lässt sich anhand der Sichtbarkeit der Funktionen, der Nutzungshäufigkeit und der potenziellen Ausfallkosten ermitteln.
    • Bewertung der Austrittskriterien: Alle Hochrisikobereiche wurden vollständig geprüft, es bestehen nur noch geringfügige Restrisiken.
  7. Melden Sie die Ergebnisse des risikobasierten Tests. und die Kennzahlen analysieren.
    • Bewerten Sie bestehende Risikoereignisse und neue Risikoereignisse basierend auf wichtigen Risikoindikatoren neu.
    • Aktualisieren Sie das Risikoregister.
    • Notfallpläne dienen als Ausweich- oder Notfallplan für Fälle mit hohem Expositionsrisiko.
    • Zur Beseitigung von Fehlern werden Fehleranalyse und Fehlervermeidung eingesetzt.
    • erneutes Testen und Regressionstests Die Mängelbehebungen sollten auf Basis der zuvor berechneten Risikoanalyse validiert werden, wobei Bereiche mit hohem Risiko besonders intensiv abgedeckt werden sollten.
    • Risikobasiertes automatisiertes Testen, sofern durchführbar.
    • Berechnung des Restrisikos.
  8. Die Risiken überwachen und kontrollieren.
    • Die Ausstiegs- oder Abschlusskriterien können für verschiedene Risikostufen separat definiert werden. Alle wesentlichen Risiken wurden durch geeignete Maßnahmen oder Notfallpläne adressiert, und das Risiko liegt auf oder unter dem für das Projekt vereinbarten akzeptablen Niveau.
    • Neubewertung des Risikoprofils und Kundenfeedback.

Risikobasierter Testansatz für den Systemtest

  1. Technischer Systemtest Dies wird als Umgebungstest und Integrationstest bezeichnet. Der Umgebungstest umfasst Tests in der Entwicklungs-, Test- und Produktionsumgebung.
  2. Funktioneller Systemtest — Prüfung aller Funktionalitäten, Funktionen, Programme und Module. Ziel dieses Tests ist die Bewertung, ob das System die spezifizierten Anforderungen erfüllt.
  3. Nicht funktionsfähiger Systemtest — Prüfung der nicht-funktionalen Anforderungen: Leistung, Belastungstests, StresstestsKonfigurationstests, Sicherheitstests, Datensicherung und Erholung Verfahren und Dokumentation (System-, Betriebs- und Installationsdokumentation).

Das folgende Diagramm gibt einen klaren Überblick über den oben genannten Prozess.

Risikobasierter Testansatz für Systemtests, unterteilt in technische, funktionale und nicht-funktionale Systemtests

Systemtests umfassen sowohl Funktionstests als auch nicht-funktionale Tests.

Funktionsprüfung stellt sicher, dass das Produkt oder die Anwendung die Kunden- und Geschäftsanforderungen erfüllt. Andererseits nicht-funktionale Tests wird durchgeführt, um zu überprüfen, ob das Produkt die Erwartungen des Kunden hinsichtlich Qualität, Zuverlässigkeit, Benutzerfreundlichkeit, Leistung und Kompatibilität erfüllt.

So führen Sie risikobasiertes Testen durch: Vollständiger Prozess

Dieser Abschnitt behandelt den risikobasierten Testprozess, der in fünf Phasen abläuft.

  1. Risiko-Einschätzung
  2. Risikoanalyse
  3. Risiko-Reaktion
  4. Testbereichping
  5. Testprozessdefinition

Die fünf Phasen greifen wie unten dargestellt ineinander.

Die fünf Phasen des risikobasierten Testprozesses von der Risikoidentifizierung bis zur Definition des Testprozesses

  1. Dabei werden die Risiken identifiziert und kategorisiert, ein Entwurf des Risikoregisters erstellt und eine Risikosortierung durchgeführt, um die wesentlichen Risiken zu ermitteln.
  2. Die Risikobewältigung umfasst die Formulierung der Testziele aus den Risiken und die Auswahl geeigneter Techniken, damit die Testaktivität oder Testtechnik diese Testziele erfüllt.
  3. Bei der Berechnung des Testeffektivitätswerts werden dokumentierte Abhängigkeiten, Anforderungen, Kosten und der Zeitaufwand für Softwaretests berücksichtigt.
  4. Testergebnisping Diese Überprüfung erfordert die Beteiligung aller Stakeholder und des technischen Personals. Es ist wichtig, den vereinbarten Risikoumfang einzuhalten. Diese Risiken müssen durch Tests untersucht werden, und alle Mitglieder müssen den ihnen zugewiesenen Verantwortlichkeiten und dem für diese Aktivitäten bereitgestellten Budget zustimmen.
  5. Nachdem der Testumfang endgültig festgelegt wurde, müssen die Testziele, Annahmen und Abhängigkeiten für jede Testphase im Standardformat zusammengestellt werden.

Das untenstehende Beispiel ordnet jede Anforderung dem zugehörigen Risiko und dem Testziel zu, das dieses Risiko adressiert.

Funktionale Anforderungen F1 bis F3 und nicht-funktionale Anforderungen N1 und N2 wurden ihren zugehörigen Risiken und Testzielen zugeordnet.

Betrachten wir die funktionalen Anforderungen F1, F2 und F3 sowie die nicht-funktionalen Anforderungen N1 und N2.

F1 – Funktionale Anforderung, R1 – Risiko im Zusammenhang mit F1

  • Testziel 1 — Mit einem Test nachweisen, dass die erwarteten Merkmale und Funktionen des Systems korrekt funktionieren und dass das Risiko R1 durch Funktionstests behoben werden kann.
  • Test — Browserseitentests werden durchgeführt, um wichtige Benutzeraufgaben auszuführen und zu überprüfen, ob R1 (das mit F1 verbundene Risiko) in einer Reihe von Szenarien angegangen werden kann.

F2 – Funktionale Anforderung, R2 – Risiko im Zusammenhang mit F2

  • Testziel 2 — Mit einem Test nachweisen, dass die erwarteten Merkmale und Funktionen des Systems korrekt funktionieren und dass das Risiko R2 durch Funktionstests behoben werden kann.
  • Test — Browserseitentests werden durchgeführt, um wichtige Benutzeraufgaben auszuführen und zu überprüfen, ob R2 in einer Reihe von Szenarien adressiert werden kann.

F3 – Funktionale Anforderung, R3 – Risiko im Zusammenhang mit F3

  • Testziel 3 — Mit einem Test nachweisen, dass die erwarteten Merkmale und Funktionen des Systems korrekt funktionieren und dass das Risiko R3 durch Funktionstests behoben werden kann.
  • Test — Browserseitentests werden durchgeführt, um wichtige Benutzeraufgaben auszuführen und zu überprüfen, ob R3 in einer Reihe von Szenarien adressiert werden kann.

N1 – Nichtfunktionale Anforderung, NR1 – Mit N1 verbundenes Risiko

  • Testziel N1 — Nachweis mittels eines Tests, dass die Betriebseigenschaften des Systems korrekt funktionieren und dass das Risiko NR1 durch nicht-funktionale Tests behoben werden kann.
  • Test – Usability-Tests sind eine Technik, mit der man beurteilen kann, wie einfach Benutzeroberflächen zu bedienen sind und um zu überprüfen, ob NR1 durch Usability-Tests angegangen werden kann.

N2 – Nichtfunktionale Anforderung, NR2 – Mit N2 verbundenes Risiko

  • Testziel N2 — Nachweis mittels eines Tests, dass die Betriebseigenschaften des Systems korrekt funktionieren und dass das Risiko NR2 durch nicht-funktionale Tests behoben werden kann.
  • Prüfung - Sicherheitstests ist eine Technik, mit der überprüft wird, ob die Anwendung sicher oder anfällig für Angriffe ist, ob es zu Informationslecks kommt und ob NR2 durch Sicherheitstests behoben werden kann.

Spezifische Testziele: Die aufgeführten Risiken und Testziele sind spezifisch für die jeweiligen Testarten, wie nachfolgend zusammengefasst.

Spezifische Testziele, die dem jeweiligen Testtyp zugeordnet sind und jedes einzelne Risiko berücksichtigen

Vorgehensweise zur Gestaltung des risikobasierten Testprozesses

  • Erstellen Sie ein Risikoregister. Dieses erfasst die Risiken, die aus einer allgemeinen Risikoliste, einer bestehenden Checkliste und Brainstorming-Sitzungen abgeleitet wurden.
  • Berücksichtigen Sie die Risiken, die mit den funktionalen und nicht-funktionalen Anforderungen des Systems (Benutzerfreundlichkeit, Sicherheit, Leistung) verbunden sind.
  • Jedem Risiko wird eine eindeutige Kennung zugeordnet.

Die Spalten 1 und 2 dieses Registers enthalten die Kennung und die Risikobeschreibung. Die übrigen Spalten werden im Folgenden beschrieben.

Spalte Nr. Spaltenüberschrift Beschreibung
3 Wahrscheinlichkeit Wahrscheinlichkeit, dass das System für diese Art von Ausfall anfällig ist
4 Folgen Auswirkungen dieser Ausfallart
5 Belichtung Produkt aus Wahrscheinlichkeit und Konsequenzen (Spalten 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 (Spalten 3, 4 und 6)
8 Testziel(e) Welches Testziel wird verwendet, um diesem Risiko zu begegnen?
9 Testtechniken Welche Methode oder Technik wird verwendet, um diesem Risiko zu begegnen?
10 Abhängigkeiten Was die Tester annehmen und worauf sie sich stützen
11 Aktion Wie viel Aufwand ist für diesen Test erforderlich?
12 Zeitskala Wie viel Zeit wird für diesen Test benötigt?
13 Testphase A – Komponententests, Testphase B – Integrationstests, Testphase C – Systemtests 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 anhand der beiden Register bewertet.tracts unten anzeigen.

Die Spalten „Wahrscheinlichkeit“ und „Folgen“ des Risikoregisters werden von 1 (niedrig) bis 5 (hoch) bewertet.

Die Spalte „Risikoexposition“ wird als Produkt aus Wahrscheinlichkeit und Folgen berechnet.

  • Die Testexposition wird berechnet.
  • Der Tester analysiert jedes Risiko und beurteilt, ob das Risiko testbar ist oder nicht.
  • Für die testbaren Risiken werden Testziele definiert.
  • Der Tester legt die Testaktivitäten fest, die planmäßig durchgeführt werden sollen, um das Testziel zu erreichen (statische Überprüfungen, Inspektionen, Systemtests, Integrationstests, Akzeptanztests, HTML-Validierung, Lokalisierungstests usw.).
  • Diese Testaktivitäten lassen sich in Phasen einteilen (Komponententest oder Unit-TestIntegrationstests, Systemtests, Abnahmetests).
  • Gelegentlich kann ein Risiko durch mehr als eine Testphase angegangen werden.
  • Identifizieren Sie die Abhängigkeiten und Annahmen (Verfügbarkeit von Fähigkeiten, Werkzeugen, Testumgebungen und Ressourcen).
  • Die Testeffektivität wird berechnet. Sie gibt an, wie sicher sich der Tester ist, dass das Risiko durch den Test eindeutig beseitigt wird. Der Wert für die Testeffektivität liegt zwischen eins und fünf (5 = hohe Sicherheit, 1 = geringe Sicherheit).
  • Schätzen Sie den Aufwand, die benötigte Zeit und die Kosten für die Vorbereitung und Durchführung dieser Tests.

Die nächsten beiden Extracts zeigen die verbleibenden Registerspalten und den Testeffektivitätswert an.

Risikoregisterspalten für Testziele, Testtechniken, Abhängigkeiten, Aufwand und Zeitrahmen

Die Testeffektivität wurde für jedes Risiko auf einer Skala von 1 (niedrige Sicherheit) bis 5 (hohe Sicherheit) bewertet.

  • Die Testprioritätszahl wird berechnet. Sie ist das Produkt aus Wahrscheinlichkeit, Konsequenzen und Testeffektivität.
  • 125 (maximal) — ein sehr ernstes Risiko, das durch Tests festgestellt werden könnte.
  • 1 (Minimum) — ein sehr geringes Risiko, das durch Tests nicht erkannt werden könnte.
  • Anhand der Testprioritätsnummer wird die Wichtigkeit der Tests in hoch (rot), mittel (gelb) und niedrig (grün) eingeteilt. Die Tests mit dem höchsten Risiko werden zuerst durchgeführt.
  • Ordnen Sie die Testaktivitäten den Testphasen zu. Bestimmen Sie die Gruppe, die die Tests für jedes Ziel in den verschiedenen Testphasen (Komponententests, Integrationstests, Systemtests, Abnahmetests) durchführt.

Die Aufteilung auf die einzelnen Testphasen ist unten dargestellt.

Testprioritätsnummer und Zuordnung der Testaktivitäten zu den Phasen Unit-, Integrations-, System- und Abnahmetests

Der Umfang der Tests wird im Testumfang festgelegt.ping Phase.

  • Für jede Phase werden die Testziele, die zu testende Komponente, die Verantwortlichkeiten, die Umgebung, die Eintrittskriterien, die Austrittskriterien, die Werkzeuge, die Techniken und die zu erbringenden Leistungen definiert.

Allgemeine Testziele — Diese allgemeinen Ziele sind auf verschiedene Projekte und Anwendungen anwendbar.

  • Die Komponente erfüllt die Anforderungen und ist bereit für den Einsatz in größeren Teilsystemen.
  • Die mit den spezifischen Testtypen verbundenen Risiken werden berücksichtigt und die Testziele werden erreicht.
  • Die integrierten Komponenten sind korrekt montiert, und die Schnittstellenkompatibilität zwischen den Komponenten ist gewährleistet.
  • Das System erfüllt die festgelegten funktionalen und nicht-funktionalen Anforderungen.
  • Die Produktkomponenten erfüllen die Bedürfnisse der Endnutzer in ihrer vorgesehenen Betriebsumgebung.
  • Eine Risikomanagementstrategie dient dazu, Risiken zu identifizieren, zu analysieren und zu mindern.
  • Das System erfüllt die branchenspezifischen Regulierungsanforderungen.
  • Das System erfüllt die Anforderungentractual commitments.
  • Institutionalisierung und das Erreichen weiterer spezifischer Ziele wie Kosten-, Termin- und Qualitätsziele.
  • Systeme, Prozesse und Mitarbeiter erfüllen die Geschäftsanforderungen.

Generische Testziele, die für mehrere Projekte und alle vier Testphasen anwendbar sind.

Für die verschiedenen Testphasen können generische Testziele definiert werden.

  • Komponententest
  • Integrationstests
  • Systemtest
  • Abnahmetests

Betrachten wir nun die Systemtestphase.

  1. G4 und G5 zeigen, dass das System die funktionalen Anforderungen (F1, F2, F3) und die nicht-funktionalen Anforderungen (N1, N2) erfüllt.
  2. Weisen Sie mithilfe von Tests nach, dass die erwarteten Merkmale und Funktionen des Systems korrekt funktionieren und dass die mit F1, F2 und F3 verbundenen Risiken durch Funktionstests behoben werden können.
  3. Weisen Sie mithilfe von Tests nach, dass die Betriebseigenschaften des Systems korrekt funktionieren und dass die mit N1 und N2 verbundenen Risiken durch nicht-funktionale Tests behoben werden können.
  4. Anhand der Testprioritätsnummer kann die Wichtigkeit des Tests in Hoch (rot), Mittel (gelb) und Niedrig (grün) eingeteilt werden.

Priorisierungs- und Risikobewertungsmatrix

Die Risikobewertungsmatrix ist die Wahrscheinlichkeits-Auswirkungs-Matrix. Sie 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

Wahrscheinlichkeit ist das Maß für die Chance, dass ein ungewisses Ereignis eintritt, basierend auf Faktoren wie Zeit, räumlicher Nähe und Häufigkeit. Sie wird in Prozent ausgedrückt.

Dies kann wie folgt klassifiziert werden: Häufig (A), Wahrscheinlich (B), Gelegentlich (C), Fern (D), Unwahrscheinlich (E) und Ausgeschlossen (F).

  • Häufig — In den meisten Fällen ist mit einem mehrmaligen Auftreten zu rechnen (91 – 100%).
  • Wahrscheinlich — Tritt in den meisten Fällen wahrscheinlich mehrmals auf (61 – 90%).
  • Gelegentlich — Kann irgendwann auftreten (41 – 60%).
  • Remote — Unwahrscheinlich, aber es könnte irgendwann eintreten (11 – 40%).
  • Unwahrscheinlich — Kann in seltenen Ausnahmefällen auftreten (0 – 10%).
  • Ausgeschieden — Unmöglich (0%).

Der Schweregrad beschreibt das Ausmaß der Auswirkungen des durch das unvorhergesehene Ereignis verursachten Schadens oder Verlusts. Er wird auf einer Skala von 1 bis 4 bewertet und kann wie folgt klassifiziert werden: Katastrophal = 1, Kritisch = 2, Marginal = 3 und Vernachlässigbar = 4.

  • Katastrophal — Schwere Konsequenzen, die das Projekt völlig unproduktiv machen und sogar zum Projektstopp führen könnten. Dies muss bei der Risikobewertung höchste Priorität haben.
  • Kritische — Dies hätte gravierende Folgen, die zu erheblichen Verlusten führen könnten. Das Projekt ist stark gefährdet.
  • Marginal — Kurzfristige Schäden, die durch Wiederherstellungsmaßnahmen noch reversibel sind.
  • Unerheblich — Geringer oder minimaler Schaden bzw. Verlust. Dies kann durch routinemäßige Verfahren überwacht und kontrolliert werden.

Die Priorität wird in vier Kategorien eingeteilt, die der Schwere und Wahrscheinlichkeit des Risikos zugeordnet sind, wie in der Abbildung unten dargestellt.

  • Echte Beschallungs-
  • Hoch
  • Medium
  • Niedrig

Risikobewertungsmatrix-Karteping Wahrscheinlichkeit im Verhältnis zum Schweregrad, eingeteilt in die Prioritätsstufen ernst, hoch, mittel und niedrig.

Ernst: Die in diese Kategorie fallenden Risiken sind gelb markiert. Die Tätigkeit muss sofort eingestellt und unverzüglich Maßnahmen zur Risikominimierung ergriffen werden. Wirksame Kontrollmaßnahmen müssen identifiziert und implementiert werden. Die Tätigkeit darf erst fortgesetzt werden, wenn das Risiko auf ein niedriges oder mittleres Niveau reduziert ist.

Hoch: Die in diese Kategorie fallenden Risiken sind rot markiert und erfordern sofortiges Handeln oder eine Risikomanagementstrategie. Es müssen unverzüglich Maßnahmen ergriffen werden, um das Risiko zu isolieren, zu beseitigen oder zu ersetzen und wirksame Risikokontrollen einzuführen. Sollten diese Probleme nicht sofort gelöst werden können, müssen strikte Fristen für deren Behebung festgelegt werden.

Medium: Die in diese Kategorie fallenden Risiken sind gelb markiert. Es müssen angemessene und praktikable Maßnahmen ergriffen werden, um die Risiken zu minimieren.

Niedrig: Die in diese Kategorie fallenden Risiken sind grün markiert und können in der Regel akzeptiert werden, da sie kein signifikantes Problem darstellen. Eine regelmäßige Überprüfung ist dennoch unerlässlich, um die Wirksamkeit der Kontrollmaßnahmen sicherzustellen.

Allgemeine Checkliste für risikobasiertes Testen

Die Matrix dient der Risikobewertung. Die untenstehende Checkliste legt fest, welche Kandidaten überhaupt in die Matrix aufgenommen werden.

  • Wichtige Funktionalitäten im Projekt.
  • Für den Benutzer sichtbare Funktionalität im Projekt.
  • Die Funktionalität mit dem größten Sicherheitseinfluss.
  • Funktionen, die die größten finanziellen Auswirkungen auf die Nutzer haben.
  • Hochkomplexe Bereiche des Quellcodes und fehleranfälliger Code.
  • Features oder Funktionen, die früh im Entwicklungszyklus getestet werden können.
  • Merkmale oder Funktionalitäten, die in letzter Minute zum Produktdesign hinzugefügt wurden.
  • Kritische Faktoren ähnlicher oder verwandter Vorgängerprojekte, die Probleme verursachten.
  • Hauptfaktoren oder Probleme ähnlicher oder verwandter Projekte, die einen großen Einfluss auf die Betriebs- und Instandhaltungskosten hatten.
  • Unzureichende Anforderungen führen zu mangelhaften Entwürfen und Tests, was sich negativ auf die Projektziele und -ergebnisse auswirken kann.
  • Im schlimmsten Fall kann ein Produkt so fehlerhaft sein, dass es nicht nachbearbeitet werden kann und komplett verschrottet werden muss, was dem Ruf des Unternehmens erheblichen Schaden zufügen würde. Ermitteln Sie, welche Probleme für die Produktziele entscheidend sind.
  • Situationen oder Probleme, die zu anhaltenden Kundendienstbeschwerden führen würden.
  • End-to-End-Tests, die sich problemlos auf mehrere Funktionalitäten des Systems konzentrieren können.
  • Die optimale Testauswahl, die die Risikoabdeckung maximiert.
  • Welche Tests bieten das beste Verhältnis von Hochrisikoabdeckung zu Zeitaufwand?

Risikobasierte Testergebnisse, Berichte und Metriken

  1. Erstellung des Testberichts. Bei der Berichterstattung über den Teststatus geht es darum, die Testergebnisse den Projektbeteiligten effektiv zu vermitteln, ein klares Verständnis zu schaffen und den Vergleich der Testergebnisse mit den Testzielen aufzuzeigen.
    • Anzahl der geplanten versus der durchgeführten Testfälle.
    • Anzahl der bestandenen bzw. nicht bestandenen Testfälle.
    • Anzahl der festgestellten Mängel sowie deren Status und Schweregrad.
    • Anzahl der noch offenen kritischen Mängel.
    • Eventuelle Systemausfallzeiten.
    • Eventuelle Showstopper.
    • Testzusammenfassungsbericht und Testabdeckung berichten.
  2. Metrikvorbereitung. Eine Metrik ist eine Kombination aus zwei oder mehr Messgrößen, die zum Vergleich von Softwareprozessen, Projekten und Produkten verwendet werden.
    • Abweichungen beim Aufwand und Zeitplan.
    • Produktivität bei der Testfallvorbereitung.
    • Testdesignabdeckung.
    • Produktivität bei der Testfallausführung.
    • Risikoidentifizierungseffizienz in %.
    • Risikominderungseffizienz in %.
    • Testeffektivität in %.
    • Testausführungsabdeckung.
    • Produktivität bei der Testausführung.
    • Defektleckage in %.
    • Fehlererkennungseffizienz und Defektdichte.
    • Anforderungsstabilitätsindex.
    • Qualität hat ihren Preis.

Diese Maßnahmen werden dann gegen die Risiken abgewogen:

  • Analysieren Sie die Risiken in nicht-funktionalen Kategorien (Leistung, Zuverlässigkeit und Benutzerfreundlichkeit) auf der Grundlage des Fehlerstatus und der Anzahl der bestandenen oder nicht bestandenen Testergebnisse im Verhältnis zu den Risiken.
  • Analysieren Sie die Risiken in funktionalen Kategorien anhand von Testmetriken, Fehlerstatus und Testergebnis (bestanden/nicht bestanden) im Verhältnis zu den Risiken.
  • Identifizieren Sie wichtige Früh- und Spätindikatoren und erstellen Sie Frühwarnindikatoren.
  • Überwachung und Berichterstattung über Früh- und Spätrisikoindikatoren (Schlüsselrisikoindikatoren) durch Analyse der Datenmuster, Trends und Wechselwirkungen.

Bewertung des inhärenten Risikos im Vergleich zum Restrisiko

Die Identifizierung und Analyse von Risiken sollte auch inhärente Risiken, Restrisiken, Sekundärrisiken und wiederkehrende Risiken umfassen.

  • Inhärentes Risiko: Die Risiken, die vor der Implementierung der Kontroll- und Gegenmaßnahmen identifiziert wurden oder bereits im System vorhanden waren. Inhärente Risiken werden auch als Gesamtrisiken bezeichnet.
  • Restrisiko: Die Risiken, die nach der Umsetzung der Kontroll- und Reaktionsmaßnahmen verbleiben. Restrisiken werden als Nettorisiken bezeichnet.
  • Sekundäres Risiko: Das neue Risiko, das durch die Umsetzung des Risikomanagementplans entsteht.
  • Wiederkehrendes Risiko: Die Wahrscheinlichkeit, dass die ursprünglichen Risiken erneut auftreten.

Die auf Risiko basierende Messung der Testergebnisse hilft der Organisation, das verbleibende Qualitätsrisiko während der Testdurchführung zu ermitteln und fundierte Freigabeentscheidungen zu treffen.

Risikoprofilierung und Kundenfeedback

Die Risikoprofilierung ist ein Prozess zur Ermittlung des optimalen Anlagerisikos für den Kunden unter Berücksichtigung des erforderlichen Risikos, der Risikotragfähigkeit und der Risikotoleranz.

  1. Risiko erforderlich ist das Risikoniveau, das der Kunde eingehen muss, um eine zufriedenstellende Rendite zu erzielen.
  2. Risikotragfähigkeit ist das Maß an finanziellem Risiko, das der Kunde sich leisten kann einzugehen.
  3. Risikotoleranz ist das Risikoniveau, das der Kunde bereit ist einzugehen.

Kundenbewertung: Wir sammeln Kundenfeedback und Bewertungen, um unser Geschäft, unser Produkt, unseren Service und das Kundenerlebnis zu verbessern.

Vorteile risikobasierter Tests

Die Vorteile des risikobasierten Testens werden im Folgenden erläutert.

  • Verbesserte Produktivität und Kostenreduzierung.
  • Verbesserte Marktchancen (schnellere Markteinführung) und pünktliche Lieferung.
  • Verbesserte Serviceleistung.
  • Verbesserte Qualität, da alle kritischen Funktionen der Anwendung getestet werden.
  • Klare Informationen zur Testabdeckung. Mit diesem Ansatz weiß das Team, was getestet wurde und 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 Basis einer Risikoanalyse ermöglicht es der Organisation, das verbleibende Qualitätsrisiko während der Testdurchführung zu ermitteln und fundierte Freigabeentscheidungen zu treffen.
  • Optimierte Testverfahren mit klar definierten Risikobewertungsmethoden.
  • Verbesserte Kundenzufriedenheit dank Kundeneinbindung, guter Berichterstattung und Fortschrittskontrolle tracKönig.
  • Früherkennung potenzieller Problembereiche, damit wirksame Präventivmaßnahmen ergriffen werden können.
  • Die kontinuierliche Risikoüberwachung und -bewertung während des gesamten Projektlebenszyklus hilft dabei, Risiken zu identifizieren und zu beheben sowie Probleme anzugehen, die die Erreichung der Gesamtprojektziele gefährden könnten.

Häufig gestellte Fragen

Ein Produktrisiko ist ein Fehler, der den Nutzer erreichen kann, beispielsweise ein fehlerhafter Zahlungsprozess. Ein Projektrisiko gefährdet die Lieferung selbst – fehlende Kompetenzen, eine veraltete Umgebung oder instabile Anforderungen. Tests gehen Produktrisiken direkt, Projektrisiken hingegen nur indirekt an.

Die Risikobewertung wird zu einer kurzen, regelmäßigen Aktivität anstatt zu einem einmaligen Dokument. In jedem Sprint bewertet das Team die User Stories, die es entwickeln wird, neu, sodass das Risikoregister tracks den Backlog anstelle eines Releaseplans, der Monate zuvor erstellt wurde.

Die Bewertungen sind Schätzwerte, daher werden Risiken, die niemand bedacht hat, überhaupt nicht berücksichtigt. Niedrig bewertete Bereiche können sich zudem über mehrere Releases hinweg unbemerkt verschlechtern. Regelmäßige Erkundungssitzungen außerhalb des Registers sind die übliche Schutzmaßnahme gegen beide blinden Flecken.

Die alleinige Bewertung durch Tester tendiert zu einer stärkeren Fokussierung auf technische Risiken. Eine sinnvolle Testsitzung kombiniert die Einschätzungen eines Business-Analysten oder Product Owners (Auswirkungen), eines Entwicklers (Komplexität und Änderungshistorie) und eines Testers (Wahrscheinlichkeiten), wobei ein Support-Team zur Beilegung von Meinungsverschiedenheiten bereitsteht.

Maschinelle Lernmodelle bewerten Module anhand historischer Fehlerdaten, Codeänderungen, Komplexitätsmetriken und Änderungshäufigkeit, die aus der Versionskontrolle und dem Issue-Management-System stammen. tracKönig. Das Ergebnis ist eine vorläufige Rangliste, die noch von einem Menschen überprüft wird, da die geschäftlichen Auswirkungen im Repository nicht sichtbar sind.

GitHub-Copilot Aus einer Anforderungsbeschreibung kann das System Registerzeilen, Expositionsformeln und potenzielle Testziele entwerfen und Testfälle für die am besten bewerteten Elemente generieren. Die Wahrscheinlichkeits- und Schweregradbewertungen selbst bleiben jedoch menschliche Entscheidungen.

Regulierte Sektoren behalten das gleiche Bewertungsmodell bei, führen aber eine Dokumentation ein: Jedes Risiko, seine Begründung, die zugehörigen Tests und die Freigabe werden für die Prüfung aufbewahrt. Eine Herabstufung eines Risikos ist nur zulässig, wenn die Begründung dokumentiert ist.

Eine Neubewertung ist immer dann erforderlich, wenn sich ein Faktor ändert, der die Bewertung beeinflusst hat: eine neue Anforderung, eine größere Refaktorisierung, ein Produktionsvorfall oder ein Fehlercluster in einem Bereich mit niedriger Bewertung. In der Praxis führen Teams diese Überprüfungen zu Beginn jedes Sprints und erneut vor der Release-Entscheidung durch.

Fassen Sie diesen Beitrag mit folgenden Worten zusammen: