AgileDevelopment<br />Starting at the basics<br />Arne Vandamme<br />
AgileManifesto<br />Howitstarted…<br />In 2001<br />17 software developers<br />discussedlightweightdevelopmentmethods<br ...
AgileManifesto<br />Individuals and interactions <br />over processes and tools<br />3<br />
AgileManifesto<br />Individuals and interactions <br />over processes and tools<br />Working software <br />over comprehen...
AgileManifesto<br />Individuals and interactions <br />over processes and tools<br />Working software <br />over comprehen...
AgileManifesto<br />Individuals and interactions <br />over processes and tools<br />Working software <br />over comprehen...
Agilemanifesto: underlyingprinciples<br />Customer satisfaction by rapid delivery of useful software<br />Welcome changing...
Typicallyagile?<br />Smallincrementswith minimal planning<br />Verylittlelong-term planning<br />Adaptive			Predictive<b...
Waterfallmethodology<br />9<br />
Iterations<br />10<br />
Mythbusting: planning<br />In agiledevelopment,<br />planning is not important.<br />11<br />
Mythbusting: planning<br />In agiledevelopment,<br />planning is not important.<br />Wrong!<br />12<br />
Mythbusting: planning<br />In agiledevelopment,<br />planning is not important.<br />Wrong!<br />Predictive 	= 	plan-drive...
Mythbusting: planning<br />In agiledevelopment,<br />planning is not important.<br />Wrong!<br />Predictive 	= 	plan-drive...
Mythbusting: informal<br />Agilemethods are veryinformal:<br />no procedures, nocommitment…<br />15<br />
Mythbusting: informal<br />Agilemethods are veryinformal:<br />no procedures, nocommitment…<br />On the contrary!<br />16<...
Mythbusting: informal<br />Agilemethods are veryinformal:<br />no procedures, nocommitment…<br />On the contrary!<br />wel...
Iterativedevelopment<br />Iterative is not the same asincremental.<br />Incremental: 	addonto<br />Iterative:			redo/refin...
Example: walkingskeleton<br />19<br />
Iterativedevelopment<br />Start-to-endfunctionality<br />As early as possible<br />Keep refining<br />Keep changing and im...
Concept: User Story<br />Start-to-endfunctionality:<br />Focus on the user/stakeholderfunctionality.<br />Requirements as ...
Concept: Definition of Done<br />When is somethingfinished?<br />Traditionally: what are the acceptance criteria?<br />The...
Concept: Test-DrivenDevelopment<br />Focusingon the user story and acceptance criteria and lesson the implementation:<br /...
SCRUM<br />24<br />
SCRUM: An overview<br />25<br />
SCRUM: Roles<br />Product Owner<br />Representsstakeholders and business.<br />Prioritizes the backlog.<br />Scrum Master<...
SCRUM: A typical sprint<br />Sprint Planning Meeting<br />PO giveswishlistfrom Product Backlog<br />Team elaboratestasks a...
SCRUM: A typical sprint<br />Sprint Planning Meeting<br />Daily Scrum<br />Everyday, same time, same place<br />In front o...
SCRUM: A typical sprint<br />Example Scrum board<br />29<br />
SCRUM: A typical sprint<br />ExampleBurndownchart<br />30<br />
SCRUM: A typical sprint<br />Sprint Planning Meeting<br />Daily Scrum<br />Demo (Sprint Review)<br />Present the completed...
SCRUM: A typical sprint<br />Sprint Planning Meeting<br />Daily Scrum<br />Demo (Sprint Review)<br />Retrospective<br />Te...
SCRUM: An overview<br />33<br />
Kanban<br />“signboard”<br />34<br />
Kanban is all about…<br />Creatingvalueas soon as possible.<br />In software: something is typically business valueonlywhe...
Kanban: visualizingflow<br />36<br />
Kanban: visualizingflow<br />37<br />
Kanban<br />Visualizing the flow:<br />Visualize bottlenecks<br />Limit WIP in each stage:<br />Avoidtoomuch WIP and noten...
A Kanban dailystandup<br />As a team:<br />What is likely to go on and off the board today<br />What is likely to move on ...
Roundup<br />Most agiledevelopmentmethods<br />like SCRUM and Kanban<br />are lightweight<br />but do have a clearprocess ...
Upcoming SlideShare
Loading in...5
×

Agile development introduction

1,057

Published on

A high-level introduction on agile development methods. Going over some concepts, used terminology and a couple of slides specifically on SCRUM and Kanban.

Published in: Business
0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total Views
1,057
On Slideshare
0
From Embeds
0
Number of Embeds
1
Actions
Shares
0
Downloads
0
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

Transcript of "Agile development introduction"

  1. 1. AgileDevelopment<br />Starting at the basics<br />Arne Vandamme<br />
  2. 2. AgileManifesto<br />Howitstarted…<br />In 2001<br />17 software developers<br />discussedlightweightdevelopmentmethods<br />and published the<br />“ManifestoforAgile Software Development”<br />2<br />
  3. 3. AgileManifesto<br />Individuals and interactions <br />over processes and tools<br />3<br />
  4. 4. AgileManifesto<br />Individuals and interactions <br />over processes and tools<br />Working software <br />over comprehensive documentation<br />4<br />
  5. 5. AgileManifesto<br />Individuals and interactions <br />over processes and tools<br />Working software <br />over comprehensive documentation<br />Customer collaboration <br />over contract negotiation<br />5<br />
  6. 6. AgileManifesto<br />Individuals and interactions <br />over processes and tools<br />Working software <br />over comprehensive documentation<br />Customer collaboration <br />over contract negotiation<br />Responding to change <br />over following a plan<br />6<br />
  7. 7. Agilemanifesto: underlyingprinciples<br />Customer satisfaction by rapid delivery of useful software<br />Welcome changing requirements, even late in development<br />Working software is delivered frequently (weeks rather than months)<br />Working software is the principal measure of progress<br />Sustainable development, able to maintain a constant pace<br />Close, daily cooperation between businesspeople and developers<br />Face-to-face conversation is the best form of communication (co-location)<br />Projects are built around motivated individuals, who should be trusted<br />Continuous attention to technical excellence and good design<br />Simplicity<br />Self-organizing teams<br />Regular adaptation to changing circumstances<br />7<br />
  8. 8. Typicallyagile?<br />Smallincrementswith minimal planning<br />Verylittlelong-term planning<br />Adaptive Predictive<br />IterationsWaterfall<br />Eachiteration is more orless a tinywaterfall…<br />8<br />
  9. 9. Waterfallmethodology<br />9<br />
  10. 10. Iterations<br />10<br />
  11. 11. Mythbusting: planning<br />In agiledevelopment,<br />planning is not important.<br />11<br />
  12. 12. Mythbusting: planning<br />In agiledevelopment,<br />planning is not important.<br />Wrong!<br />12<br />
  13. 13. Mythbusting: planning<br />In agiledevelopment,<br />planning is not important.<br />Wrong!<br />Predictive = plan-driven<br />Adaptive = planning-driven<br />13<br />
  14. 14. Mythbusting: planning<br />In agiledevelopment,<br />planning is not important.<br />Wrong!<br />Predictive = plan-driven<br />Adaptive = planning-driven<br />Continuous planning!<br />14<br />
  15. 15. Mythbusting: informal<br />Agilemethods are veryinformal:<br />no procedures, nocommitment…<br />15<br />
  16. 16. Mythbusting: informal<br />Agilemethods are veryinformal:<br />no procedures, nocommitment…<br />On the contrary!<br />16<br />
  17. 17. Mythbusting: informal<br />Agilemethods are veryinformal:<br />no procedures, nocommitment…<br />On the contrary!<br />well-definedlightweight steps and procedures<br />absolute team commitmentin an iteration<br />17<br />
  18. 18. Iterativedevelopment<br />Iterative is not the same asincremental.<br />Incremental: addonto<br />Iterative: redo/refine<br />A gooditerativeapproach:<br />Deliversbasicstart-to-endfunctionality<br />as early as possible.<br />And keepsrefiningituntil the end.<br />18<br />
  19. 19. Example: walkingskeleton<br />19<br />
  20. 20. Iterativedevelopment<br />Start-to-endfunctionality<br />As early as possible<br />Keep refining<br />Keep changing and improvingquality!<br />Continuously…<br />refactoring<br />testing<br />integrating<br />20<br />
  21. 21. Concept: User Story<br />Start-to-endfunctionality:<br />Focus on the user/stakeholderfunctionality.<br />Requirements as user story…<br />As a <role>, <br />I want <goal/desire> <br />so that <benefit><br />21<br />
  22. 22. Concept: Definition of Done<br />When is somethingfinished?<br />Traditionally: what are the acceptance criteria?<br />The Definition Of Done<br />usuallyalsospecifieshow to testthat the item has been delivered.<br />22<br />
  23. 23. Concept: Test-DrivenDevelopment<br />Focusingon the user story and acceptance criteria and lesson the implementation:<br />Test-Drivendevelopment<br />Write a test butnot the implementation<br />Check that the test fails<br />Make the test succeedbywriting the implementation<br />23<br />
  24. 24. SCRUM<br />24<br />
  25. 25. SCRUM: An overview<br />25<br />
  26. 26. SCRUM: Roles<br />Product Owner<br />Representsstakeholders and business.<br />Prioritizes the backlog.<br />Scrum Master<br />Facilitates the SCRUM process. <br />Removesimpediments.<br />Is not a team lead.<br />Project Team<br />Cross-functional.<br />26<br />
  27. 27. SCRUM: A typical sprint<br />Sprint Planning Meeting<br />PO giveswishlistfrom Product Backlog<br />Team elaboratestasks and estimates<br />Team commitson the Sprint Backlog<br />Sprint Backlog is fixedduring sprint.<br />27<br />
  28. 28. SCRUM: A typical sprint<br />Sprint Planning Meeting<br />Daily Scrum<br />Everyday, same time, same place<br />In front of the Scrum board<br />Max 15 minutes<br />Only PO, SM or Team mayspeak!<br />Each team membersanswers 3 questions:<br />What have youdoneyesterday?<br />What are you planning to do today?<br />Do you have anyproblemspreventingyoufromaccomplishingyour goal?<br />28<br />
  29. 29. SCRUM: A typical sprint<br />Example Scrum board<br />29<br />
  30. 30. SCRUM: A typical sprint<br />ExampleBurndownchart<br />30<br />
  31. 31. SCRUM: A typical sprint<br />Sprint Planning Meeting<br />Daily Scrum<br />Demo (Sprint Review)<br />Present the completedwork to the stakeholders<br />31<br />
  32. 32. SCRUM: A typical sprint<br />Sprint Planning Meeting<br />Daily Scrum<br />Demo (Sprint Review)<br />Retrospective<br />Team reflectson the past sprint<br />What went wellduring the past sprint?<br />Whatcouldbeimproved in the next sprint?<br />Continuousprocessimprovements!<br />32<br />
  33. 33. SCRUM: An overview<br />33<br />
  34. 34. Kanban<br />“signboard”<br />34<br />
  35. 35. Kanban is all about…<br />Creatingvalueas soon as possible.<br />In software: something is typically business valueonlywhenit has been actuallydeployed!<br />2 basicconcepts:<br /> 1. Visualize the flow of work<br />2. Limit work in progress<br />35<br />
  36. 36. Kanban: visualizingflow<br />36<br />
  37. 37. Kanban: visualizingflow<br />37<br />
  38. 38. Kanban<br />Visualizing the flow:<br />Visualize bottlenecks<br />Limit WIP in each stage:<br />Avoidtoomuch WIP and notenoughdone<br />Stimulatecollaborationon bottlenecks<br />Workflow stages betterallowspecialisation.<br />38<br />
  39. 39. A Kanban dailystandup<br />As a team:<br />What is likely to go on and off the board today<br />What is likely to move on the board<br />Where is trafficstuck and howcan we fixit<br />39<br />
  40. 40. Roundup<br />Most agiledevelopmentmethods<br />like SCRUM and Kanban<br />are lightweight<br />but do have a clearprocess and set of rules<br /> and requirea lot of self-discipline<br />and maturity<br />of all the team members<br />40<br />

×