Wenn die Zeit vor einem Release zu kurz ist, um alles zu testen, und auf mit Testautomatisierung nicht mehr weiter gesenkt werden kann, hilft risikobasiertes Testen. Es stellt evidenzbasiert und gemessen sicher, dass wichtige Aspekte immer und zuerst getestet werden und macht das Restrisiko sichtbar.
4. www.software-quality-lab.com | improve your quality
Kosten für Qualität steigen mit der Zeit
Die Folge daraus:
- 4 -
[http://www.pixabay.com]
Steigende Komplexität
Hohe Qualitätserwartung
Steigender Aufwand / Kosten
5. www.software-quality-lab.com | improve your quality
Aufwand für Testen wird immer höher
Kosten für Qualität steigen mit der Zeit
- 5 -
Zeit
Notwendiger Aufwand für
Testen
Verfügbare Zeit
für Testen
Release
1.0
Release
2.0
Release
3.0
Release
4.0
Release
5.0
Aufwand
6. www.software-quality-lab.com | improve your quality
Testautomatisierung senkt Kosten nur zum Teil
Kosten für Qualität steigen mit der Zeit
- 6 -
Zeit
Verfügbare Zeit
für Testen
Release
1.0
Release
2.0
Release
3.0
Release
4.0
Release
5.0
mit Testautomatisierung
10-20% geringer
Aufwand
Notwendiger Aufwand für
Testen
7. www.software-quality-lab.com | improve your quality
Silver Bullet Testautomatisierung?
Kosten für Qualität steigen mit der Zeit
- 7 -
• Geringere Kosten bei wiederholter Ausführung
der Tests (ø nach 6-7 Iterationen)
• Deutlich höhere Qualität
• Hohe Kosten für die Erstellung der
automatisierten Tests
• Hohe Kosten für Wartung (30-50%)
10. www.software-quality-lab.com | improve your quality
Warum risikobasiert Testen
Risikobasiertes Testen
- 10 -
Wir wollen sicherstellen, dass trotz knapper Zeit das, was den
größten Schaden anrichten kann, auch sicher getestet wird.
11. www.software-quality-lab.com | improve your quality
Je höher das Risiko, desto intensiver testen
Risikobasiertes Testen
- 11 -
Wahrscheinlichkeit
Schaden
Could test
Won‘t test
Must test
Should test
hoch
hochgering
12. www.software-quality-lab.com | improve your quality
Grundsätzliche Vorgehensweise
Risikobasiertes Testen
- 12 -
Markt, Mitbewerb
System-
Anforderungen
Architektur-
komponenten
Fehler
(im Feld und intern)
Prozesse und
Menschen
1. Risiken
identifizieren
2. Testfälle
erstellen
3. Testfälle
durchführen
13. www.software-quality-lab.com | improve your quality
Nutzen durch Risikobasiertes Testen
Risikobasiertes Testen
Geringere Kosten bei der Testfallerstellung
Geringere Kosten bei der Testfallausführung
Klare Basis für Entscheidungen z.B. Freigabe eines Release
- 13 -
Zeit
Benötigte Zeit mit risikobasiertem Testen
Notwendiger Aufwand für
Testen
… mit Testautomatisierung
Rest-
Risiko!
Aufwand
Release
1.0
Release
2.0
Release
3.0
Release
4.0
Release
5.0
Verfügbare Zeit für Testen
14. www.software-quality-lab.com | improve your quality
Übersicht über das Restrisiko
Risikobasiertes Testen
- 14 -
0
100
200
300
400
500
1 - Minimal 2 - Merklich 3 - Hoch 4 - Kritisch
Anzahl Funktionen je Risikoklasse
Nicht getestet
Getestet
17. www.software-quality-lab.com | improve your quality
Anforderung Produkt Akzeptanzkriterien
Risiko-
klasse
Risiken
PDF-Viewer R7
- Anzeige PDF im Hochformat
- Speichern etc. deaktiviert
- Test-Applikation in R7 integrieren
2
Merklich
- PDF Datei wird nicht geladen
- Fehlerhafte Darstellung
- Lizenz ist abgelaufen
… … … … …
2. Bestehende Risiken analysieren
Umsetzung in ihrem Unternehmen
- 17 -
Risikoklasse Potenzieller Schaden
1 – Minimal
Kaum merkbare Auswirkung, Anwender ist kurz irritiert,
kann dies aber akzeptieren, z.B. optische Fehler im UI
2 – Merklich
Kunde ist unzufrieden, kann nur eingeschränkt
arbeiten, z.B. Nebenanwendungsfall nicht ausführbar
3 – Hoch
Ein Hauptanwendungsfall kann nicht bzw. nur
fehlerhaft ausgeführt werden
4 – Kritisch
Personenschaden oder durch die Medien gehender
Schadensfall, der zu hohem Imageverlust führt
18. www.software-quality-lab.com | improve your quality
3. Bestehende Testfälle klassifizieren
Umsetzung in ihrem Unternehmen
- 18 -
Testfall Ablauf Ergebnis (Soll) Risikoklasse
PDF File von
USB-Stick laden
PDF Viewer öffnen und ein PDF
auf dem USB-Stick auswählen.
Der Vorschau Screen wird angezeigt.
Direkt nach dem Auswählen des PDFs
werden die Pfeil Buttons zum Blättern und
der "grüne Haken Button" zum Bestätigen
eingeblendet.
3
Hoch
Auswahl PDF File Mittels Pfeiltasten oder
Direktauswahl via Touch zwischen
Files wechseln.
Mit Pfeiltasten oder der Direktauswahl via
Touch kann gewünschtes PDF ausgewählt
werden. "Ringsum" Blättern ist möglich.
1
Minimal
Ungültiges .pdf
File laden
Beliebiges File in .pdf
umbenennen und auf USB Stick
laden. Anschliessend PDF Viewer
öffnen und das File laden.
Es wird die Meldung "Fehler beim Laden"
angezeigt.
2
Merklich
19. www.software-quality-lab.com | improve your quality
4. Nur mehr risikorelevante Tests durchführen
Umsetzung in ihrem Unternehmen
- 19 -
Testfall Ablauf Ergebnis (Soll) Risikoklasse
PDF File von
USB-Stick laden
PDF Viewer öffnen und ein PDF
auf dem USB-Stick auswählen.
Der Vorschau Screen wird angezeigt.
Direkt nach dem Auswählen des PDFs
werden die Pfeil Buttons zum Blättern und
der "grüne Haken Button" zum Bestätigen
eingeblendet.
3
Hoch
Auswahl PDF File Mittels Pfeiltasten oder
Direktauswahl via Touch zwischen
Files wechseln.
Mit Pfeiltasten oder der Direktauswahl via
Touch kann gewünschtes PDF ausgewählt
werden. "Ringsum" Blättern ist möglich.
1
Minimal
Ungültiges .pdf
File laden
Beliebiges File in .pdf
umbenennen und auf USB Stick
laden. Anschliessend PDF Viewer
öffnen und das File laden.
Es wird die Meldung "Fehler beim Laden"
angezeigt.
2
Merklich
20. www.software-quality-lab.com | improve your quality
5. Restrisiko für Releaseentscheidung messen
Umsetzung in ihrem Unternehmen
- 20 -
0
100
200
300
400
500
1 - Minimal 2 - Merklich 3 - Hoch 4 - Kritisch
Anzahl Funktionen je Risikoklasse
Nicht getestet
Getestet
22. www.software-quality-lab.com | improve your quality
Zusammenfassung
Risikobasiertes Testen
Was, wie intensiv getestet wird, richtet sich nach Risiko
Teile mit hohem Risiko werden immer und zuerst getestet
Geringere Kosten bei Testfallerstellung,
da nur Testfälle für wichtige Sachen erstellt werden
Höhere Effizienz bei Testfallausführung,
da nur Testfälle ausgeführt werden, die wesentliche Risiken abdecken
Klare Basis für Entscheidungen,
da das abgedeckte und das Restrisiko jederzeit bekannt ist
- 22 -
Schauen wir uns an, wie sich Testen und Qualität auf hoher Ebene momentan darstellt:
Unsere SW wird immer komplexer
Mehr Funktionen, SW in immer mehr Produkten
Gleichzeitig ist die erwarten Kunden und Anwender höchste Qualität
Die Folge: Die Kosten für Testen und QS steigen mit der ZeitANIMATION (Kostending erscheint)
Schauen wir uns das im Projektverlauf an:
ANIMATION: Rote Linie kommt rein
Verfügbare Zeit für Testen bleibt konstant
Aufgrund steigender Kompexlität der Software steigt der Testautfwand.
Mehr Funktionen Mehr Tests
Irgendwann kommt der Punkt, wo mehr Zeit benötigt wird, als da ist
Was tun?
1. Idee: Automatisieren: Macht den Aufwand nur zT geringer. Erhöht vor allem die Qualität
Erfahrung aus Großprojekt SWQL
Neue Testfälle 62%
Wartung 38%
Wir brauchen eine Maßnahme, die die Kosten der Testdurchführung steuerbar macht
Eine Methode, mit der wir Qualität und Kosten besser ausbalancieren können.
Sowohl für automatisierte, als auch für manuelle Tests
Achtung! In den nicht-getesteten Teilen verbirgt sich ein Rest-Risiko!!
Auch risikobasiertes Testen hat eine Grenze, nämlich, wenn in der verfügbaren Zeit nicht einmal mehr die wichtigsten Sachen abgetestet werden können
Hier kann man dann gut Release-Freigabe-Kriterien darauf aufbauen
„Alle kritischen und hohen müssen abgetestet sein“
Ist nur erster Schritt hin zu ausgeklügelter Risikoanalyse mit Wsk, Entdeckungswahrscheinlichkeit etc. im ersten Schritt reicht eine einfache Klassifizierung
Gut definierte Risikoklassen sind einer der Haupterfolgsfaktoren!