Referat: Scrum Rocks – Testing Sucks?! (reloaded)

43
Scrum Rocks, Testing Sucks?! Adrian Stoll, SwissQ Consulting AG Zürich, 24. April 2013

Transcript of Referat: Scrum Rocks – Testing Sucks?! (reloaded)

Page 1: Referat: Scrum Rocks – Testing Sucks?! (reloaded)

Scrum Rocks, Testing Sucks?! Adrian Stoll, SwissQ Consulting AG Zürich, 24. April 2013

Page 2: Referat: Scrum Rocks – Testing Sucks?! (reloaded)

Ziele der Präsentation

§ Wie ein Scrum Team von einer dedizierten Person für das Testing profitiert

§ Warum ein Embedded Scrum Tester besser ist, als die Testverantwortung auf das ganze Team zu verteilen

§ Was trägt ein Tester zu den Scrum Prozessen wie Daily Scrum, Sprint Planning, Retrospective etc. bei

§ Finden Sie heraus, weshalb Testing in Scrum Spass macht, weil man involviert ist und schneller zum Ziel kommt

Page 2

Page 3: Referat: Scrum Rocks – Testing Sucks?! (reloaded)

Agenda

1.  Scrum Testing in der Praxis

2.  Warum Testing in Scrum rockt!

3.  Scrum Testing im Detail – Techniken und Technologien

4.  Best Practices & Lessons Learned

Page 3

Page 4: Referat: Scrum Rocks – Testing Sucks?! (reloaded)

SCENE

Adrian Stoll Eidg. dipl. Web Project Manager, Tester aus Leidenschaft, Scrum Geek

Prinicipal Consultant, SwissQ Consulting AG

Ihr Referent

Page 4

Scrum-Erfahrung: •  Embedded Tester u.a. in 2 Siegerprojekten

der "Best of Swiss Web"-Awards 2011

•  Scrum Test Professional bei einer grossen

Versicherung •  Certified Scrum

Master •  Kursleiter “Agiles

Testing mit Scrum“

Page 5: Referat: Scrum Rocks – Testing Sucks?! (reloaded)

Service Overview

Page 5

Page 6: Referat: Scrum Rocks – Testing Sucks?! (reloaded)

Research & Development

Page 6

... Trend & Benchmark Reports, Business Value Game, Priority Poker

Page 7: Referat: Scrum Rocks – Testing Sucks?! (reloaded)

Agenda

1.  Scrum Testing in der Praxis

2.  Warum Testing in Scrum rockt!

3.  Scrum Testing im Detail – Techniken und Technologien

4.  Best Practices & Lessons Learned

Page 7

Page 8: Referat: Scrum Rocks – Testing Sucks?! (reloaded)

Projekterfahrungen: Migipedia

Page 8

§ Community Plattform für Migros-Kunden

§ Produktebewertungen & Kommentare

§ Umfragen & Kampagnen

§ Einsatzbeginn 2 Wochen vor Launch als "Retter in der Not"

§ Dokumentation von 80 Bugs innert der ersten 2 Tagen

§ Begleitung des Projekts bis zum (pünktlichen) Release

§ Seither fester Partner als Testing und QA-Verantwortliche

Page 9: Referat: Scrum Rocks – Testing Sucks?! (reloaded)

Projekterfahrungen: Vanilla

Page 9

§ Coupons & Aktionen

§ Mobile Payment

§  iPhone & Android App

§ diverse Schnittstellen

§ Auftraggeber: Ringier

§ Embedded Tester zum ersten Release

§ Verschiedene Applikationen und Plattformen

§ Schnittstellen, End-To-End Testing

§ Mandat als Product Owner für die Weiterentwicklung

Page 10: Referat: Scrum Rocks – Testing Sucks?! (reloaded)

Projekterfahrungen: Versicherungsunternehmen

§ Umstellung der gesamten Informatik auf Scrum

§ Mithilfe bei der Neuausrichtung der Testing-Organisation

§ Beratung und Coaching in Scrum & Testing Prozessen

§ Mitarbeit beim Aufbau einer Testing-Community

§ Erarbeitung Rollendefinitionen: Embedded Tester, Projektleiter TestIT und Technical Lead Testing

§ Embedded Testing im Projektumfeld Vermögens- und Vorsorgeberatung

§ Testautomatisierung (Ranorex & IBM RFT)

Page 10

Page 11: Referat: Scrum Rocks – Testing Sucks?! (reloaded)

Scrum: nicht nur für die Arbeit!

Page 11

Page 12: Referat: Scrum Rocks – Testing Sucks?! (reloaded)

Die Scrum Methodik

Page 12

Image: Liip AG

Test Test

Test

Test

Page 13: Referat: Scrum Rocks – Testing Sucks?! (reloaded)

Blick auf die Vorgehensweisen

Page 13

AT ST Konzept Design High Level Test Einführung Code Low Level Test

Was

serf

all

ST/AT ST/AT ST/AT ST/AT ST/AT ST/AT ST/AT ST/AT

S1 S2 S3 S4 S5 S6 S7 S8

Scru

m

Page 14: Referat: Scrum Rocks – Testing Sucks?! (reloaded)

Testing in Scrum – Variante 1

§ Tester stossen gegen Ende des Projektes hinzu.

§ Abnahme & E-2-E Tests am Ende des Projekts.

1 2 3 4 5 6 7 n

Abnahme- &

E-2-E Test

Test Design

Page 15: Referat: Scrum Rocks – Testing Sucks?! (reloaded)

Testing in Scrum – Variante 2

§ Tester sind von Anfang involviert.

§ Das Test Design erfolgt kontinuierlich mit jedem Sprint.

§ Abnahme & E-2-E Tests am Ende des Projekts.

1 2 3 4 5 6 7 n

Abnahme- &

E-2-E Test

Test Design

Test Design

Test Design

Test Design

Test Design

Test Design

Test Design

Test Design

Page 16: Referat: Scrum Rocks – Testing Sucks?! (reloaded)

Testing in Scrum – Variante 3

§ Tester sind von Anfang involviert.

§ Die Durchführung der Abnahmetests (AT) erfolgt im folgenden Sprint.

§ Finale Abnahme & E-2-E Tests am Ende des Projekts.

1 2 3 4 5 6 7 n

Finale Abnahme-

& E-2-E Test

AT AT AT AT AT AT AT

Test Design

Test Design

Test Design

Test Design

Test Design

Test Design

Test Design

Test Design

Page 17: Referat: Scrum Rocks – Testing Sucks?! (reloaded)

Testing in Scrum – Variante 4

§ Enge Zusammenarbeit zwischen Entwickler und Tester.

§ Die Durchführung der Abnahmetests (AT) erfolgt im selben Sprint.

§ Finale Abnahme & E-2-E Tests am Ende des Projekts.

1 2 3 4 5 6 7 n Finale

Abnahme- &

E-2-E Test

Test Design & AT

Test Design & AT

Test Design & AT

Test Design & AT

Test Design & AT

Test Design & AT

Test Design & AT

Test Design & AT

„True“ Embedded Testing

Page 18: Referat: Scrum Rocks – Testing Sucks?! (reloaded)

Embedded Scrum Tester

Shared Responsibility: Everybody tests their own part §  Ist (High Level) Test Know-How

vorhanden?

§  Ist Testing wirklich unabhängig, objektiv?

§ Wie/wer verantwortet Bug-Fixing und Retests?

Im Scrum Team wird Testing als gemein-same Verantwortung wahrgenommen. Oft werden Entwickler für das Testing zugeteilt, was einige Risiken mit sich bringt:

Page 18

Page 19: Referat: Scrum Rocks – Testing Sucks?! (reloaded)

Embedded Scrum Tester

Ein Embedded Scrum Tester kann diese Risiken minimieren:

§  Spezial-Wissen vorhanden

§ Unabhängig und „objektiv“

§  Fehler können umgehend behoben werden (sehr kurze Feedback-Zyklen)

Shared Responsibility: Everybody tests their own part

Embedded Acceptance Tester: Test by an independent specialist

Page 19

Page 20: Referat: Scrum Rocks – Testing Sucks?! (reloaded)

Agenda

1.  Scrum Testing in der Praxis

2.  Warum Testing in Scrum rockt!

3.  Scrum Testing im Detail – Techniken und Technologien

4.  Best Practices & Lessons Learned

Page 20

Page 21: Referat: Scrum Rocks – Testing Sucks?! (reloaded)

Why traditional Testing sucks

§ Frustrierend – Fehler zu finden, die offensichtlich sind

§ Undankbar – als Tester ist man bei Entwicklern oft unbeliebt

§ Stressig – bei Verzögerungen verkürzt sich meist die Testzeit

§ Eintönig – immer wieder dieselben Testfälle, over and over again

§  Isoliert – als Tester kann man selten die Umsetzung beeinflussen

Page 21

Page 22: Referat: Scrum Rocks – Testing Sucks?! (reloaded)

Why Scrum Testing rocks

§ Motivierend – Raschere Testresultate, schnellere Bugfixes

§ Dankbar – Entlastung für Entwickler, positives Feedback

§ Kontrolliert – eingebetted in Scrum Planung und Zyklus

§ Abwechslungsreich – am Puls der (raschen) Weiterentwicklung

§  Involviert – Mitreden und Lösungsvorschläge erwünscht

Page 22

Page 23: Referat: Scrum Rocks – Testing Sucks?! (reloaded)

Agenda

1.  Scrum Testing in der Praxis

2.  Warum Testing in Scrum rockt!

3.  Scrum Testing im Detail – Techniken und Technologien

4.  Best Practices & Lessons Learned

Page 23

Page 24: Referat: Scrum Rocks – Testing Sucks?! (reloaded)

Techniken und Technologien Grosser Anteil von Exploratory Testing

Page 24

Page 25: Referat: Scrum Rocks – Testing Sucks?! (reloaded)

Techniken und Technologien

§ Test-Driven Development

§ User Story-based Testing

§  ...

§ Requirements Coverage

§ Risk-based Testing

Page 25

Traditionelle Test-Techniken ja – unbedingt! – aber "Light"

Page 26: Referat: Scrum Rocks – Testing Sucks?! (reloaded)

Techniken und Technologien Fortlaufende Entwicklung und Dokumentation von strukturierten (Regressions-) Testfällen

Page 26

Übersicht Regressions-Testcases Stand per Sprint XX

Page 27: Referat: Scrum Rocks – Testing Sucks?! (reloaded)

Techniken und Technologien Einsatz eines Tools für Anforderungsmanagement, Fehlerverwaltung und Problembehandlung unabdingbar

Page 27

Page 28: Referat: Scrum Rocks – Testing Sucks?! (reloaded)

Beitrag des Testers in Scrum Prozessen

§ Abschätzen der Zeit, welche zum Testen von User Stories benötigt werden und dafür sorgen, dass diese bei der Aufwandschätzung berücksichtigt werden

Scrum Planning / Estimation Meeting

Page 28

Page 29: Referat: Scrum Rocks – Testing Sucks?! (reloaded)

Beitrag des Testers in Scrum Prozessen

§  (auch Daily Standup): Was habe ich gestern getestet, was teste ich heute, wo hatte ich Probleme beim Testen?

Daily Scrum

Image: Danny (Danko) Kovatch

Page 29

Page 30: Referat: Scrum Rocks – Testing Sucks?! (reloaded)

Beitrag des Testers in Scrum Prozessen

§ Kennenlernen neuer Features vor dem Testing (oder: bereits getestete Features selbst demonstrieren)

Sprint Review / Demo

Page 30

Die Demo lief diesmal richtig flüssig und wie aus einem Guss. Machte ein super-professionellen Eindruck, weiter so!

Page 31: Referat: Scrum Rocks – Testing Sucks?! (reloaded)

Beitrag des Testers in Scrum Prozessen

§ Wo waren die Stolpersteine aus Tester-Sicht, was lief besonders gut? Was kann man neu/anders machen?

Scrum Retrospective

Image: IT-Zynergy ApS

Page 31

Page 32: Referat: Scrum Rocks – Testing Sucks?! (reloaded)

Agenda

1.  Scrum Testing in der Praxis

2.  Warum Testing in Scrum rockt!

3.  Scrum Testing im Detail – Techniken und Technologien

4.  Best Practices & Lessons Learned

Page 32

Page 33: Referat: Scrum Rocks – Testing Sucks?! (reloaded)

Scrum Testing – Best Practices

Page 33

Workflow

Closed Done

Resolved Release

To Test Tested OK

In Progress / Reopened Implemented / Fixed

Open Ready for Implementation

New User Story Review

Review failed: Überarbeiten!

Testing failed: Reopen!

Page 34: Referat: Scrum Rocks – Testing Sucks?! (reloaded)

Scrum Testing – Best Practices

Page 34

Testmethodik SET

Page 35: Referat: Scrum Rocks – Testing Sucks?! (reloaded)

Scrum Testing – Best Practices

Page 35

Testmethodik SET

Page 36: Referat: Scrum Rocks – Testing Sucks?! (reloaded)

Scrum Testing – Best Practices

Page 36

Testmethodik SET

Entwickler-informationen

Testreview

inkl. Ergebnisse

Testsession

Page 37: Referat: Scrum Rocks – Testing Sucks?! (reloaded)

Scrum Testing – Best Practices

§ Einsatz eines Tools für Anforderungsmanagement, Fehlerverwaltung und Problembehandlung mit Workflow

§ Anforderungsbasiertes Testing anhand von User Stories

§ Der Entwickler schreibt ein "How to test" pro Issue

§ Sprint-Planung und Fortschritt stetig überwachen

§ Tests möglichst rasch durchführen, Anhäufung von pendenten Testfällen vermeiden

§  Integrationsfördernde Massnahmen zahlen sich aus: Anpassung an Kleidung, Sprache, Arbeitszeiten, Gewohnheiten des Teams etc.

§ Nahe beim Team sein: Physisch präsent oder mithilfe von elektronischer Kommunikationsmitteln

Page 37

Page 38: Referat: Scrum Rocks – Testing Sucks?! (reloaded)

A word on Regression

Page 38

Page 39: Referat: Scrum Rocks – Testing Sucks?! (reloaded)

Explodierende Regressionstests

100

25 25

25 50

25

75

25

Klassisch Scrum

Iter. 1 Iter. 2 Iter. 3 Iter. 4

Test neuer Funktionen Test bestehender Funktionen (Regression)

100

100

R1 (TA:100)

R2 (TA: 200)

R1 (TA: 250) R2 (TA: 650)

100

550

Iter. 1-4

Page 39

Page 40: Referat: Scrum Rocks – Testing Sucks?! (reloaded)

Scrum Testing – Lessons learned

§ Echte Entlastung der Entwickler

§ Zusätzliches Bindeglied zum Kunden, Unterstützung für PO & SM

§ Schleichende Nachlässigkeit der Entwicklung (Unit-Tests?)

§ Vorsicht vor "Technical Debts"!

§ Dokumentation wird häufig vernachlässigt

§ End-to-End Testing sauber planen

§ Wer kümmert sich sich um die Test-Infrastruktur?

§ Scrum Testing und Remote Testing: Tolle Kombination!

§ Continous Improvement & -integration nutzen

§ Regressionstests: Die grösste Herausforderung in Scrum

Page 40

Page 41: Referat: Scrum Rocks – Testing Sucks?! (reloaded)

Thank you for your involvement defending the platform and the work done.

Are you ready for the challenge?

Da wären wir nie drauf gekommen.

Toll, was du alles findest

euer team hat wirklich einen super job gemacht. die letzten Tage sind wirklich weltmeisterlich verlaufen, an allen ecken.

Eine echte Unterstützung! Ohne euch hätten wir das kaum geschafft.

Page 41

du bisch e riese testing maschiene, mir si froh heimer di i säges dir

Page 42: Referat: Scrum Rocks – Testing Sucks?! (reloaded)

Sie wollen mehr erfahren?

§ Nächste Kursdaten „Agiles Testen mit Scrum“: 13.+14.05.2013 / 10.+11.10.2013 / 02.+03.12.2013

§ Nächste Kurse „Session Based Testing“: 02.10.2013 / 04.12.2013

§  Testmethodik SET: http://www.hermes.admin.ch/dienstleistungen/hilfsmittel/testmethodik

§ Buch „A Practical Guide For Testers And Agile Teams“ (Crispin/Gregory, Addison Wesley)

§ Buch „Testen in Scrum-Projekten“ (Tilo Linz, dpunkt Verlag)

§ Event „Testing Trends & Benchmarks 2013“ SwissQ Bern, 28.05.2013http://www.swissq.it/testing-trends-benchmarks-2013/)

Page 42

Page 43: Referat: Scrum Rocks – Testing Sucks?! (reloaded)

Page 43

Q&A

1 2 3 4 5 6 7 8

§ SwissQ Consulting AG Stadthausquai 15 8001 Zürich

§ Tel. +41 (0)43 288 88 40 § Fax +41 (0)43 288 88 39

§ www.SwissQ.it § [email protected] § Twitter: @macstoll

Koordinaten