SlideShare a Scribd company logo
1 of 45
Testowanie na podstawie ryzyka, wersja 4 – Bogdan Bereza – bogdan.bereza@victo.eu 1 (45)
2015
Testowanie na podstawie ryzyka
Bogdan Bereza
bogdan.bereza@victo.eu
Testowanie na podstawie ryzyka, wersja 4 – Bogdan Bereza – bogdan.bereza@victo.eu 2 (45)
Testowanie na podstawie ryzyka, wersja 4 – Bogdan Bereza – bogdan.bereza@victo.eu 3 (45)
1. Co to
znaczy?
2. W
praktyce
3. Lampki
Testowanie na podstawie ryzyka, wersja 4 – Bogdan Bereza – bogdan.bereza@victo.eu 4 (45)
Testowanie na podstawie
ryzyka - co to znaczy?
2. W
praktyce
3. Lampki
Testowanie na podstawie ryzyka, wersja 4 – Bogdan Bereza – bogdan.bereza@victo.eu 5 (45)
Bez testowania
Solidne testowanie
Czemu tak?
Testowanie na podstawie ryzyka, wersja 4 – Bogdan Bereza – bogdan.bereza@victo.eu 6 (45)
Duże
Małe
PRAWDOPODOBIEŃSTWO
ZAGROŻENIE
Niskie Wysokie
Obszerna kontrola
Sporadyczna kontrola
Bo tak:
Testowanie na podstawie ryzyka, wersja 4 – Bogdan Bereza – bogdan.bereza@victo.eu 7 (45)
Wymagana
intensywność i
dokładność
testów
Prawdopodobieństwo
defektów
Profil
użycia
Prawdopodobieństwo
awarii
Koszty
(skutki)
awarii
Ryzyko awarii
Skuteczność testów w
zmniejszaniu
prawdopodobieństwa
awarii
Testowanie na podstawie ryzyka, wersja 4 – Bogdan Bereza – bogdan.bereza@victo.eu 8 (45)
Wymagana
intensywność i
dokładność
testów
Ryzyko awarii
Skuteczność testów w
zmniejszaniu
prawdopodobieństwa
awarii
Prawdopodobieństwo
awarii
Koszty
(skutki)
awarii
Prawdopodobieństwo
defektów
Profil
użycia
Testowanie na podstawie ryzyka, wersja 4 – Bogdan Bereza – bogdan.bereza@victo.eu 9 (45)
Prawdopodobieństwo
awarii
Złożoność
oprogramowania
Prawdopodobieństwo
defektu
Profil
użytkowania
Wielkość
oprogramowania
Znajomość
technologii?
Wcześniejsze
testowanie?
Jakość
wymagań Dojrzałość
procesu
Znajomość
procesu
Psychologia
jednostki
Dynamika
grupowa
Kultura
organizacji
Doświadczenie
Częstość
wykonywania
Zmienność
zastosowania
Odsetek
użytkowników o
danym profilu
Kontekst
(scenariusz)
zastosowania
Testowanie na podstawie ryzyka, wersja 4 – Bogdan Bereza – bogdan.bereza@victo.eu 10 (45)
Wielkość oprogramowania
Testowanie na podstawie ryzyka, wersja 4 – Bogdan Bereza – bogdan.bereza@victo.eu 11 (45)
Złożoność oprogramowania
Testowanie na podstawie ryzyka, wersja 4 – Bogdan Bereza – bogdan.bereza@victo.eu 12 (45)
Znajomość dziedziny i technologiiZnajomość dziedziny i technologiiZnajomość dziedziny i technologii
blogomocja.blogspot.com/2015/01/gimbaza-testerow.html
Testowanie na podstawie ryzyka, wersja 4 – Bogdan Bereza – bogdan.bereza@victo.eu 13 (45)
Wcześniejsze testowanie
Rozsądne
wymagania 
Sprawdzony kod 
Testy systemowe 
Testowanie na podstawie ryzyka, wersja 4 – Bogdan Bereza – bogdan.bereza@victo.eu 14 (45)
Jakość wymagań (i innych działań QA)
Niezależnie do tego, czy
działamy iteracyjnie, czy
sekwencyjnie
Testowanie na podstawie ryzyka, wersja 4 – Bogdan Bereza – bogdan.bereza@victo.eu 15 (45)
co tester powinien pamiętać o północy?
when helping
doesn't help
= gdy zamiast QA mamy
tylko QC,
prawdopodobieństwo
rośnie i trzeba więcej
testów
Testowanie na podstawie ryzyka, wersja 4 – Bogdan Bereza – bogdan.bereza@victo.eu 16 (45)
Dynamika grupowa  Z początku trudno ocenić, jak to
działa, ale do tego po jednym -
dwóch sprintach posłużyć może
dobra retrospektywa
Testowanie na podstawie ryzyka, wersja 4 – Bogdan Bereza – bogdan.bereza@victo.eu 17 (45)
Kultura organizacji
Zorientowanienazewnątrz
Zorientowaniedowewnątrz
Swoboda działania
Nadzór
Kultura klanowa Adhokracja
Kultura hierarchiczna Kultura rynkowa
Testowanie na podstawie ryzyka, wersja 4 – Bogdan Bereza – bogdan.bereza@victo.eu 18 (45)
Proces
Testowanie na podstawie ryzyka, wersja 4 – Bogdan Bereza – bogdan.bereza@victo.eu 19 (45)
Psychologia jednostki
Ale nie polecam,
z’eby próbować’ to
precyzyjnie obliczac’!

Testowanie na podstawie ryzyka, wersja 4 – Bogdan Bereza – bogdan.bereza@victo.eu 20 (45)
Profil użytkowania… no, warto znać 
Częstość
wykonywania
Zmienność
zastosowaniaOdsetek
użytkowników o
danym profilu
Kontekst
(scenariusz)
zastosowania
Testowanie na podstawie ryzyka, wersja 4 – Bogdan Bereza – bogdan.bereza@victo.eu 21 (45)
Wymagana
intensywność i
dokładność
testów
Ryzyko awarii
Skuteczność testów w
zmniejszaniu
prawdopodobieństwa
awarii
Prawdopodobieństwo
awarii
Koszty
(skutki)
awarii
Prawdopodobieństwo
defektów
Profil
użycia
Testowanie na podstawie ryzyka, wersja 4 – Bogdan Bereza – bogdan.bereza@victo.eu 22 (45)
Koszty awarii (po wdrożeniu i przed)
•Koszty bezpośrednie (i przed, i po)
•Debugowanie
•Usuwanie
•Koszty pośrednie (po wdrożeniu)
•Działania ograniczające skutki
•Odszkodowania
•Zła sława
Testowanie na podstawie ryzyka, wersja 4 – Bogdan Bereza – bogdan.bereza@victo.eu 23 (45)
Dokładniej, dwie krzywe
Koszt naprawy i koszt wykrycia
Testowanie na podstawie ryzyka, wersja 4 – Bogdan Bereza – bogdan.bereza@victo.eu 24 (45)
Na ile
to
działa
?


kanomodel.com
Testowanie na podstawie ryzyka, wersja 4 – Bogdan Bereza – bogdan.bereza@victo.eu 25 (45)
Radosław Hofman „Software Quality Perception”
„wpadka” „wkręcić”
„obciach” „żenada”
Testowanie na podstawie ryzyka, wersja 4 – Bogdan Bereza – bogdan.bereza@victo.eu 26 (45)
satisfice.com/tools/htsm.pdf
Testowanie na podstawie ryzyka, wersja 4 – Bogdan Bereza – bogdan.bereza@victo.eu 27 (45)
Wymagana
intensywność i
dokładność
testów
Ryzyko awarii
Skuteczność testów w
zmniejszaniu
prawdopodobieństwa
awarii
Prawdopodobieństwo
awarii
Koszty
(skutki)
awarii
Prawdopodobieństwo
defektów
Profil
użycia
Testowanie na podstawie ryzyka, wersja 4 – Bogdan Bereza – bogdan.bereza@victo.eu 28 (45)
Przetestować!
Nie, lepiej
sprawdzić…
Testowanie na podstawie ryzyka, wersja 4 – Bogdan Bereza – bogdan.bereza@victo.eu 29 (45)
Testowanie na
podstawie
ryzyka w
praktyce
3. Lampki
1. Co to
znaczy?
Testowanie na podstawie ryzyka, wersja 4 – Bogdan Bereza – bogdan.bereza@victo.eu 30 (45)
Prawdopodobieństwo
Konsekwencje
Macierz ryzyka dla wymagań Tak, tylko dwa-trzy
poziomy – tego
zwykle nie da się
oszacować
dokładniej!
Testowanie na podstawie ryzyka, wersja 4 – Bogdan Bereza – bogdan.bereza@victo.eu 31 (45)
Prawdopodobieństwo
Konsekwencje
Klasyfikowanie wymagań
Testowanie na podstawie ryzyka, wersja 4 – Bogdan Bereza – bogdan.bereza@victo.eu 32 (45)
Prawdopodobieństwo
Konsekwencje
Testy
techniczne
Testy
biznesowe
Ile testować? „Testować więcej” i „testować nie tak dużo”, to
heurystyka – algorytmu na to nie ma i nie
będzie!
Testowanie na podstawie ryzyka, wersja 4 – Bogdan Bereza – bogdan.bereza@victo.eu 33 (45)
Testy akceptacyjne i
trochę
eksploracyjnych
Testy akceptacyjne i
eksploracyjne +
testy jednostkowe
Testy akceptacyjne, na
podstawie modeli oraz
eksploracyjne
Testy akceptacyjne, na
podstawie modeli oraz
eksploracyjne plus
jednostkowe i inne białej
skrzynki
Prawdopodobieństwo
Konsekwencje
Na przykład (tylko na przykład!)
Testowanie na podstawie ryzyka, wersja 4 – Bogdan Bereza – bogdan.bereza@victo.eu 34 (45)
Przykład: poziomy DO-178B
A. Katastrofa – 100% pokrycia zmodyfikowanych
warunków decyzji (MC/DC)
B. Śmierć pasażerów – 100% pokrycia decyzji
C. Obrażenia pasażerów – 100% pokrycia
instrukcji
D. Np. zmiana planu lotu – brak wymagań
E. Np. awaria systemu rozrywki – brak wymagań
Testowanie na podstawie ryzyka, wersja 4 – Bogdan Bereza – bogdan.bereza@victo.eu 35 (45)
Próba obliczeń?
• Zwiększenie pokrycia testami diagramu
przejść stanów z 1-przełączeń do 2-
przełączeń zmniejsza prawdopodobieństwo
awarii o 15%
• Pracochłonność zaprojektowania i wykonania
tych dodatkowych testów to 5 osobodni,
czego koszt jest 5.000 zł 
• Koszt awarii wynosi 50.000 zł, a 15% z
50.000 to 7.500 zł – opłaca się testować 
• A może warto jednak zaryzykować?
Ha, ha! Zupełny brak danych!
Raczej brak danych…
Testowanie na podstawie ryzyka, wersja 4 – Bogdan Bereza – bogdan.bereza@victo.eu 36 (45)
Wybór
strategii ryzyka
Testowanie na podstawie ryzyka, wersja 4 – Bogdan Bereza – bogdan.bereza@victo.eu 37 (45)
Podsumowanie
• Testowanie na podstawie ryzyka,
to nie algorytm, lecz heurystyka
• Jakość oszacowań zwiększa się wraz ze
znajomością specyfiki branży, organizacji oraz
technologii
• Opłaca się ją jednak stosować, aby próbować
trafniej szacować pracochłonność testów
• Nie zastępuje projektowania testów!
Testowanie na podstawie ryzyka, wersja 4 – Bogdan Bereza – bogdan.bereza@victo.eu 38 (45)
2. W
praktyce
Metoda:
lampki
1. Co to
znaczy?
Testowanie na podstawie ryzyka, wersja 4 – Bogdan Bereza – bogdan.bereza@victo.eu 39 (45)Zamiast biegania i pytania „czy można już skończyć testowanie?”
Czas(wersje)
Wielkość koła = konsekwencja ryzyka, kolor = status (malejące prawdopodobieństwo)
Raportowanie statusu
Testowanie na podstawie ryzyka, wersja 4 – Bogdan Bereza – bogdan.bereza@victo.eu 40 (45)
Oczywiście, że jak w Scrumie…
… jeśli tylko DoD jest dobre zdefiniowane 
Testowanie na podstawie ryzyka, wersja 4 – Bogdan Bereza – bogdan.bereza@victo.eu 41 (45)
1. Co to znaczy?
2. W praktyce 3. Lampki
Uff, skończyliśmy 
Testowanie na podstawie ryzyka, wersja 4 – Bogdan Bereza – bogdan.bereza@victo.eu 42 (45)
wymagania.org.pl
kontakt@wymagania.org.pl
Testowanie na podstawie ryzyka, wersja 4 – Bogdan Bereza – bogdan.bereza@victo.eu 43 (45)
Dobrze się bawiliśmy!
Testowanie na podstawie ryzyka, wersja 4 – Bogdan Bereza – bogdan.bereza@victo.eu 44 (45)
2015
Testowanie na podstawie ryzyka
Bogdan Bereza
bogdan.bereza@victo.eu
Testowanie na podstawie ryzyka, wersja 4 – Bogdan Bereza – bogdan.bereza@victo.eu 45 (45)

More Related Content

More from Future Processing

[Quality Meetup #19] Adrian Gonciarz - Testerska ruletka
[Quality Meetup #19] Adrian Gonciarz - Testerska ruletka[Quality Meetup #19] Adrian Gonciarz - Testerska ruletka
[Quality Meetup #19] Adrian Gonciarz - Testerska ruletkaFuture Processing
 
[FDD 2018] Krzysztof Sikora - Jak Service Fabric rozwiąże twoje problemy z mi...
[FDD 2018] Krzysztof Sikora - Jak Service Fabric rozwiąże twoje problemy z mi...[FDD 2018] Krzysztof Sikora - Jak Service Fabric rozwiąże twoje problemy z mi...
[FDD 2018] Krzysztof Sikora - Jak Service Fabric rozwiąże twoje problemy z mi...Future Processing
 
[FDD 2018] Ł. Turchan, A. Hulist, M. Duchnowski - CUDA - results over coffee ...
[FDD 2018] Ł. Turchan, A. Hulist, M. Duchnowski - CUDA - results over coffee ...[FDD 2018] Ł. Turchan, A. Hulist, M. Duchnowski - CUDA - results over coffee ...
[FDD 2018] Ł. Turchan, A. Hulist, M. Duchnowski - CUDA - results over coffee ...Future Processing
 
[FDD 2018] Lech Kalinowski - Prywatny Blockchain
[FDD 2018] Lech Kalinowski - Prywatny Blockchain[FDD 2018] Lech Kalinowski - Prywatny Blockchain
[FDD 2018] Lech Kalinowski - Prywatny BlockchainFuture Processing
 
[FDD 2018] W. Malara, K. Kotowski - Autoenkodery – czyli zalety funkcji F(X)≈X
[FDD 2018] W. Malara, K. Kotowski - Autoenkodery – czyli zalety funkcji F(X)≈X[FDD 2018] W. Malara, K. Kotowski - Autoenkodery – czyli zalety funkcji F(X)≈X
[FDD 2018] W. Malara, K. Kotowski - Autoenkodery – czyli zalety funkcji F(X)≈XFuture Processing
 
[FDD 2018] Jarosław Ogiegło - Ludzie, zabezpieczajcie się! Wprowadzenie do OA...
[FDD 2018] Jarosław Ogiegło - Ludzie, zabezpieczajcie się! Wprowadzenie do OA...[FDD 2018] Jarosław Ogiegło - Ludzie, zabezpieczajcie się! Wprowadzenie do OA...
[FDD 2018] Jarosław Ogiegło - Ludzie, zabezpieczajcie się! Wprowadzenie do OA...Future Processing
 
[JuraSIC! Meetup] Krzysztof Sikora- Jak Service Fabric rozwiąże twoje problem...
[JuraSIC! Meetup] Krzysztof Sikora- Jak Service Fabric rozwiąże twoje problem...[JuraSIC! Meetup] Krzysztof Sikora- Jak Service Fabric rozwiąże twoje problem...
[JuraSIC! Meetup] Krzysztof Sikora- Jak Service Fabric rozwiąże twoje problem...Future Processing
 
[JuraSIC! Meetup] Mateusz Stasch - Monady w .NET
[JuraSIC! Meetup] Mateusz Stasch - Monady w .NET[JuraSIC! Meetup] Mateusz Stasch - Monady w .NET
[JuraSIC! Meetup] Mateusz Stasch - Monady w .NETFuture Processing
 
[QE 2018] Aleksandra Kornecka – Kognitywne podejście do testowania aplikacji ...
[QE 2018] Aleksandra Kornecka – Kognitywne podejście do testowania aplikacji ...[QE 2018] Aleksandra Kornecka – Kognitywne podejście do testowania aplikacji ...
[QE 2018] Aleksandra Kornecka – Kognitywne podejście do testowania aplikacji ...Future Processing
 
[QE 2018] Adam Stasiak – Nadchodzi React Native – czyli o testowaniu mobilnyc...
[QE 2018] Adam Stasiak – Nadchodzi React Native – czyli o testowaniu mobilnyc...[QE 2018] Adam Stasiak – Nadchodzi React Native – czyli o testowaniu mobilnyc...
[QE 2018] Adam Stasiak – Nadchodzi React Native – czyli o testowaniu mobilnyc...Future Processing
 
[QE 2018] Łukasz Gawron – Testing Batch and Streaming Spark Applications
[QE 2018] Łukasz Gawron – Testing Batch and Streaming Spark Applications[QE 2018] Łukasz Gawron – Testing Batch and Streaming Spark Applications
[QE 2018] Łukasz Gawron – Testing Batch and Streaming Spark ApplicationsFuture Processing
 
[QE 2018] Marek Puchalski – Web Application Security Test Automation
[QE 2018] Marek Puchalski – Web Application Security Test Automation[QE 2018] Marek Puchalski – Web Application Security Test Automation
[QE 2018] Marek Puchalski – Web Application Security Test AutomationFuture Processing
 
[QE 2018] Rob Lambert – How to Thrive as a Software Tester
[QE 2018] Rob Lambert – How to Thrive as a Software Tester[QE 2018] Rob Lambert – How to Thrive as a Software Tester
[QE 2018] Rob Lambert – How to Thrive as a Software TesterFuture Processing
 
[QE 2018] Paul Gerrard – Automating Assurance: Tools, Collaboration and DevOps
[QE 2018] Paul Gerrard – Automating Assurance: Tools, Collaboration and DevOps[QE 2018] Paul Gerrard – Automating Assurance: Tools, Collaboration and DevOps
[QE 2018] Paul Gerrard – Automating Assurance: Tools, Collaboration and DevOpsFuture Processing
 
[QE 2018] Arnika Hryszko – Testy, które tworzą się same (prawie)
[QE 2018] Arnika Hryszko – Testy, które tworzą się same (prawie)[QE 2018] Arnika Hryszko – Testy, które tworzą się same (prawie)
[QE 2018] Arnika Hryszko – Testy, które tworzą się same (prawie)Future Processing
 
[QE 2018] Przemysław Sech – Software Quality Assistance w 40 minut
[QE 2018] Przemysław Sech – Software Quality Assistance w 40 minut[QE 2018] Przemysław Sech – Software Quality Assistance w 40 minut
[QE 2018] Przemysław Sech – Software Quality Assistance w 40 minutFuture Processing
 
[QE 2018] Joanna Falkowska – Uniwersal Design – wprowadzenie do tematu dostęp...
[QE 2018] Joanna Falkowska – Uniwersal Design – wprowadzenie do tematu dostęp...[QE 2018] Joanna Falkowska – Uniwersal Design – wprowadzenie do tematu dostęp...
[QE 2018] Joanna Falkowska – Uniwersal Design – wprowadzenie do tematu dostęp...Future Processing
 
[Quality Meetup] M. Witas, D. Młynek – Tabnabbing – bug czy feature twojej pr...
[Quality Meetup] M. Witas, D. Młynek – Tabnabbing – bug czy feature twojej pr...[Quality Meetup] M. Witas, D. Młynek – Tabnabbing – bug czy feature twojej pr...
[Quality Meetup] M. Witas, D. Młynek – Tabnabbing – bug czy feature twojej pr...Future Processing
 
[Quality Meetup] Jacek Sowiński – SecDevOps – w codziennej pracy każdego deve...
[Quality Meetup] Jacek Sowiński – SecDevOps – w codziennej pracy każdego deve...[Quality Meetup] Jacek Sowiński – SecDevOps – w codziennej pracy każdego deve...
[Quality Meetup] Jacek Sowiński – SecDevOps – w codziennej pracy każdego deve...Future Processing
 
[Quality Meetup] Przemek Podsiadlik - Scenariusze BDD != testy automatyczne
[Quality Meetup] Przemek Podsiadlik - Scenariusze BDD != testy automatyczne[Quality Meetup] Przemek Podsiadlik - Scenariusze BDD != testy automatyczne
[Quality Meetup] Przemek Podsiadlik - Scenariusze BDD != testy automatyczneFuture Processing
 

More from Future Processing (20)

[Quality Meetup #19] Adrian Gonciarz - Testerska ruletka
[Quality Meetup #19] Adrian Gonciarz - Testerska ruletka[Quality Meetup #19] Adrian Gonciarz - Testerska ruletka
[Quality Meetup #19] Adrian Gonciarz - Testerska ruletka
 
[FDD 2018] Krzysztof Sikora - Jak Service Fabric rozwiąże twoje problemy z mi...
[FDD 2018] Krzysztof Sikora - Jak Service Fabric rozwiąże twoje problemy z mi...[FDD 2018] Krzysztof Sikora - Jak Service Fabric rozwiąże twoje problemy z mi...
[FDD 2018] Krzysztof Sikora - Jak Service Fabric rozwiąże twoje problemy z mi...
 
[FDD 2018] Ł. Turchan, A. Hulist, M. Duchnowski - CUDA - results over coffee ...
[FDD 2018] Ł. Turchan, A. Hulist, M. Duchnowski - CUDA - results over coffee ...[FDD 2018] Ł. Turchan, A. Hulist, M. Duchnowski - CUDA - results over coffee ...
[FDD 2018] Ł. Turchan, A. Hulist, M. Duchnowski - CUDA - results over coffee ...
 
[FDD 2018] Lech Kalinowski - Prywatny Blockchain
[FDD 2018] Lech Kalinowski - Prywatny Blockchain[FDD 2018] Lech Kalinowski - Prywatny Blockchain
[FDD 2018] Lech Kalinowski - Prywatny Blockchain
 
[FDD 2018] W. Malara, K. Kotowski - Autoenkodery – czyli zalety funkcji F(X)≈X
[FDD 2018] W. Malara, K. Kotowski - Autoenkodery – czyli zalety funkcji F(X)≈X[FDD 2018] W. Malara, K. Kotowski - Autoenkodery – czyli zalety funkcji F(X)≈X
[FDD 2018] W. Malara, K. Kotowski - Autoenkodery – czyli zalety funkcji F(X)≈X
 
[FDD 2018] Jarosław Ogiegło - Ludzie, zabezpieczajcie się! Wprowadzenie do OA...
[FDD 2018] Jarosław Ogiegło - Ludzie, zabezpieczajcie się! Wprowadzenie do OA...[FDD 2018] Jarosław Ogiegło - Ludzie, zabezpieczajcie się! Wprowadzenie do OA...
[FDD 2018] Jarosław Ogiegło - Ludzie, zabezpieczajcie się! Wprowadzenie do OA...
 
[JuraSIC! Meetup] Krzysztof Sikora- Jak Service Fabric rozwiąże twoje problem...
[JuraSIC! Meetup] Krzysztof Sikora- Jak Service Fabric rozwiąże twoje problem...[JuraSIC! Meetup] Krzysztof Sikora- Jak Service Fabric rozwiąże twoje problem...
[JuraSIC! Meetup] Krzysztof Sikora- Jak Service Fabric rozwiąże twoje problem...
 
[JuraSIC! Meetup] Mateusz Stasch - Monady w .NET
[JuraSIC! Meetup] Mateusz Stasch - Monady w .NET[JuraSIC! Meetup] Mateusz Stasch - Monady w .NET
[JuraSIC! Meetup] Mateusz Stasch - Monady w .NET
 
[QE 2018] Aleksandra Kornecka – Kognitywne podejście do testowania aplikacji ...
[QE 2018] Aleksandra Kornecka – Kognitywne podejście do testowania aplikacji ...[QE 2018] Aleksandra Kornecka – Kognitywne podejście do testowania aplikacji ...
[QE 2018] Aleksandra Kornecka – Kognitywne podejście do testowania aplikacji ...
 
[QE 2018] Adam Stasiak – Nadchodzi React Native – czyli o testowaniu mobilnyc...
[QE 2018] Adam Stasiak – Nadchodzi React Native – czyli o testowaniu mobilnyc...[QE 2018] Adam Stasiak – Nadchodzi React Native – czyli o testowaniu mobilnyc...
[QE 2018] Adam Stasiak – Nadchodzi React Native – czyli o testowaniu mobilnyc...
 
[QE 2018] Łukasz Gawron – Testing Batch and Streaming Spark Applications
[QE 2018] Łukasz Gawron – Testing Batch and Streaming Spark Applications[QE 2018] Łukasz Gawron – Testing Batch and Streaming Spark Applications
[QE 2018] Łukasz Gawron – Testing Batch and Streaming Spark Applications
 
[QE 2018] Marek Puchalski – Web Application Security Test Automation
[QE 2018] Marek Puchalski – Web Application Security Test Automation[QE 2018] Marek Puchalski – Web Application Security Test Automation
[QE 2018] Marek Puchalski – Web Application Security Test Automation
 
[QE 2018] Rob Lambert – How to Thrive as a Software Tester
[QE 2018] Rob Lambert – How to Thrive as a Software Tester[QE 2018] Rob Lambert – How to Thrive as a Software Tester
[QE 2018] Rob Lambert – How to Thrive as a Software Tester
 
[QE 2018] Paul Gerrard – Automating Assurance: Tools, Collaboration and DevOps
[QE 2018] Paul Gerrard – Automating Assurance: Tools, Collaboration and DevOps[QE 2018] Paul Gerrard – Automating Assurance: Tools, Collaboration and DevOps
[QE 2018] Paul Gerrard – Automating Assurance: Tools, Collaboration and DevOps
 
[QE 2018] Arnika Hryszko – Testy, które tworzą się same (prawie)
[QE 2018] Arnika Hryszko – Testy, które tworzą się same (prawie)[QE 2018] Arnika Hryszko – Testy, które tworzą się same (prawie)
[QE 2018] Arnika Hryszko – Testy, które tworzą się same (prawie)
 
[QE 2018] Przemysław Sech – Software Quality Assistance w 40 minut
[QE 2018] Przemysław Sech – Software Quality Assistance w 40 minut[QE 2018] Przemysław Sech – Software Quality Assistance w 40 minut
[QE 2018] Przemysław Sech – Software Quality Assistance w 40 minut
 
[QE 2018] Joanna Falkowska – Uniwersal Design – wprowadzenie do tematu dostęp...
[QE 2018] Joanna Falkowska – Uniwersal Design – wprowadzenie do tematu dostęp...[QE 2018] Joanna Falkowska – Uniwersal Design – wprowadzenie do tematu dostęp...
[QE 2018] Joanna Falkowska – Uniwersal Design – wprowadzenie do tematu dostęp...
 
[Quality Meetup] M. Witas, D. Młynek – Tabnabbing – bug czy feature twojej pr...
[Quality Meetup] M. Witas, D. Młynek – Tabnabbing – bug czy feature twojej pr...[Quality Meetup] M. Witas, D. Młynek – Tabnabbing – bug czy feature twojej pr...
[Quality Meetup] M. Witas, D. Młynek – Tabnabbing – bug czy feature twojej pr...
 
[Quality Meetup] Jacek Sowiński – SecDevOps – w codziennej pracy każdego deve...
[Quality Meetup] Jacek Sowiński – SecDevOps – w codziennej pracy każdego deve...[Quality Meetup] Jacek Sowiński – SecDevOps – w codziennej pracy każdego deve...
[Quality Meetup] Jacek Sowiński – SecDevOps – w codziennej pracy każdego deve...
 
[Quality Meetup] Przemek Podsiadlik - Scenariusze BDD != testy automatyczne
[Quality Meetup] Przemek Podsiadlik - Scenariusze BDD != testy automatyczne[Quality Meetup] Przemek Podsiadlik - Scenariusze BDD != testy automatyczne
[Quality Meetup] Przemek Podsiadlik - Scenariusze BDD != testy automatyczne
 

[QE 2015] Bogdan Bereza - Testowanie na podstawie ryzyka

  • 1. Testowanie na podstawie ryzyka, wersja 4 – Bogdan Bereza – bogdan.bereza@victo.eu 1 (45) 2015 Testowanie na podstawie ryzyka Bogdan Bereza bogdan.bereza@victo.eu
  • 2. Testowanie na podstawie ryzyka, wersja 4 – Bogdan Bereza – bogdan.bereza@victo.eu 2 (45)
  • 3. Testowanie na podstawie ryzyka, wersja 4 – Bogdan Bereza – bogdan.bereza@victo.eu 3 (45) 1. Co to znaczy? 2. W praktyce 3. Lampki
  • 4. Testowanie na podstawie ryzyka, wersja 4 – Bogdan Bereza – bogdan.bereza@victo.eu 4 (45) Testowanie na podstawie ryzyka - co to znaczy? 2. W praktyce 3. Lampki
  • 5. Testowanie na podstawie ryzyka, wersja 4 – Bogdan Bereza – bogdan.bereza@victo.eu 5 (45) Bez testowania Solidne testowanie Czemu tak?
  • 6. Testowanie na podstawie ryzyka, wersja 4 – Bogdan Bereza – bogdan.bereza@victo.eu 6 (45) Duże Małe PRAWDOPODOBIEŃSTWO ZAGROŻENIE Niskie Wysokie Obszerna kontrola Sporadyczna kontrola Bo tak:
  • 7. Testowanie na podstawie ryzyka, wersja 4 – Bogdan Bereza – bogdan.bereza@victo.eu 7 (45) Wymagana intensywność i dokładność testów Prawdopodobieństwo defektów Profil użycia Prawdopodobieństwo awarii Koszty (skutki) awarii Ryzyko awarii Skuteczność testów w zmniejszaniu prawdopodobieństwa awarii
  • 8. Testowanie na podstawie ryzyka, wersja 4 – Bogdan Bereza – bogdan.bereza@victo.eu 8 (45) Wymagana intensywność i dokładność testów Ryzyko awarii Skuteczność testów w zmniejszaniu prawdopodobieństwa awarii Prawdopodobieństwo awarii Koszty (skutki) awarii Prawdopodobieństwo defektów Profil użycia
  • 9. Testowanie na podstawie ryzyka, wersja 4 – Bogdan Bereza – bogdan.bereza@victo.eu 9 (45) Prawdopodobieństwo awarii Złożoność oprogramowania Prawdopodobieństwo defektu Profil użytkowania Wielkość oprogramowania Znajomość technologii? Wcześniejsze testowanie? Jakość wymagań Dojrzałość procesu Znajomość procesu Psychologia jednostki Dynamika grupowa Kultura organizacji Doświadczenie Częstość wykonywania Zmienność zastosowania Odsetek użytkowników o danym profilu Kontekst (scenariusz) zastosowania
  • 10. Testowanie na podstawie ryzyka, wersja 4 – Bogdan Bereza – bogdan.bereza@victo.eu 10 (45) Wielkość oprogramowania
  • 11. Testowanie na podstawie ryzyka, wersja 4 – Bogdan Bereza – bogdan.bereza@victo.eu 11 (45) Złożoność oprogramowania
  • 12. Testowanie na podstawie ryzyka, wersja 4 – Bogdan Bereza – bogdan.bereza@victo.eu 12 (45) Znajomość dziedziny i technologiiZnajomość dziedziny i technologiiZnajomość dziedziny i technologii blogomocja.blogspot.com/2015/01/gimbaza-testerow.html
  • 13. Testowanie na podstawie ryzyka, wersja 4 – Bogdan Bereza – bogdan.bereza@victo.eu 13 (45) Wcześniejsze testowanie Rozsądne wymagania  Sprawdzony kod  Testy systemowe 
  • 14. Testowanie na podstawie ryzyka, wersja 4 – Bogdan Bereza – bogdan.bereza@victo.eu 14 (45) Jakość wymagań (i innych działań QA) Niezależnie do tego, czy działamy iteracyjnie, czy sekwencyjnie
  • 15. Testowanie na podstawie ryzyka, wersja 4 – Bogdan Bereza – bogdan.bereza@victo.eu 15 (45) co tester powinien pamiętać o północy? when helping doesn't help = gdy zamiast QA mamy tylko QC, prawdopodobieństwo rośnie i trzeba więcej testów
  • 16. Testowanie na podstawie ryzyka, wersja 4 – Bogdan Bereza – bogdan.bereza@victo.eu 16 (45) Dynamika grupowa  Z początku trudno ocenić, jak to działa, ale do tego po jednym - dwóch sprintach posłużyć może dobra retrospektywa
  • 17. Testowanie na podstawie ryzyka, wersja 4 – Bogdan Bereza – bogdan.bereza@victo.eu 17 (45) Kultura organizacji Zorientowanienazewnątrz Zorientowaniedowewnątrz Swoboda działania Nadzór Kultura klanowa Adhokracja Kultura hierarchiczna Kultura rynkowa
  • 18. Testowanie na podstawie ryzyka, wersja 4 – Bogdan Bereza – bogdan.bereza@victo.eu 18 (45) Proces
  • 19. Testowanie na podstawie ryzyka, wersja 4 – Bogdan Bereza – bogdan.bereza@victo.eu 19 (45) Psychologia jednostki Ale nie polecam, z’eby próbować’ to precyzyjnie obliczac’! 
  • 20. Testowanie na podstawie ryzyka, wersja 4 – Bogdan Bereza – bogdan.bereza@victo.eu 20 (45) Profil użytkowania… no, warto znać  Częstość wykonywania Zmienność zastosowaniaOdsetek użytkowników o danym profilu Kontekst (scenariusz) zastosowania
  • 21. Testowanie na podstawie ryzyka, wersja 4 – Bogdan Bereza – bogdan.bereza@victo.eu 21 (45) Wymagana intensywność i dokładność testów Ryzyko awarii Skuteczność testów w zmniejszaniu prawdopodobieństwa awarii Prawdopodobieństwo awarii Koszty (skutki) awarii Prawdopodobieństwo defektów Profil użycia
  • 22. Testowanie na podstawie ryzyka, wersja 4 – Bogdan Bereza – bogdan.bereza@victo.eu 22 (45) Koszty awarii (po wdrożeniu i przed) •Koszty bezpośrednie (i przed, i po) •Debugowanie •Usuwanie •Koszty pośrednie (po wdrożeniu) •Działania ograniczające skutki •Odszkodowania •Zła sława
  • 23. Testowanie na podstawie ryzyka, wersja 4 – Bogdan Bereza – bogdan.bereza@victo.eu 23 (45) Dokładniej, dwie krzywe Koszt naprawy i koszt wykrycia
  • 24. Testowanie na podstawie ryzyka, wersja 4 – Bogdan Bereza – bogdan.bereza@victo.eu 24 (45) Na ile to działa ?   kanomodel.com
  • 25. Testowanie na podstawie ryzyka, wersja 4 – Bogdan Bereza – bogdan.bereza@victo.eu 25 (45) Radosław Hofman „Software Quality Perception” „wpadka” „wkręcić” „obciach” „żenada”
  • 26. Testowanie na podstawie ryzyka, wersja 4 – Bogdan Bereza – bogdan.bereza@victo.eu 26 (45) satisfice.com/tools/htsm.pdf
  • 27. Testowanie na podstawie ryzyka, wersja 4 – Bogdan Bereza – bogdan.bereza@victo.eu 27 (45) Wymagana intensywność i dokładność testów Ryzyko awarii Skuteczność testów w zmniejszaniu prawdopodobieństwa awarii Prawdopodobieństwo awarii Koszty (skutki) awarii Prawdopodobieństwo defektów Profil użycia
  • 28. Testowanie na podstawie ryzyka, wersja 4 – Bogdan Bereza – bogdan.bereza@victo.eu 28 (45) Przetestować! Nie, lepiej sprawdzić…
  • 29. Testowanie na podstawie ryzyka, wersja 4 – Bogdan Bereza – bogdan.bereza@victo.eu 29 (45) Testowanie na podstawie ryzyka w praktyce 3. Lampki 1. Co to znaczy?
  • 30. Testowanie na podstawie ryzyka, wersja 4 – Bogdan Bereza – bogdan.bereza@victo.eu 30 (45) Prawdopodobieństwo Konsekwencje Macierz ryzyka dla wymagań Tak, tylko dwa-trzy poziomy – tego zwykle nie da się oszacować dokładniej!
  • 31. Testowanie na podstawie ryzyka, wersja 4 – Bogdan Bereza – bogdan.bereza@victo.eu 31 (45) Prawdopodobieństwo Konsekwencje Klasyfikowanie wymagań
  • 32. Testowanie na podstawie ryzyka, wersja 4 – Bogdan Bereza – bogdan.bereza@victo.eu 32 (45) Prawdopodobieństwo Konsekwencje Testy techniczne Testy biznesowe Ile testować? „Testować więcej” i „testować nie tak dużo”, to heurystyka – algorytmu na to nie ma i nie będzie!
  • 33. Testowanie na podstawie ryzyka, wersja 4 – Bogdan Bereza – bogdan.bereza@victo.eu 33 (45) Testy akceptacyjne i trochę eksploracyjnych Testy akceptacyjne i eksploracyjne + testy jednostkowe Testy akceptacyjne, na podstawie modeli oraz eksploracyjne Testy akceptacyjne, na podstawie modeli oraz eksploracyjne plus jednostkowe i inne białej skrzynki Prawdopodobieństwo Konsekwencje Na przykład (tylko na przykład!)
  • 34. Testowanie na podstawie ryzyka, wersja 4 – Bogdan Bereza – bogdan.bereza@victo.eu 34 (45) Przykład: poziomy DO-178B A. Katastrofa – 100% pokrycia zmodyfikowanych warunków decyzji (MC/DC) B. Śmierć pasażerów – 100% pokrycia decyzji C. Obrażenia pasażerów – 100% pokrycia instrukcji D. Np. zmiana planu lotu – brak wymagań E. Np. awaria systemu rozrywki – brak wymagań
  • 35. Testowanie na podstawie ryzyka, wersja 4 – Bogdan Bereza – bogdan.bereza@victo.eu 35 (45) Próba obliczeń? • Zwiększenie pokrycia testami diagramu przejść stanów z 1-przełączeń do 2- przełączeń zmniejsza prawdopodobieństwo awarii o 15% • Pracochłonność zaprojektowania i wykonania tych dodatkowych testów to 5 osobodni, czego koszt jest 5.000 zł  • Koszt awarii wynosi 50.000 zł, a 15% z 50.000 to 7.500 zł – opłaca się testować  • A może warto jednak zaryzykować? Ha, ha! Zupełny brak danych! Raczej brak danych…
  • 36. Testowanie na podstawie ryzyka, wersja 4 – Bogdan Bereza – bogdan.bereza@victo.eu 36 (45) Wybór strategii ryzyka
  • 37. Testowanie na podstawie ryzyka, wersja 4 – Bogdan Bereza – bogdan.bereza@victo.eu 37 (45) Podsumowanie • Testowanie na podstawie ryzyka, to nie algorytm, lecz heurystyka • Jakość oszacowań zwiększa się wraz ze znajomością specyfiki branży, organizacji oraz technologii • Opłaca się ją jednak stosować, aby próbować trafniej szacować pracochłonność testów • Nie zastępuje projektowania testów!
  • 38. Testowanie na podstawie ryzyka, wersja 4 – Bogdan Bereza – bogdan.bereza@victo.eu 38 (45) 2. W praktyce Metoda: lampki 1. Co to znaczy?
  • 39. Testowanie na podstawie ryzyka, wersja 4 – Bogdan Bereza – bogdan.bereza@victo.eu 39 (45)Zamiast biegania i pytania „czy można już skończyć testowanie?” Czas(wersje) Wielkość koła = konsekwencja ryzyka, kolor = status (malejące prawdopodobieństwo) Raportowanie statusu
  • 40. Testowanie na podstawie ryzyka, wersja 4 – Bogdan Bereza – bogdan.bereza@victo.eu 40 (45) Oczywiście, że jak w Scrumie… … jeśli tylko DoD jest dobre zdefiniowane 
  • 41. Testowanie na podstawie ryzyka, wersja 4 – Bogdan Bereza – bogdan.bereza@victo.eu 41 (45) 1. Co to znaczy? 2. W praktyce 3. Lampki Uff, skończyliśmy 
  • 42. Testowanie na podstawie ryzyka, wersja 4 – Bogdan Bereza – bogdan.bereza@victo.eu 42 (45) wymagania.org.pl kontakt@wymagania.org.pl
  • 43. Testowanie na podstawie ryzyka, wersja 4 – Bogdan Bereza – bogdan.bereza@victo.eu 43 (45) Dobrze się bawiliśmy!
  • 44. Testowanie na podstawie ryzyka, wersja 4 – Bogdan Bereza – bogdan.bereza@victo.eu 44 (45) 2015 Testowanie na podstawie ryzyka Bogdan Bereza bogdan.bereza@victo.eu
  • 45. Testowanie na podstawie ryzyka, wersja 4 – Bogdan Bereza – bogdan.bereza@victo.eu 45 (45)