Scrum Rocks, Testing Sucks ?! RELOADED

Post on 24-Jan-2015

322 views 0 download

description

Fachreferat von Adrian Stoll, SwissQ Consulting AG bei Digicomp, Zürich am 24.04.2013 (c) SwissQ Consulting AG

transcript

Scrum Rocks, Testing Sucks?!

Adrian Stoll, SwissQ Consulting AGZürich, 24. April 2013

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

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

SCENE

Adrian StollEidg. 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“

Service Overview

Page 5

Research & Development

Page 6

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

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

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

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

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

Scrum: nicht nur für die Arbeit!

Page 11

Die Scrum Methodik

Page 12

Image: Liip AG

TestTest

Test

Test

Blick auf die Vorgehensweisen

Page 13

ATSTKonzept Design High Level Test EinführungCode Low Level Test

Wasserf

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

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

TestDesign

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

TestDesign

Test Design

TestDesign

TestDesign

TestDesign

TestDesign

TestDesign

TestDesign

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

FinaleAbnahme-

&E-2-E

Test

AT AT AT AT AT AT AT

TestDesign

Test Design

TestDesign

TestDesign

TestDesign

TestDesign

TestDesign

TestDesign

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 nFinaleAbnahme-

& E-2-E Test

TestDesign & AT

Test Design& AT

TestDesign& AT

TestDesign& AT

TestDesign& AT

TestDesign& AT

TestDesign& AT

TestDesign& AT

„True“ Embedded Testing

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

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

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

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

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

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

Techniken und TechnologienGrosser Anteil von Exploratory Testing

Page 24

Techniken und Technologien

Test-Driven Development

User Story-based Testing

...

Requirements Coverage

Risk-based Testing

Page 25

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

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

Page 26

Übersicht Regressions-Testcases Stand per Sprint XX

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

Page 27

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

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

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!

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

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

Scrum Testing – Best Practices

Page 33

Workflow

ClosedDone

ResolvedRelease

To TestTested OK

In Progress / ReopenedImplemented / Fixed

OpenReady for Implementation

NewUser Story Review

Review failed:Überarbeiten!

Testing failed: Reopen!

Scrum Testing – Best Practices

Page 34

Testmethodik SET

Scrum Testing – Best Practices

Page 35

Testmethodik SET

Scrum Testing – Best Practices

Page 36

Testmethodik SET

Entwickler-informationen

Testreview

inkl. Ergebnisse

Testsession

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

A word on Regression

Page 38

Explodierende Regressionstests

100

25 25

2550

25

75

25

Klassisch

Scrum

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

Test neuer FunktionenTest bestehender Funktionen (Regression)

100

100

R1(TA:100)

R2 (TA: 200)

R1 (TA: 250)

R2 (TA: 650)

100

550

Iter. 1-4

AUTOMATE !

Page 39

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

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

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

Q&A

1

2

3

4

5

6

7

8

SwissQ Consulting AGStadthausquai 158001 Zürich

Tel. +41 (0)43 288 88 40

Fax +41 (0)43 288 88 39

www.SwissQ.it

adrian.stoll@swissq.it

Twitter: @macstoll

Koordinaten