Agile Systeemontwikkeling Met Scrum 4 Maart 2010

63

Click here to load reader

Transcript of Agile Systeemontwikkeling Met Scrum 4 Maart 2010

Page 1: Agile Systeemontwikkeling Met Scrum   4 Maart 2010

Vision ~ Knowledge ~ Results

samenwerking, pragmatische aanpak en innovatie met Java en Oracle

Agile systeemontwikkeling met Scrum4 maart 2010

Een andere manier van denkenEen andere manier van werken

© 2010 Whitehorses Martin van Borselaer

Page 2: Agile Systeemontwikkeling Met Scrum   4 Maart 2010

Whitehorses B.V.

Omgaan met het onverwachte

Page 3: Agile Systeemontwikkeling Met Scrum   4 Maart 2010

Whitehorses B.V.

Verkrampen of beheersen?

Verkrampen

Remmen

Overcorrigeren

Beheersen

Níet remmen, koppeling in

Gericht blijven sturen

•Je eerste reactie is niet altijd de beste•Agile = andere manier van denken

Page 4: Agile Systeemontwikkeling Met Scrum   4 Maart 2010

Whitehorses B.V.

Agenda

●Agile Quiz●Wat is Agile?●Scrum, een agile manier van werken●Agile in de praktijk●Project WMS●Conclusie●Vragen/discussie

Page 5: Agile Systeemontwikkeling Met Scrum   4 Maart 2010

Whitehorses B.V.

Agile Quiz

En nu…

Page 6: Agile Systeemontwikkeling Met Scrum   4 Maart 2010

Whitehorses B.V.

Spelregels

●5 vragen●15 seconden per vraag●2 mogelijke antwoorden per vraag●Score optellen:

1 voor antwoord 1 2 voor antwoord 2

●Eindscore ligt tussen 5 en 10

Page 7: Agile Systeemontwikkeling Met Scrum   4 Maart 2010

Whitehorses B.V.

VoorbeeldvraagVier maal drie is …

1. … twaalf.

2.... dertien.

Page 8: Agile Systeemontwikkeling Met Scrum   4 Maart 2010

Whitehorses B.V.

Vraag 1De meest effectieve manier van kennisoverdracht is …

1. … een document opstellen.

2.... praten.

Page 9: Agile Systeemontwikkeling Met Scrum   4 Maart 2010

Whitehorses B.V.

Vraag 2De klant veranderd steeds van mening, dat is…

1. … slecht, want de voortgang is onbeheersbaar.

2. … goed, want de oplossing wordt steeds beter.

Page 10: Agile Systeemontwikkeling Met Scrum   4 Maart 2010

Whitehorses B.V.

Vraag 3Architectuur …

1. … geeft richting aan de realisatie.

2. … volgt de realisatie.

Page 11: Agile Systeemontwikkeling Met Scrum   4 Maart 2010

Whitehorses B.V.

Vraag 4De klant test software …

1. … om te toetsen of de oplossing voldoet aan de afspraken.

2. … om te toetsen of de oplossing een goede oplossing is.

Page 12: Agile Systeemontwikkeling Met Scrum   4 Maart 2010

Whitehorses B.V.

Vraag 5Je weet wat je krijgt door …

1. … informatieanalyse en ontwerp.

2. … software te maken en deze te demonstreren.

Page 13: Agile Systeemontwikkeling Met Scrum   4 Maart 2010

Whitehorses B.V.

Klaar!

Page 14: Agile Systeemontwikkeling Met Scrum   4 Maart 2010

Whitehorses B.V.

Score

5traditioneel

10agile

Page 15: Agile Systeemontwikkeling Met Scrum   4 Maart 2010

Whitehorses B.V.

WAT IS AGILE?

Page 16: Agile Systeemontwikkeling Met Scrum   4 Maart 2010

Whitehorses B.V.

Wat is niet agile?

Tractiecontrole auto’s

Joint Strike Fighter

OpgroeienLeren

TomTom

Huiskamerthermostaat Evolutie

Wetenschap (experimenten)

SamenwerkenLopen

Page 17: Agile Systeemontwikkeling Met Scrum   4 Maart 2010

Whitehorses B.V.

Reageren op veranderingen

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23

Meting Polynomial (Meting)Ondergrens Bovengrens

Page 18: Agile Systeemontwikkeling Met Scrum   4 Maart 2010

Whitehorses B.V.

Niet reageren op veranderingen

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23

Waarde Ondergrens Bovengrens

Page 19: Agile Systeemontwikkeling Met Scrum   4 Maart 2010

Whitehorses B.V.

Klassieke antwoord

Beter voorspellen●Analyse/ontwerp●Architectuur●Planning

Beter bewaken●Changeproces●Contracten

Page 20: Agile Systeemontwikkeling Met Scrum   4 Maart 2010

Whitehorses B.V.

Kun je voorspellen?

Complex

Orde

Chaos

Complexiteit techniek

Com

plex

iteit

omge

ving

Complexiteit bepaalt

voorspelbaarheid

Page 21: Agile Systeemontwikkeling Met Scrum   4 Maart 2010

Whitehorses B.V.

Hoe zit dat met ICT?

Gewijzigde inzichten

Terminologie

Externe partijen

Politiek

Kennis en vaardigheden

Bugs in standaardsoftware

Organisatorische implementatie

Beheerafdeling

Besluitvaardigheid

Wetgeving

Andere projecten

Interface

Page 22: Agile Systeemontwikkeling Met Scrum   4 Maart 2010

Whitehorses B.V.

Effect klassieke aanpak

Kosten van voorspellen

Voorspelbaarheid

Focus

Projectvoortgang

Software maken

BewakenVoorspellen

Page 23: Agile Systeemontwikkeling Met Scrum   4 Maart 2010

Whitehorses B.V.

Effect klassieke aanpak

Hoeveel waarde creëert het project?

Geleverde waardeGevraagde waardeMinimale waarde

Tijd

End Of Life

Page 24: Agile Systeemontwikkeling Met Scrum   4 Maart 2010
Page 25: Agile Systeemontwikkeling Met Scrum   4 Maart 2010
Page 26: Agile Systeemontwikkeling Met Scrum   4 Maart 2010

Whitehorses B.V.

SCRUMEen agile framework voor productontwikkeling

Page 27: Agile Systeemontwikkeling Met Scrum   4 Maart 2010

Whitehorses B.V.

BasisprincipesLerend vermogen • Kleine stapjes zetten

• Bewijzen, niet voorspellen

Waarde • De eindklant bepaalt de waarde• Belangrijke zaken eerst

Team • Multidisciplinair team• Elkaar helpen

Transparantie • Alles is op elk moment voor iedereen zichtbaar

Page 28: Agile Systeemontwikkeling Met Scrum   4 Maart 2010

Whitehorses B.V.

Agile Manifesto

http://www.agilemanifesto.org/

Belangrijker Belangrijk

Mensen en interactie boven processen en tools

Werkende software boven gedetailleerde documentatie

Samenwerken met de klant boven contractonderhandeling

Reageren op verandering boven strikt het plan volgen

Page 29: Agile Systeemontwikkeling Met Scrum   4 Maart 2010

Whitehorses B.V.

Het Scrum proces

Sprintplanning

SprintSoftware

Documentatie

Sprintreview

Sprintretrospective

Product Backlog

Sprint Backlog

Daily

Scr

um

Daily

Scr

um

Daily

Scr

um

Daily

Scr

um

Daily

Scr

um

Daily

Scr

um

Daily

Scr

um

Daily

Scr

um

Daily

Scr

um

Daily

Scr

um

Page 30: Agile Systeemontwikkeling Met Scrum   4 Maart 2010

Whitehorses B.V.

Het Scrum proces

Sprint Planning 1 dagUitvoering 1 à 3 weken

Sprint Review ½ dagSprint Retrospective ½ dag

Page 31: Agile Systeemontwikkeling Met Scrum   4 Maart 2010

Whitehorses B.V.

Scrum rollenProduct Owner Team Scrum Master• Scope• Geld• Tijd• Business Case

• Zelfsturend• Maakt oplossing• Schat inspanning• Max. 9 mensen• Multi-disciplinair

• Communicatie• Hindernissen• Agile coach

Product Backlog

SoftwareDocumentatie

Page 32: Agile Systeemontwikkeling Met Scrum   4 Maart 2010

Whitehorses B.V.

Werkvoorraad op wens-niveau

Behoefte

Wens

Oplossing

Verantwoordelijkheden USER STORY

Product Owner Team

WensBusiness ValueAcceptatiecriteria

Story Points(konijnen)

Page 33: Agile Systeemontwikkeling Met Scrum   4 Maart 2010

Whitehorses B.V.

User story: INVESTIndependent OnafhankelijkNegotiable Vrij wijzigbaar tot het moment van een Sprint

PlanningValuable Voegt waarde toe voor de eindklantEstimatable Inspanning schatbaar door de mensen die het doenSmall Maximaal enkele dagen werkTestable Je moet het kunnen testen

Page 34: Agile Systeemontwikkeling Met Scrum   4 Maart 2010

Whitehorses B.V.

Scrum planning (dag)

●Daily Scrum en Task Board

Page 35: Agile Systeemontwikkeling Met Scrum   4 Maart 2010

Whitehorses B.V.

Scrum planning (Sprint)

●Burndown chart

Burndown grafiek

t

Ure

n te

gaa

n

Page 36: Agile Systeemontwikkeling Met Scrum   4 Maart 2010

Whitehorses B.V.

Scrum planning (release)

tijd

Story Points350

250

150

50

●Release planning

Page 37: Agile Systeemontwikkeling Met Scrum   4 Maart 2010

Whitehorses B.V.

Leren en verbeteren

WensWerkelijke behoefte

Require-ments

Ontwerp

Software

Test

Oplossing(?) Oplossing

Page 38: Agile Systeemontwikkeling Met Scrum   4 Maart 2010

Whitehorses B.V.

Effecten agile aanpak

Focus

Projectvoortgang

Onzekerheid

Projectvoortgang

BewakenVoorspellen

Software maken

Page 39: Agile Systeemontwikkeling Met Scrum   4 Maart 2010

Whitehorses B.V.

Effecten agile aanpak

0

20

40

60

80

100

120

Hoeveel waarde creert het project?

Geleverde waardeGevraagde waardeMinimale waarde

Tijd

Page 40: Agile Systeemontwikkeling Met Scrum   4 Maart 2010

Whitehorses B.V.

Scrum zegt niets over

●Ontwerpmethode en -standaarden●Programmeermethode en –

standaarden●Testmethode en –standaarden●Etc.

Page 41: Agile Systeemontwikkeling Met Scrum   4 Maart 2010

Whitehorses B.V.

Bovendien…

All models are wrong, but some are useful.(George E. P. Box)

In theory, there is no difference between theory and practice. In practice, there is!“

(Chuck Reid)

Page 42: Agile Systeemontwikkeling Met Scrum   4 Maart 2010

Whitehorses B.V.

AGILE IN DE PRAKTIJKBeyond Scrum

Page 43: Agile Systeemontwikkeling Met Scrum   4 Maart 2010

Whitehorses B.V.

Agile

Cultuur

Manage- ment

Business Case

Architec-tuurOntwerp

Bouwen

Testen

Page 44: Agile Systeemontwikkeling Met Scrum   4 Maart 2010

Whitehorses B.V.

Agile cultuurStarten van een project doe je…

Afwijkingen tijdens project…

Westerse cultuur

snelwachten kost geld

zijn slecht moet je voorkomen

Aziatische cultuur

na afwegen opties worden verwacht

Page 45: Agile Systeemontwikkeling Met Scrum   4 Maart 2010

Whitehorses B.V.

Probleem: vertrouwenPositief

Negatief

‘Geloof’Feiten

WantrouwenWantrouwentotdat bewezen

Vertrouwenzolang… Vertrouwen

Page 46: Agile Systeemontwikkeling Met Scrum   4 Maart 2010

Whitehorses B.V.

PRINCE2 + Scrum

Directing a Project

Initiating a Project

Controlling a Stage

Managing Stage

Boundaries

Closing a Project

Managing Product Delivery

Starting Up a Project

Bestuur

Leiding

Uitvoering Scrum

Page 47: Agile Systeemontwikkeling Met Scrum   4 Maart 2010

Whitehorses B.V.

PRINCE2 toleranties

Scope

• Minimaal op te leveren:

alle User Stories met Business Value 1 en 2

Geld

• Géén toleranties:

12 iteraties * 6 FTE * € 100

Tijd

• Géén toleranties:

12 iteraties1 juni gereed

Page 48: Agile Systeemontwikkeling Met Scrum   4 Maart 2010

Whitehorses B.V.

Transparantie

●Laat zien wat je doet●Leren en verbeteren Sprint

Lessons learned

Sprint

Lessons learned

Page 49: Agile Systeemontwikkeling Met Scrum   4 Maart 2010

Whitehorses B.V.

Fase rapportages

tijd

story points350

250

150

50

Page 50: Agile Systeemontwikkeling Met Scrum   4 Maart 2010

Whitehorses B.V.

Agile (project)management

Page 51: Agile Systeemontwikkeling Met Scrum   4 Maart 2010

Whitehorses B.V.

Agile Business Case

Start

Sprint 1

Sprint 2

Sprint 3Sprint 4

Page 52: Agile Systeemontwikkeling Met Scrum   4 Maart 2010

Whitehorses B.V.

Agile architectuur

● Incrementeel●Niet voorspellen,

maar veranderingen faciliteren

●Architectuur valideren door programmeren

●Leren en verbeteren

Sprint 3

Sprint 2

Sprint 1

Start

Page 53: Agile Systeemontwikkeling Met Scrum   4 Maart 2010

Whitehorses B.V.

●Ontwerp is géén contract●Kennisoverdracht kan ook met praten

Niet in een hokje zitten maar samenwerken●Programmeur maakt ontwerp●Uitzondering: procesontwerp

Agile ontwerp

Documentatie(ontwerp)

Behoefteof Wens Sprint Software

Page 54: Agile Systeemontwikkeling Met Scrum   4 Maart 2010

Whitehorses B.V.

Agile programmeren

●Alleen bouwen wat gevraagd is, niet meer

●Refactoring is goed●Eenvoudig is beter dan slim●Kennis van klantprocessen is essentieel●Kwaliteit inbouwen, niet achteraf

toetsen●Code = technische documentatie

Page 55: Agile Systeemontwikkeling Met Scrum   4 Maart 2010

Whitehorses B.V.

Agile testen

●Programmeur test●Tester maakt

testframework●Doel is makkelijk

maken softwareaanpassingen

Page 56: Agile Systeemontwikkeling Met Scrum   4 Maart 2010

Whitehorses B.V.

PROJECT WMSEen praktijkvoorbeeld

Page 57: Agile Systeemontwikkeling Met Scrum   4 Maart 2010

Whitehorses B.V.

Status februari 2009

Problemen:● Veel wijzigende inzichten, veel spanning● Doorlooptijd Functioneel Ontwerp 1 maand● Na 2 jaar 30% gereed● 9 maanden voor

resterende 70%● Waterval

Q1 2008

Q2 2008

Q3 2008

Q4 2008

Q1 2009

Q2 2009

Q3 2009

Q4 2009

DoelTrend

Page 58: Agile Systeemontwikkeling Met Scrum   4 Maart 2010

Whitehorses B.V.

Uitdagingen

●Achterstand●Besluitvaardigheid●Grip●Acceptatiegraad en vertrouwen

Page 59: Agile Systeemontwikkeling Met Scrum   4 Maart 2010

Whitehorses B.V.

Oplossingen

●PRINCE2 voor de opdrachtgever●Scrum voor het team●Multi-disciplinair team met gebruikers●Ontwerp is niet bindend●Analyse beperken●Concept procesontwerp geeft richting

Page 60: Agile Systeemontwikkeling Met Scrum   4 Maart 2010

Whitehorses B.V.

Resultaat december 2009● Doel gehaald● Zeer positieve samenwerking business – IT● Oplossing die past● Hoge acceptatiegraad● Goede kwaliteit● Fun!

Q1 2008

Q2 2008

Q3 2008

Q4 2008

Q1 2009

Q2 2009

Q3 2009

Q4 2009

DoelTrend

Page 61: Agile Systeemontwikkeling Met Scrum   4 Maart 2010

Whitehorses B.V.

Conclusie

●Agile vraagt om veel veranderingen●100% agile is niet altijd de beste optie●Agile implementeren is een agile

proces

Page 62: Agile Systeemontwikkeling Met Scrum   4 Maart 2010

Whitehorses B.V.

Leesvoer

●Mary & Tom Poppendieck

Page 63: Agile Systeemontwikkeling Met Scrum   4 Maart 2010

Whitehorses B.V.

Vragen?