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
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.
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
- Analysieren Sie die Anforderungen.
- Dokumente (SRS, FRS, Usecases) werden รผberprรผft. Diese Aktivitรคt wird durchgefรผhrt, um Fehler und Unklarheiten zu finden und zu beseitigen.
- 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.
- 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.
- Identifizieren Sie die Ausfallwahrscheinlichkeit und Hochrisikobereiche. Dies kann mithilfe einer Risikobewertungsmatrix erfolgen.
- 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.
- In dieser Phase muss eine Risikoprofilierung durchgefรผhrt werden, um die Risikokapazitรคt und die Risikotoleranzniveaus zu verstehen.
- Priorisieren Sie die Anforderungen anhand der Bewertung.
- Ein risikobasierter Testprozess ist definiert
- 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.
- Zur Analyse der Datenqualitรคt wird eine Risikodatenqualitรคtsbewertung durchgefรผhrt.
- Planen und definieren Sie den Test entsprechend der Bewertung
- 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.
- 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.
- Testfรคlle sind auรerdem so konzipiert, dass sie mehrere Funktionalitรคten und End-to-End-Geschรคftsszenarien abdecken.
- Bereiten Sie Testdaten und Testbedingungen sowie einen Prรผfstand vor.
- RevSehen Sie sich die Testplรคne, Teststrategien, Testfรคlle, Testberichte oder andere vom Testteam erstellte Dokumente an.
- Peer-Review ist ein wichtiger Schritt bei der Fehlererkennung und Risikominderung.
- Fรผhren Sie Probelรคufe und Qualitรคtsprรผfungen der Ergebnisse durch
- Testfรคlle werden entsprechend der Prioritรคt des Risikoelements ausgefรผhrt.
- 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.
- Risikobasiertes Testen kann auf jeder Testebene eingesetzt werden, z. B. bei Komponenten-, Integrations-, System- und Abnahmetests
- 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.
- Bewertung der Ausstiegskriterien. Alle Hochrisikobereiche vollstรคndig getestet, es verbleiben nur noch geringe Restrisiken.
- Risikobasierte Testergebnisberichterstattung und Metrikanalyse.
- Bewerten Sie bestehende Risikoereignisse und neue Risikoereignisse basierend auf wichtigen Risikoindikatoren neu.
- Aktualisierung des Risikoregisters.
- Notfallplรคne โ Dies dient als Rรผckfallplan/Notfallplan fรผr hohe Expositionsrisiken.
- Fehleranalyse und Fehlerprรคvention zur Beseitigung der Mรคngel.
- Wiederholungstests und Regressionstests zur Validierung der Fehlerbehebungen auf der Grundlage vorberechneter Risikoanalysen und Hochrisikobereiche sollten am intensivsten abgedeckt werden.
- Risikobasierte Automatisierungstests (sofern mรถglich)
- Berechnung des Restrisikos
- Risikoรผberwachung und -kontrolle
- 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.
- Neubewertung des Risikoprofils und Kundenfeedback.
Risikobasierter Testansatz fรผr den Systemtest
- Technischer Systemtest โDies wird als Umgebungstest und Integrationstest bezeichnet. Umgebungstests umfassen Tests in der Entwicklungs-, Test- und Produktionsumgebung.
- 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.
- 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
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
- Risiko-Einschรคtzung
- Risikoanalyse
- Risiko-Reaktion
- Testumfang
- Testprozessdefinition
- 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.
- 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.
- Bei der Berechnung der Testeffektivitรคtsbewertung werden Dokumentabhรคngigkeiten, Anforderungen, Kosten, Zeitbedarf fรผr Softwaretests usw. berรผcksichtigt.
- 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.
- Nachdem der Testumfang festgelegt wurde, mรผssen die Testziele, Annahmen und Abhรคngigkeiten fรผr jede Testphase im Standardformat zusammengestellt werden.
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.
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
- 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.
- 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.
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
Fรผr die verschiedenen Testphasen kรถnnen generische Testziele definiert werden
- Komponententest
- Integrationstests
- Systemtest
- Abnahmetests
Betrachten wir die Systemtestphase
- G4 und G5 zeigen, dass das System die funktionalen (F1, F2, F3) und nichtfunktionalen Anforderungen (N1, N2) erfรผllt.
- 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
- 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.
- 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.
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
- 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
- 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
- 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.
- Analysieren Sie die Risiken in funktionalen Kategorien wie Tests, Fehlerstatus und Testbestanden/nicht bestanden, basierend auf ihrer Beziehung zu Risiken.
- Identifizieren Sie wichtige Lead- und Lag-Indikatoren und erstellen Sie Frรผhwarnindikatoren
- ร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.
- Das erforderliche Risiko ist das Risikoniveau, das der Kunde eingehen muss, um eine zufriedenstellende Rendite zu erzielen
- Unter Risikofรคhigkeit versteht man die Hรถhe des finanziellen Risikos, das der Kunde eingehen kann
- 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.













