Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Getting Agile with Scrum

Mike Cohn
June 19, 2012

Getting Agile with Scrum

Scrum is one of the leading agile software development processes, with over 170,000 Certified ScrumMasters worldwide. Since its origin on Japanese new product development projects in the ’80s, Scrum has become recognized as one of the best project management frameworks for handling rapidly changing or evolving projects. Especially useful on projects with lots of technology or requirements uncertainty, Scrum is a proven, scalable agile process for managing software projects.

This session presented an overview of all key aspects of Scrum, including product and sprint backlog, the sprint planning meeting, the sprint review, conducting a sprint retrospective, activities that occur during sprints, measuring and monitoring progress, and scaling Scrum to work with large and distributed teams. Also covered were the roles and responsibilities of the ScrumMaster, the product owner and the Scrum team. This presentation is equally suited for managers, programmers, testers, product managers and anyone else interested in improving product delivery.

If you are interested in introducing Scrum to your organization, you may want to download the freely redistributable PowerPoint or Keynote version of this presentation.

Mike Cohn

June 19, 2012
Tweet

More Decks by Mike Cohn

Other Decks in Business

Transcript

  1. ® © 2003–2012 Mountain Goat Software® We’re losing the relay

    race Hirotaka Takeuchi and Ikujiro Nonaka, “The New New Product Development Game”, Harvard Business Review, January 1986. “The… ‘relay race’ approach to product 01B18;<91:@I9-E/;:Q5/@C5@4@413;-8?;2 9-D59A9?<110-:0Q1D5.585@E:?@1-0- 4;85?@5/;>N>A3.EO-<<>;-/4KC41>1-@1-9 tries to go the distance as a unit, passing the .-88.-/7-:02;>@4K9-E.1@@1>?1>B1@;0-EO? competitive requirements.” 2
  2. ® © 2003–2012 Mountain Goat Software® Source: “How Apple Does

    It,” Time Magazine, October 24, 2005 by Lev Grossman “Apple employees talk incessantly about what they call ‘deep collaboration’ or ‘cross- pollination’ or ‘concurrent engineering.’ “Essentially it means that products don’t pass from team to team. There aren’t discrete, sequential development stages. Instead, it’s simultaneous and organic. “Products get worked on in parallel by all departments at once—design, hardware, software—in endless rounds of interdisciplinary design reviews.” 3
  3. ® © 2003–2009 Mountain Goat Software® '/>A94-?.11:A?10.E G!5/>;?;2@ GYahoo GGoogle

    GElectronic Arts GIBM GLockheed Martin GPhilips GSiemens GNokia GCapital One GBBC GIntuit GApple GNielsen Media GFirst American Corelogic GQualcomm GTexas Instruments G'-81?2;>/1/;9 GJohn Deere GLexis Nexis G'-.>1 G'-81?2;>/1/;9 GTime Warner GTurner Broadcasting GOce 4
  4. ® © 2003–2009 Mountain Goat Software® '/>A94-?.11:A?102;> G ;991>/5-8?;2@C->1 G

    In-house development G Contract development G Fixed-price projects G Financial applications G '# /1>@5P10 applications G 9.10010?E?@19? G 24x7 systems with 99.999% uptime requirements G the Joint Strike Fighter G Video game development G -<<>;B108521/>5@5/-8 systems G '-@1885@1/;:@>;8?;2@C->1 G +1.?5@1? G -:04180?;2@C->1 G !;.581<4;:1? G Network switching applications G ISV applications G ';91;2@418->31?@ applications in use 5
  5. ® © 2003–2009 Mountain Goat Software® Characteristics G '182;>3-:5F5:3@1-9? G

    $>;0A/@<>;3>1??1?5:-?1>51?;29;:@48;:3 “sprints” G &1=A5>191:@?->1/-<@A>10-?5@19?5:-85?@;2 L<>;0A/@.-/78;3M G ";?<1/5P/1:35:11>5:3<>-/@5/1?<>1?/>5.10 G Uses generative rules to create an agile 1:B5>;:91:@2;>0185B1>5:3<>;61/@? G #:1;2@41L-3581<>;/1??1?M 6
  6. ® © 2003–2012 Mountain Goat Software® Project noise level Simple

    Complex Anarchy Com plicated Technology Requirements ->2>;9 Agreement Close to Agreement Close to Certainty ->2>;9 Certainty ';A>/1Strategic Management and Organizational Dynamics.E&-8<4'@-/1E5: Agile Software Development with Scrum.E 1:'/4C-.1>-:0!57111081 ® © 2003–2009 Mountain Goat Software® 7
  7. ® © 2003–2012 Mountain Goat Software® Scrum Cancel 52@C>-< Return

    Sprint 1-4 weeks Return Sprint goal Sprint .-/78;3 $;@1:@5-88E?45<<-.81 product increment Product .-/78;3 Vouchers 52@C>-< Vouchers Cancel 24 hours 8
  8. ® © 2003–2009 Mountain Goat Software® Sprints G '/>A9<>;61/@?9-71<>;3>1??5:-?1>51?;2 “sprints”

    G Typical duration is 2–4 weeks or a calendar month at most G /;:?@-:@0A>-@5;:81-0?@;-.1@@1>>4E@49 G Product is designed, coded, and tested during the sprint 9
  9. ® © 2003–2009 Mountain Goat Software® Sequential vs. overlapping development

    ';A>/1L(41"1C"1C$>;0A/@1B18;<91:@-91M.E(-71A/45 and Nonaka. Harvard Business Review, January 1986. &-@41>@4-:0;5:3-88;2 one thing at a time... ...Scrum teams do a little ;21B1>E@45:3-88@41@591 Requirements Design Code Test 10
  10. ® © 2003–2009 Mountain Goat Software® No changes during a

    sprint G Plan sprint durations around how long you can /;995@@;711<5:3/4-:31;A@;2@41?<>5:@ Change 11
  11. ® © 2003–2012 Mountain Goat Software® '/>A92>-91C;>7 G Product owner

    G ScrumMaster G Team Roles G Sprint planning G Sprint review G Sprint retrospective G Daily scrum meeting Ceremonies G $>;0A/@.-/78;3 G '<>5:@.-/78;3 G Burndown charts >@52-/@? 12
  12. ® © 2003–2012 Mountain Goat Software® '/>A92>-91C;>7 G Sprint planning

    G Sprint review G Sprint retrospective G Daily scrum meeting Ceremonies G $>;0A/@.-/78;3 G '<>5:@.-/78;3 G Burndown charts >@52-/@? G Product owner G ScrumMaster G Team Roles 13
  13. ® © 2003–2009 Mountain Goat Software® Product owner G 1P:1@4121-@A>1?;2@41<>;0A/@

    G Makes scope vs. schedule decisions G &1?<;:?5.812;>-/451B5:3P:-:/5-83;-8?;2@41 project G $>5;>5@5F1@41<>;0A/@.-/78;3 G Adjust 21-@A>1?-:0<>5;>5@E1B1>E?<>5:@-? needed G Accept or reject work results 14
  14. ® © 2003–2009 Mountain Goat Software® The ScrumMaster G &1?<;:?5.812;>1:-/@5:3'/>A9B-8A1?

    and practices G Removes impediments G ;-/41?@41@1-9@;@415>.1?@<;??5.81 <1>2;>9-:/1 G 18<?59<>;B1@1-9<>;0A/@5B5@E5:-:EC-E<;??5.81 G :-.81/8;?1/;;<1>-@5;:-/>;??-88>;81?-:0 2A:/@5;:? G '45180@41@1-92>;91D@1>:-85:@1>21>1:/1 15
  15. ® © 2003–2009 Mountain Goat Software® The team G Typically

    5-9 people G >;??2A:/@5;:-8 G Programmers, testers, user experience designers, etc. G M19.1>??4;A80.12A88@591 G !-E.11D/1<@5;:?13[email protected]?1-095:5?@>-@;> G (1-9?->1?182;>3-:5F5:3 G 01-88E:;@5@81?.A@>->18E-<;??5.585@E G !19.1>?45<?4;A80/4-:31;:8E.1@C11:?<>5:@? 16
  16. ® © 2003–2012 Mountain Goat Software® G Product owner G

    ScrumMaster G Team Roles '/>A92>-91C;>7 G $>;0A/@.-/78;3 G '<>5:@.-/78;3 G Burndown charts >@52-/@? G Sprint planning G Sprint review G Sprint retrospective G Daily scrum meeting Ceremonies 17
  17. ® © 2003–2012 Mountain Goat Software® Sprint planning meeting Sprint

    backlog Sprint goal Who • Team, ScrumMaster, & Product Owner Agenda • Discuss top priority product backlog items • Team selects which to do Why • Know what will be worked on • Understand it enough to do it 18
  18. ® © 2003–2009 Mountain Goat Software® Sprint planning G (1-9?181/@?5@19?2>;9@41<>;0A/@.-/78;3@41E/-:

    commit to completing G '<>5:@.-/78;35?/>1-@10 G (-?7?->1501:@5P10-:01-/45?1?@59-@10  4;A>? G ;88-.;>-@5B18E:;@0;:1-8;:1.E@41'/>A9!-?@1> G High-level design is considered As a vacation planner, I want to see photos of the hotels. ;01@41950081@51>4;A>? ;01@41A?1>5:@1>2-/1 +>5@1@1?@PD@A>1? ;01@412;;/8-?? )<0-@1<1>2;>9-:/1@1?@? 19
  19. ® © 2003–2009 Mountain Goat Software® The daily scrum G

    Parameters G Daily G 15-minutes G Stand-up G ";@2;><>;.819?;8B5:3 G Whole world is invited G #:8E@1-9919.1>?'/>A9!-?@1><>;0A/@ owner, can talk G Helps avoid other unnecessary meetings 20
  20. ® © 2003–2009 Mountain Goat Software® Everyone answers 3 questions

    G These are not?@-@A?2;>@41'/>A9!-?@1> G (41E->1/;995@91:@?5:2>;:@;2<11>? What did you do yesterday? 1 What will you do today? 2 Is anything in your way? 3 21
  21. ® © 2003–2009 Mountain Goat Software® The sprint review G

    Team presents what it accomplished during the sprint G (E<5/-88E@-71?@412;>9;2-019;;2:1C 21-@A>1?;>A:01>8E5:3->/45@1/@A>1 G :2;>9-8 G 2-hour prep time rule G No slides G Whole team participates G Invite the world 22
  22. ® © 2003–2009 Mountain Goat Software® Sprint retrospective G Periodically

    take a look at what is and is not working G Typically around 30 minutes G ;:1-2@1>1B1>E?<>5:@ G Whole team participates G ScrumMaster G Product owner G Team G $;??5.8E/A?@;91>?-:0;@41>? 23
  23. ® © 2003–2009 Mountain Goat Software® Start / Stop /

    Continue G Whole team gathers and discusses what they’d 8571@; Start doing Stop doing Continue doing This is just one of many ways to do a sprint retrospective. 24
  24. ® © 2003–2012 Mountain Goat Software® G Product owner G

    ScrumMaster G Team Roles '/>A92>-91C;>7 G Sprint planning G Sprint review G Sprint retrospective G Daily scrum meeting Ceremonies G $>;0A/@.-/78;3 G '<>5:@.-/78;3 G Burndown charts >@52-/@? 25
  25. ® © 2003–2009 Mountain Goat Software® $>;0A/@.-/78;3 G The requirements

    G 85?@;2-8801?5>10C;>7;: the project G Ideally expressed such that each item has value to the A?1>?;>/A?@;91>?;2@41 product G $>5;>5@5F10.E@41<>;0A/@ owner G &1<>5;>5@5F10-@@41?@->@;2 each sprint This is the <>;0A/@.-/78;3 26
  26. ® © 2003–2012 Mountain Goat Software® ?-9<81<>;0A/@.-/78;3 Backlog item Estimate

    Allow a guest to make a reservation 3 As a guest, I want to cancel a reservation. 5 ?-3A1?@C-:@@;/4-:31@410-@1?;2- reservation. 3 As a hotel employee, I can run RevPAR >1<;>@?>1B1:A1<1>-B-58-.81>;;9 8 Improve exception handling 8 ... 30 ... 50 27
  27. ® © 2003–2009 Mountain Goat Software® Sprint goal A short

    statement of what the work will be focused on during the sprint Sprint 8 The checkout process—pay for an order, pick shipping, order gift wrapping, etc. Sprint 7 Implement basic shopping cart functionality including add, remove, and update. 28
  28. ® © 2003–2009 Mountain Goat Software® !-:-35:3@41?<>5:@.-/78;3 G :05B50A-8??53:A<2;>C;>7;2@415>;C:/4;;?5:3 G

    Work is never assigned G Estimated work remaining is updated daily G :E@1-9919.1>/-:-000181@1;>/4-:31@41 ?<>5:@.-/78;3 G +;>72;>@41?<>5:@191>31? G 2C;>75?A:/81->01P:1-?<>5:@.-/78;35@19C5@4- 8->31>-9;A:@;2@591-:0.>1-75@0;C:8-@1> G )<0-@1C;>7>19-5:5:3-?9;>1.1/;91?7:;C: 29
  29. ® © 2003–2012 Mountain Goat Software® ?<>5:@.-/78;3 Tasks ;01@41A?1>5:@1>2-/1 Code

    the middle tier Test the middle tier Write online help +>5@1@412;;/8-?? Mon 8 16 8 12 8 Tues 4 12 16 8 Wed Thur 4 11 8 4 Fri 8 8 Add error logging 8 10 16 8 8 30
  30. ® © 2003–2012 Mountain Goat Software® ?<>5:@.A>:0;C:/4->@ 0 200 400

    600 800 1,000 4/29/02 5/6/02 5/13/02 5/20/02 5/24/02 Hours 31
  31. ® © 2003–2012 Mountain Goat Software® Hours 40 30 20

    10 0 Mon Tue Wed Thu Fri Tasks ;01@41A?1>5:@1>2-/1 Code the middle tier Test the middle tier Write online help Mon 8 16 8 12 Tues Wed Thur Fri 4 12 16 7 11 8 10 16 8 50 32
  32. ® © 2003–2009 Mountain Goat Software® '/-8-.585@E G Typical individual

    team is 7 ± 2 people G '/-8-.585@E/;91?2>;9@1-9?;2@1-9? G Factors in scaling G (E<1;2-<<85/-@5;: G (1-9?5F1 G Team dispersion G Project duration G '/>A94-?.11:A?10;:<>;61/@?;2;B1>   people 33
  33. ® © 2003–2012 Mountain Goat Software® Programmers ScrumMasters UI Designers

    Testers DBAs Communities of Practice help scale and cut across Scrum teams 35
  34. ® © 2003–2009 Mountain Goat Software® A Scrum reading list

    G Agile Estimating and Planning.E!571;4: G Agile Game Development with Scrum .E85:@;:15@4 G Agile Product Ownership.E&;9-:$5/481> G Agile Retrospectives.E?@41>1>.E-:05-:- ->?1: G Agile Testing: A Practical Guide for Testers and Agile Teams.E 5?- Crispin and Janet Gregory G Coaching Agile Teams.E E??-075:? G Essential Scrum.E1::1@4&A.5: G Succeeding with Agile: Software Development using Scrum.E!571 Cohn G User Stories Applied for Agile Software Development.E!571;4: 36
  35. ® © 2003–2009 Mountain Goat Software® .;A@@45?<>1?1:@-@5;: G >1-@5B1;99;:?B1>?5;:;2@45? <>1?1:@-@5;:5?-B-58-.81-@

    CCC9;A:@-5:3;-@?;2@C->1/;9 ?/>A9-<>1?1:@-@5;: G B-58-.815:1E:;@1-:0$;C1>$;5:@2;>9-@ G (>-:?8-@105:@; 8-:3A-31??;2-> 37