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