SCRUM workshop. Introductie Ze zeggen dat dit de manier is. Laten we het maar gewoon doen... Leuk,...

38
SCRUM workshop

Transcript of SCRUM workshop. Introductie Ze zeggen dat dit de manier is. Laten we het maar gewoon doen... Leuk,...

Page 1: SCRUM workshop. Introductie Ze zeggen dat dit de manier is. Laten we het maar gewoon doen... Leuk, maar wie is verantwoordelijk voor de deployment?

SCRUM workshop

Page 2: SCRUM workshop. Introductie Ze zeggen dat dit de manier is. Laten we het maar gewoon doen... Leuk, maar wie is verantwoordelijk voor de deployment?

Introductie

Page 3: SCRUM workshop. Introductie Ze zeggen dat dit de manier is. Laten we het maar gewoon doen... Leuk, maar wie is verantwoordelijk voor de deployment?

Ze zeggen dat dit de manier is. Laten we het maar gewoon doen...

Leuk, maar wie is verantwoordelijk

voor de

deployment?

Page 4: SCRUM workshop. Introductie Ze zeggen dat dit de manier is. Laten we het maar gewoon doen... Leuk, maar wie is verantwoordelijk voor de deployment?

The Problem: The Chaos Report· Onderzoek gestart in1994· Ruim 35,000 software development projecten bekeken· In 2000:

Source: Standish “Chaos” Report, Jim Johnson lecture at XP2002 conference: http://www.xp2003.org/xp2002/talksinfo/johnson.pdf

Page 5: SCRUM workshop. Introductie Ze zeggen dat dit de manier is. Laten we het maar gewoon doen... Leuk, maar wie is verantwoordelijk voor de deployment?

Functies gebruikt in een typisch systeem

Source: Jim Johnson lecture at XP2002 conference

Rarely19%

Always7%

Sometimes16%

Never45%

Often13%

Page 6: SCRUM workshop. Introductie Ze zeggen dat dit de manier is. Laten we het maar gewoon doen... Leuk, maar wie is verantwoordelijk voor de deployment?

Waarom mislukken IT projecten?

· Aannames· Gewijzigde prioriteiten· Gebrek aan samenwerking· Omgeving wijzigt· Beperkingen in communicatie· Probleem is niet duidelijk· Oplossing is onbekend· Technische beperkingen· …

Page 7: SCRUM workshop. Introductie Ze zeggen dat dit de manier is. Laten we het maar gewoon doen... Leuk, maar wie is verantwoordelijk voor de deployment?

Bron: http://agilemanifesto.org/iso/nl/

Page 8: SCRUM workshop. Introductie Ze zeggen dat dit de manier is. Laten we het maar gewoon doen... Leuk, maar wie is verantwoordelijk voor de deployment?

Waterfall vs Agile

Page 9: SCRUM workshop. Introductie Ze zeggen dat dit de manier is. Laten we het maar gewoon doen... Leuk, maar wie is verantwoordelijk voor de deployment?

Coingame

Page 10: SCRUM workshop. Introductie Ze zeggen dat dit de manier is. Laten we het maar gewoon doen... Leuk, maar wie is verantwoordelijk voor de deployment?

Wat is Scrum

Page 11: SCRUM workshop. Introductie Ze zeggen dat dit de manier is. Laten we het maar gewoon doen... Leuk, maar wie is verantwoordelijk voor de deployment?

Wat is Scrum

· Ontwikkelt in’90 – ’96 door Ken Schwaber & Jeff Sutherland· Simpel en populair framework · Youtube: Jeff Sutherland breaks down the structure of scrum

Page 12: SCRUM workshop. Introductie Ze zeggen dat dit de manier is. Laten we het maar gewoon doen... Leuk, maar wie is verantwoordelijk voor de deployment?

· Prioriteren op waarde· Voorspelbaarheid· Feedback· Fun

Scrum =

Page 13: SCRUM workshop. Introductie Ze zeggen dat dit de manier is. Laten we het maar gewoon doen... Leuk, maar wie is verantwoordelijk voor de deployment?

Scrum overview

Productbacklog

Sprint backlog

3 wekelijkse sprint

Sprint Demo& retrospective

Scrum bord Burndown Belemmeringen

Shipable product

Sprintplanning

D.O.R. D.O.D.

100

20

40

12

3

58

13

Dagelijkse update

Page 14: SCRUM workshop. Introductie Ze zeggen dat dit de manier is. Laten we het maar gewoon doen... Leuk, maar wie is verantwoordelijk voor de deployment?

Scrum overview

· 3 rollen Team Product owner Scrummaster

· 4 gebeurtenissen Sprintplanning Daily scrum Sprint demo/review Sprint retrospective

· 4 artifacten Product backlog Sprint backlog Burndown Definition of Done

· Scrumguide (scrum.org)

Page 15: SCRUM workshop. Introductie Ze zeggen dat dit de manier is. Laten we het maar gewoon doen... Leuk, maar wie is verantwoordelijk voor de deployment?

Scrum Board

Page 16: SCRUM workshop. Introductie Ze zeggen dat dit de manier is. Laten we het maar gewoon doen... Leuk, maar wie is verantwoordelijk voor de deployment?
Page 17: SCRUM workshop. Introductie Ze zeggen dat dit de manier is. Laten we het maar gewoon doen... Leuk, maar wie is verantwoordelijk voor de deployment?
Page 18: SCRUM workshop. Introductie Ze zeggen dat dit de manier is. Laten we het maar gewoon doen... Leuk, maar wie is verantwoordelijk voor de deployment?
Page 19: SCRUM workshop. Introductie Ze zeggen dat dit de manier is. Laten we het maar gewoon doen... Leuk, maar wie is verantwoordelijk voor de deployment?
Page 20: SCRUM workshop. Introductie Ze zeggen dat dit de manier is. Laten we het maar gewoon doen... Leuk, maar wie is verantwoordelijk voor de deployment?
Page 21: SCRUM workshop. Introductie Ze zeggen dat dit de manier is. Laten we het maar gewoon doen... Leuk, maar wie is verantwoordelijk voor de deployment?
Page 22: SCRUM workshop. Introductie Ze zeggen dat dit de manier is. Laten we het maar gewoon doen... Leuk, maar wie is verantwoordelijk voor de deployment?

Teamwork

Page 23: SCRUM workshop. Introductie Ze zeggen dat dit de manier is. Laten we het maar gewoon doen... Leuk, maar wie is verantwoordelijk voor de deployment?

3 rollen

Productowner

Team

Scrummaster

Page 24: SCRUM workshop. Introductie Ze zeggen dat dit de manier is. Laten we het maar gewoon doen... Leuk, maar wie is verantwoordelijk voor de deployment?

Productowner

· Bepaalt de functionaliteit van het product· Bepaalt de einddatum en inhoud· Is verantwoordelijk voor de winstgevendheid (ROI)· Bepaalt functionaliteit en prioriteit in volgorde van

marktwaarde· Functionaliteit en prioriteit kunnen elke iteratie aangepast

worden, naar behoefte· Accepteert het uiteindelijke resultaat (of niet)

Page 25: SCRUM workshop. Introductie Ze zeggen dat dit de manier is. Laten we het maar gewoon doen... Leuk, maar wie is verantwoordelijk voor de deployment?

Geschreven specificaties

· Maak 2-tallen (Analist en Developer)· Developers gaan de zaal uit· Analisten maken in 5 minuten geschreven

specificaties· Analist geeft specs aan Developer zonder te spreken· Developer krijgt 5 minuten om de specs te realiseren

Page 26: SCRUM workshop. Introductie Ze zeggen dat dit de manier is. Laten we het maar gewoon doen... Leuk, maar wie is verantwoordelijk voor de deployment?

Geschreven specificaties

Page 27: SCRUM workshop. Introductie Ze zeggen dat dit de manier is. Laten we het maar gewoon doen... Leuk, maar wie is verantwoordelijk voor de deployment?

Product backlog

Sprint 1

Sprint 2

Schatting Done bij een Velocity van X

Schatting Done bij een velocity van Y

= userstory

Page 28: SCRUM workshop. Introductie Ze zeggen dat dit de manier is. Laten we het maar gewoon doen... Leuk, maar wie is verantwoordelijk voor de deployment?

Userstory

Userstory:As a <role>I want to <what>So that <why>

Notes:e.g. ref to wireframe, non-functional requirement etc.

How to demo / how to test:<as smart as possible>

Estimate

<story-points>

Zou gekoppeld kunnen worden aan testscenario’s en testscripts

+/- requirement

Page 29: SCRUM workshop. Introductie Ze zeggen dat dit de manier is. Laten we het maar gewoon doen... Leuk, maar wie is verantwoordelijk voor de deployment?

Effective Communication

Page 30: SCRUM workshop. Introductie Ze zeggen dat dit de manier is. Laten we het maar gewoon doen... Leuk, maar wie is verantwoordelijk voor de deployment?

Scrum team

· Gebruikelijk 5-9 mensen· Multi-disciplinair: Programmeurs, testers, ontwerpers,

etc.· Leden zijn fulltime toegekend· Teams organiseren zichzelf· In het ideale: helemaal geen titels/rollen· Teamindeling is vast· Focus

Page 31: SCRUM workshop. Introductie Ze zeggen dat dit de manier is. Laten we het maar gewoon doen... Leuk, maar wie is verantwoordelijk voor de deployment?

Scrummaster

· Verantwoordelijk voor de toepassing van Scrum waarden en normen

· Wegnemen van belemmeringen· Zorg voor optimale productiviteit van het team· Zorg voor samenwerking tussen de verschillende

disciplines en rollen· Schermt het team af van verstoringen van buiten het

team

Page 32: SCRUM workshop. Introductie Ze zeggen dat dit de manier is. Laten we het maar gewoon doen... Leuk, maar wie is verantwoordelijk voor de deployment?

4 Meetings· Sprint planning

· Daily scrum

· Sprint review

· Sprint retrospective

Page 33: SCRUM workshop. Introductie Ze zeggen dat dit de manier is. Laten we het maar gewoon doen... Leuk, maar wie is verantwoordelijk voor de deployment?

Sprintplanning

Ref Mike Cohn “Agile Estimation and Planning” (zie ook YouTube)

Een aantal biologische feiten:· Het is voor het menselijk brein moeilijk tijd in te

schatten, zeker als het meer dan een aantal uur is.· Dit wordt uitvergroot door de hoeveelheid

onzekerheden in software development, druk vanuit management verschil in skills van het team, …

· Echter, we zijn redelijk goed in het vergelijken van dingen. Dat kunnen we vrij accuraat.

Page 34: SCRUM workshop. Introductie Ze zeggen dat dit de manier is. Laten we het maar gewoon doen... Leuk, maar wie is verantwoordelijk voor de deployment?

Uren of storypoints

Planning op basis van uren:· Minder dan 1 dag: 1, 2, 4 of 8 uur.· Meer: 2, 3, 5, 10 dagen, 1 maand etc.· Als aan een taak gewerkt is wordt het restant opnieuw

geschat.

Plannen op basis van StoryPoints:· Het idee is om één referentie user story een aantal

story points te geven en vervolgens andere user stories, punten te geven relatief t.o.v. de referentie.

· Voordeel: snel en gezamenlijk.

Page 35: SCRUM workshop. Introductie Ze zeggen dat dit de manier is. Laten we het maar gewoon doen... Leuk, maar wie is verantwoordelijk voor de deployment?

Planning poker

· Simpele en effectieve methode die als team uitgevoerd kan worden

· Zorgt voor interactie tussen alle team leden en product owner

· Snel achterhalen van de daadwerkelijke opdracht.· Zorgt voor een gedragen schatting van het gehele team.

· Regels:1. Productowner leest user story voor en geeft toelichting2. Vragen stellen/discussie over de userstory3. Iedereen trekt een kaart en legt hem omgekeerd neer4. Alle kaarten worden tegelijk omgedraaid5. Alle schattingen gelijk -> Volgende userstory6. Schattingen ongelijk -> hoogste en laagste geven

toelichting, daarna opnieuw naar 3 (zolang het nodig is).

Page 36: SCRUM workshop. Introductie Ze zeggen dat dit de manier is. Laten we het maar gewoon doen... Leuk, maar wie is verantwoordelijk voor de deployment?

Storypoints vertaald naar planning· De velocity is het aantal storypoints het team kan

afronden in de gegeven tijd (sprint).

· Het team kan haar velocity pas bepalen na een aantal sprints (4+).

8A 8B 8C 9A 9B 10A 10B 11A 11B0

20

40

60

80

100

120

140

160

Estimate M

Realized M

Page 37: SCRUM workshop. Introductie Ze zeggen dat dit de manier is. Laten we het maar gewoon doen... Leuk, maar wie is verantwoordelijk voor de deployment?

Samenvatting

· Focus op continue verbeteringen· Snel inspelen op veranderingen· Waarde toevoegen, belangrijkste eerst (backlog)· Timebox (sprint)· 3 rollen (productowner, team, scrummaster)· 4 meetings (planning, daily, demo, retro)

Page 38: SCRUM workshop. Introductie Ze zeggen dat dit de manier is. Laten we het maar gewoon doen... Leuk, maar wie is verantwoordelijk voor de deployment?

Simplifying Life with SCRUM

Twitter: #intoscrum