Introduction to Agile Scrum
Upcoming SlideShare
Loading in...5
×
 

Introduction to Agile Scrum

on

  • 369 views

 

Statistics

Views

Total Views
369
Views on SlideShare
369
Embed Views
0

Actions

Likes
0
Downloads
6
Comments
0

0 Embeds 0

No embeds

Accessibility

Categories

Upload Details

Uploaded via as Adobe PDF

Usage Rights

© All Rights Reserved

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Processing…
Post Comment
Edit your comment

Introduction to Agile Scrum Introduction to Agile Scrum Presentation Transcript

  • The Agile Manifesto – 2001 We are uncovering better ways of developing software by doing it and helping others do it. Through this work we have come to value: That is, while there is value in the items on the right, we value the items on the left more. Individuals and interactions over processes and tools Working software over comprehensive documentation Customer collaboration over contract negotiation Responding to change over following a plan
  • AGILE Scrum eXtremeProgramming (“XP”) Test-Driven Development (“TDD”) Crystal DSDM FDD and more…
  • The Essence of Scrum SCRUM Produce Inspect Adapt Plan Sprint Transparency
  • The Foundations of Scrum   There is a cross-functional Dev Team that is stable and 100% dedicated.   The Dev Team decides how to get the work done. It is self-organizing.   The Dev Team plans its Sprints one at a time, at the start of each Sprint.   The Product Owner decides what should be produced.   The Dev Team decides how much it can produce in a Sprint.   The Dev Team’s target in a Sprint is shared, clear, and does not change.   The Dev Team tries to achieve its target, but it may over-deliver orunder-deliver, based on how the Sprint plays out.   Each Sprint is a timebox – its length is never extended.   Each Sprint produces a “potentially shippable product” – in otherwords, thoroughly tested, defect-free, and “done.”   There is a “Definition of Done” that specifies what “done” means.   At the end of each Sprint, we inspect and adapt product and process.
  • Development Starts Release Date Sprint 1 Sprint 2 Sprint 3 Sprint 4 Sprint 5 Sprint 6 Sprint 7 Sprint 8 Sprint 9 Sprint 10 Feature Feature Feature Feature Feature Feature Feature Feature Feature
  • Development Starts Release Date Sprint 1 Sprint 2 Sprint 3 Sprint 4 Sprint 5 Sprint 6 Sprint 7 Sprint 8 Sprint 9 Sprint 10 Feature Feature Feature Feature Feature Feature Feature Feature Feature
  • Development Starts Release Date Sprint 1 Sprint 2 Sprint 3 Sprint 4 Sprint 5 Sprint 6 Sprint 7 Sprint 8 Sprint 9 Sprint 10
  • Development Starts Release Date Sprint 1 Sprint 2 Sprint 3 Sprint 4 Sprint 5 Sprint 6 Sprint 7 Sprint 8 Sprint 9 Sprint 10 “Done” – Coded,Tested, No Defects Remaining
  • Development Starts Release Date Sprint 1 Sprint 2 Sprint 3 Sprint 4 Sprint 5 Sprint 6 Sprint 7 Sprint 8 Sprint 9 Sprint 10 “Done” – Coded,Tested, No Defects Remaining
  • Development Starts Release Date Sprint 1 Sprint 2 Sprint 3 Sprint 4 Sprint 5 Sprint 6 Sprint 7 Sprint 8 Sprint 9 Sprint 10 “Done” – Coded,Tested, No Defects Remaining
  • The Relative Value of Different Features Feature 1 Feature 2 Feature 3 Feature 4 Feature 5 Feature 6 Feature 7 Feature 8 Feature 9 Typical Large-ScaleSoftware Application Features 1-5 Features 6-10 Features 11-15 Features 16-20 Features 21-25 Features 26-30 Features 31-35 Features 36-40 Features 41-45 Features 46-50 Features 51-55 Features 56-60 Features 61-65 Features 66-70 Features 71-75 Features 76-80 Features 81-85 Features 86-90 Features 91-95 Features 96-100
  • Development Starts Release Date Sprint 1 Sprint 2 Sprint 3 Sprint 4 Sprint 5 Sprint 6 Sprint 7 Sprint 8 Sprint 9 Sprint 10 100% 50% % of TotalBusinessValue Completed
  • Product Owner Dev Team Input from End-Users, Customers, Team andOther Stakeholders ScrumMaster SCRUM ProductBacklog 8 9 10 11 12 “The Scrum Team”
  • Sprint 1-4 Weeks PotentiallyShippableProduct Increment Review No Changes in Duration or Goal Retrospective Product Owner Dev Team Daily ScrumMeeting andArtifacts Update Input from End-Users, Customers, Team andOther Stakeholders SprintBacklog Product Backlog Grooming ScrumMaster SCRUM ProductBacklog 8 9 10 11 12 Responsible for maximizing the value of thework done by the Dev Team   Owns vision and goals / ROI of the work   Final decisionmaker on content and orderof the Product Backlog (the list of itemsneeded to successfully achieve goals / ROI)   Owns the date and scope of the Release Responsible for doing the work   7 +/- 2 People   Cross-functional   Self-organizing Responsible for guiding the PO and Dev Teamto achieve optimal results with Scrum   3 P’s:   P rocess Owner - Teaches Scrum to everyone - Coaches everyone on how to use Scrumto deliver maximum value and quality - Enforces the rules of Scrum - Acts as a change agent for organization   P roblem Solver - Helps remove blocks and assists the DevTeam and Product Owner in any waythey can, to achieve the best results   P rotector - Protects the Dev Team from disruption
  • Product Owner Dev Team ScrumMaster SCRUM Role might be played bya member of the Dev Team or the ex-Project Manager. We avoid having someone with amanagement title in this role. “Developers” = Architects, Coders,Testers, Business Analysts, UIDesigners, Doc Writers, etc. Role might be played by Customer,Customer Representative, Product Manager, Product Marketing Manager,Program Manager, Project Manager.
  • Sprint 4 Weeksor Less PotentiallyShippable Increment Product Owner Review No Changes To Goal or Timebox Retrospective Dev Team Daily ScrumMeeting Input from End-Users, Customers,Team andOther Stakeholders SprintBacklog Product Backlog Grooming Sprint Planning Meeting Team Selects How MuchTo Target ScrumMaster SCRUM ProductBacklog Detailed Plan forSprint OrderedList ofWhat’sNeeded
  • SPRINT BACKLOG Blow up 10 Balloons Measure Radius of All 10 Balloons CalculateVolumes of All 10 Balloons Writing Requirements in Scrum
  • User Stories   User Stories are an Agile approach torequirements   Widely used by Scrum Teams   Not required, but highly recommend   What is a User Story?   A User Story is a short, plain-language descriptionof the needs of a user, centered on what theyneed or want to do, and why   As a <type of user>, I want <some goal> so that<some reason>.
  • 3 C’s: Card, Confirmation, Conversation As a Customer who hasbooked a flight, I want to cancel my booking,So that I can receive a refundand make other plans ☐ Verify that ticket price minus applicablecancellation fee is refunded to credit card ☐ Verify that 10% cancellation fee is deductedfrom refunded amount for economy tickets ☐ Verify that no fee is deducted fromrefunded amount for business class tickets ☐ Verify that confirmation email is sent ☐ Verify that seat reservation is released CARD CONFIRMATION
  •   The card does not include all the detailedinformation needed by the Dev Team   This is because we want to force a conversationbetween the Dev Team and Product Owner   This conversation begins at the start of the project   Dev Team and Product Owner might spend a day talkingthrough the initial list of User Stories   This conversation continues during each Sprint   During Sprint Planning Meeting   Day-by-day during the Sprint   During Product Backlog Grooming   During Sprint Review 3 C’s: Card, Confirmation, Conversation – intentionally!
  • User Stories   Everyone writes User Stories. The Product Ownerdecides which to add to the Product Backlog, andwhat the priority should be.   At the beginning of a project, a Story Writingworkshop is typically held. The Product Ownercreates the initial Product Backlog from this.   New User Stories are written during the project andadded to the Product Backlog, as new needs appear.   Large Stories are called “Epics”. Epics are brokendown into smaller stories as they move up theProduct Backlog, and get closer to being worked on.
  • Sprint 4 Weeksor Less PotentiallyShippable Increment Product Owner Review No Changes To Goal or Timebox Retrospective Dev Team Daily ScrumMeeting Input from End-Users, Customers,Team andOther Stakeholders SprintBacklog Product Backlog Grooming Sprint Planning Meeting Team Selects How MuchTo Target ScrumMaster SCRUM ProductBacklog Detailed Plan forSprint OrderedList ofWhat’sNeeded
  • Product Backlog Grooming   Each Sprint, the Dev Team and Product Owner together lookahead to the upcoming 2-3 Sprints’ worth of Product Backlog   The Dev Team and Product Owner split large ProductBacklog Items into smaller pieces   Small enough that 1-2 people could finish in 2-3 days   The Dev Team gets a more detailed understanding of theupcoming Product Backlog Items, by asking a lot of questions   This enables the Dev Team to enter Sprint Planning with agood understanding of the items at the top of the ProductBacklog   Roughly 5-10% of each Sprint’s working hours are spent onProduct Backlog Grooming (~3 hours for a 2-week Sprint)   The ScrumMaster organizes and facilitates this activity
  • Sprint 4 Weeksor Less PotentiallyShippable Increment Product Owner Review No Changes To Goal or Timebox Retrospective Dev Team Daily ScrumMeeting Input from End-Users, Customers,Team andOther Stakeholders SprintBacklog Product Backlog Grooming Sprint Planning Meeting Team Selects How MuchTo Target ScrumMaster SCRUM ProductBacklog Detailed Plan forSprint OrderedList ofWhat’sNeeded
  • Sprint Planning Meeting   Conducted by the Dev Team, the Product Owner, and theScrumMaster together   Often conducted in 2 parts:   Part 1 – Dev Team decides how much they are going to target   Part II – Dev Team creates a plan for how they are going to deliver it   Popular Approaches to deciding how much to target:   Velocity-based Once a Dev Team has a stable history of how much Product Backlog they cancomplete in a Sprint, they set their target based on their recent results   Commitment-based Dev Team estimates its capacity for work during the Sprint (in hours or days, forexample), then targets as many Product Backlog items as they have capacity for
  • Name Days in the Sprint Hours per Day Total Hours in theSprint Amitabh! 9! 5 ½ ! 50!Shahrukh! 9! 5 ½ ! 50!Aishwarya! 6! 5 ½ ! 33!Salman! 9! 5 ½ ! 50!Priyanka! 9! 3! 27!Total 210 !Mon Tues Weds Thurs Fri 1 2 3 4 5 6 7 8 SprintPlanning Review andRetrospective ½ day ½ day Work Time Available
  • Name Days in the Sprint Hours per Day Total Hours in theSprint Amitabh! 9! 6! 54!Shahrukh! 9! 6! 54!Aishwarya! 6! 6! 36!Salman! 9! 6! 54!Priyanka! 9! 5! 45!Total 240 !Work Time Available -15!-15!Buffer (5-10%)!Product Backlog Grooming (5-10%)!210!Total Work Time Available in the Sprint!
  • Available Time in Sprint = [your number goes here] 0 Allocated so far = minutes Not Started In Progress Done
  • Priority Description 1 Make a cube with sides of 10cm. 2 Make a square-based pyramid. The base should be 10cmsquare, and the sides should be 15cm. Attach to the top ofitem 1. 3 Make a triangular prism. All the sides of the prism should be6cm. Attach to the top of item 3, and then attach both to theside of item 1. 4 Make a hexagonal prism. Each rectangular side should 4cmwide by 12cm long. After completing it, stand it upright. 5 Make a triangular pyramid. Each side should be 12cm. Attachit to item 5. Product Backlog 10 10 10 15 10 6 6 6 6 4 12 12 12 12 15 10
  • Product Backlog Item #1 Make 10cm cube Getcardboard Available Time in Sprint = 54 minutes Draw six10x10cmsquares Cut outthe sixsquares Tapesquarestogether Double-check sizeand quality 1 3 5 5 2 Allocated so far = minutes Not Started In Progress Done Total: 16 mins 16
  • Priority Description 1 Make a cube with sides of 10cm. 2 Make a square-based pyramid. The base should be 10cmsquare, and the sides should be 15cm. Attach to the top ofitem 1. 3 Make a triangular prism. All the sides of the prism should be6cm. Attach to the top of item 3, and then attach both to theside of item 1. 4 Make a hexagonal prism. Each rectangular side should 4cmwide by 12cm long. After completing it, stand it upright. 5 Make a triangular pyramid. Each side should be 12cm. Attachit to item 5. Product Backlog 10 10 10 15 10 6 6 6 6 4 12 12 12 12 15 10
  • Product Backlog Item #1 Make 10cm cube Getcardboard Available time in Sprint = 54 minutes Draw six10x10cmsquares Cut outthe sixsquares Tapesquarestogether Double-check sizeand quality 1 3 5 5 2 Allocated so far = minutes Not Started In Progress Done Total: 16 mins Product Backlog Item #2 Make Square-basedPyramid Draw four10x15x15triangles Draw one10x10cmsquare Cut outpieces Tapepiecestogether 6 2 6 5 Double-check sizeand quality 2 Total: 19 mins 35
  • Product Backlog Item #1 Make 10cm cube Getcardboard Available time in Sprint = 54 minutes Draw six10x10cmsquares Allocated so far = 50 minutes Not Started In Progress Done TOTALMINUTESOFWORKLEFTTODO!Initial"Estimate!Day 1! Day 2!35!40!45!50!55!60!5!10!15!20!25!30!65!70!75!80!85!0!BURNDOWN CHART!Day 3!50
  • SPRINT BACKLOG Blow up 10 Balloons Measure Radius of All 10 Balloons CalculateVolumes of All 10 Balloons Starting the Sprint
  • Product Backlog Item #1 Make 10cm cube Available time in Sprint = 54 minutes Draw six10x10cmsquares 3 Cut outthe sixsquares 5 Tapesquarestogether 5 Double-check sizeand quality 2 Allocated so far = 50 minutes Not Started In Progress Done Total: 16 mins Product Backlog Item #2 Make Square-basedPyramid Draw one10x10cmsquare 2 Cut outpieces 6 Tapepiecestogether 5 Double-check sizeand quality 2 Total: 19 mins Getcardboard 1 Pete Getcardboardand tape 1 Pete Draw four10x15x15triangles 6 Pete Draw four10x15x15triangles 6 Pete
  • Sprint 4 Weeksor Less PotentiallyShippable Increment Product Owner Review No Changes To Goal or Timebox Retrospective Dev Team Daily ScrumMeeting Input from End-Users, Customers,Team andOther Stakeholders SprintBacklog Product Backlog Grooming Sprint Planning Meeting Team Selects How MuchTo Target ScrumMaster SCRUM ProductBacklog Detailed Plan forSprint OrderedList ofWhat’sNeeded
  • Daily Scrum Meeting   Goal   Enable Dev Team to update each other daily   Make all blocks visible to SM and entire Dev Team daily   Every day, at an agreed time and place, Dev Team stands in a circle and reports 3 things   What did I do since the last Daily Scrum Meeting?   What will I do by the next Daily Scrum Meeting?   What is blocking me?   15 minutes maximum   During meeting: everyone listens, no discussion   After meeting is done: discussion as needed   Product Owner can attend, but mustn’t interfere   After meeting, ScrumMaster helps with blocks
  • Product Backlog Item #1 Make 10cm cube Draw six10x10cmsquares 3 Cut outthe sixsquares 5 Tapesquarestogether 5 Double-check sizeand quality 2 Not Started In Progress Done Product Backlog Item #2 Make Square-basedPyramid Draw one10x10cmsquare 2 Cut outpieces 6 Tapepiecestogether 5 Double-check sizeand quality 2 Getcardboard 1 Pete Draw four10x15x15triangles 6 Pete Product Backlog Item #3 Make Cylinder Drawshape Getcardboardand tape Ravi Priya Arun 3 2 8 1
  • Product Backlog Item #1 Make 10cm cube Draw six10x10cmsquares 3 Cut outthe sixsquares 5 Tapesquarestogether 5 Double-check sizeand quality 2 Not Started In Progress Done Product Backlog Item #2 Make Square-basedPyramid Draw one10x10cmsquare 2 Cut outpieces 6 Tapepiecestogether 5 Double-check sizeand quality 2 Getcardboard 1 Pete Draw four10x15x15triangles 6 Pete Product Backlog Item #3 Make Cylinder Drawshape Getcardboardand tape Ravi Priya Arun 3 2 8 1 Total = 42
  • TOTALMINUTESOFWORKLEFTTODO!Initial"Estimate!Day 1! Day 2!35!40!45!50!55!60!5!10!15!20!25!30!65!70!75!80!85!0!BURNDOWN CHART!Day 3!
  • Sprint 4 Weeksor Less PotentiallyShippable Increment Product Owner Review No Changes To Goal or Timebox Retrospective Dev Team Daily ScrumMeeting Input from End-Users, Customers,Team andOther Stakeholders SprintBacklog Product Backlog Grooming Sprint Planning Meeting Team Selects How MuchTo Target ScrumMaster SCRUM ProductBacklog Detailed Plan forSprint OrderedList ofWhat’sNeeded
  • Sprint Review   Goal: Inspect and Adapt the Product   Collaborative meeting between the ProductOwner, Dev Team, ScrumMaster, stakeholders   Together we get “hands on” with what the DevTeam has produced in the Sprint   We inspect the quality, and whether it is “done”   We inspect whether it truly serves customer needs   We try to find improvements to make in the future(Product Owner puts these on the Product Backlog)   Recommendation: Get real-world customers orend-users to attend and give hands-on feedback
  • Sprint 4 Weeksor Less PotentiallyShippable Increment Product Owner Review No Changes To Goal or Timebox Retrospective Dev Team Daily ScrumMeeting Input from End-Users, Customers,Team andOther Stakeholders SprintBacklog Product Backlog Grooming Sprint Planning Meeting Team Selects How MuchTo Target ScrumMaster SCRUM ProductBacklog Detailed Plan forSprint OrderedList ofWhat’sNeeded
  • Sprint Retrospective   Goal: Inspect and Adapt Our Process   Collaborative meeting between the ProductOwner, Dev Team, and ScrumMaster   We talk about what we experienced andobserved during the Sprint, both good and bad   We create a plan of action for improving in thenext Sprint   Probably the single most important practice inScrum. We do this every Sprint!
  • Start! Stop! Continue!Start getting a betterunderstanding of theProduct Backlog Itemsduring Sprint Planning!Start doing morecommunication betweenDev Team and ProductOwner during the Sprint!Start doing the DailyScrum Meeting at thebeginning of the day,instead of the end of theday!Stop waiting until the endof the Sprint to beginintegration testing!Stop allowing changes toour target during themiddle of the Sprint!Stop sacrificing qualityjust to hit our targetduring the Sprint!Stop interrupting eachother during the DailyScrum Meeting!Continue the goodteamwork and positiveattitude!Continue putting a littleextra buffer in our planfor each Sprint!Continue inviting end-users to the SprintReview, to get theirfeedback!Continue using the taskboard on the wall!
  • SPRINT BACKwith LOG Getting Started with Scrum
  • Time Sprint 1 Sprint 2 Sprint 3 Sprint 4 Sprint 5 Sprint 6 Sprint 7 Sprint 8 Sprint 9 Sprint10 Development Start Release Date Getting Started with Scrum  ScrumMaster teaches Scrum to everyone and assigns the Scrum roles   Product Owner communicate the vision and goals of the Release   Product Owner leads the creation of the Product Backlog (with lots of input)   Dev Team does high-level size estimation of the Product Backlog   Product Owner does initial prioritization of the Product Backlog (with lots of input)   Release Planning Meeting to estimate release date and budget   Dev Team sets up their development and test environments   Dev Team does initial high-level design and architecture (just enough to get started)   Don’t forget – all of the above will evolve during project! GettingStarted
  • SPRINT BACKLOG Blow up 10 Balloons Measure Radius of All 10 Balloons CalculateVolumes of All 10 Balloons The “Definition of Done”and Getting to Done
  • The Definition of Done   D.o.D. defines what it means for a Product Backlog Item to be“Done” (=potentially shippable) at the end of a Sprint   Product Owner and Team create D.o.D. before first Sprint   Can be changed, based on Product Owner and Team decision   There may be Product Backlog Items that are outside the D.o.D.   For example, “Investigate Performance Problem” – needs its own D.o.D. Our Team’s Definition of DoneProduct Backlog Item is done at end of Sprint if:•  Code complete•  Code reviewed•  Unit Tested•  Integration Tested•  Acceptance Tested•  System Docs and User Docs updated•  No Priority 1 or Priority 2 defects remaining
  • DESIGN CODE TESTFeature ATeam Zebra is doing a 2-week Sprint and havecommitted to Product Backlog Items A, B, C, D, EDESIGN CODE TESTFeature BDESIGN CODE TESTFeature CDESIGN CODE TESTFeature DDESIGN CODE TESTFeature EINITIAL DESIGNFeatures A-EFINAL TESTAND POLISHWORKINGSPRINTPLANNINGREVIEW ANDRETROSPECTIVELooking InsideOne Sprint
  • SPRINT BACKLOG Blow up 10 Balloons Measure Radius of All 10 Balloons CalculateVolumes of All 10 Balloons Large-Scale andDistributed Scrum
  • 50 People (Architects, Coders,Testers,Analysts, UI Designers,Technical Writers, etc.) Scaling Scrum
  • Team A Team B Team C Team D Team E Scaling Scrum
  • Team A Team B Team C Team D Team E Scaling Scrum Cross-Functional (Designers, Coders, Testers, etc.) Cross-Functional (Designers, Coders, Testers, etc.) Cross-Functional (Designers, Coders, Testers, etc.) Cross-Functional (Designers, Coders, Testers, etc.) Cross-Functional (Designers, Coders, Testers, etc.) Feature Teams
  • Scaling Scrum Team A Team B Team C Team D Team E 8 9 10 11 12 7 1 2 3 4 5 6 Feature A Feature B Feature C Feature D Feature E Feature F Feature G Feature H Feature I Feature J Feature K Feature L 13 Feature M Cross-Functional (Designers, Coders, Testers, etc.) Cross-Functional (Designers, Coders, Testers, etc.) Cross-Functional (Designers, Coders, Testers, etc.) Cross-Functional (Designers, Coders, Testers, etc.) Cross-Functional (Designers, Coders, Testers, etc.)
  • Scaling Scrum Team A Team B Team C Team D Team E 8 9 10 11 12 7 1 2 3 4 5 6 Feature A Feature B Feature C Feature D Feature E Feature F Feature G Feature H Feature I Feature J Feature K Feature L 13 Feature M Cross-Functional (Designers, Coders, Testers, etc.) Cross-Functional (Designers, Coders, Testers, etc.) Cross-Functional (Designers, Coders, Testers, etc.) Cross-Functional (Designers, Coders, Testers, etc.) Cross-Functional (Designers, Coders, Testers, etc.)
  • Scaling Scrum Team A Team B Team C Team D Team E Cross-Functional (Designers, Coders, Testers, etc.) Cross-Functional (Designers, Coders, Testers, etc.) Cross-Functional (Designers, Coders, Testers, etc.) Cross-Functional (Designers, Coders, Testers, etc.) Cross-Functional (Designers, Coders, Testers, etc.) Chief Product Owner Product Owner Product Owner Product Owner
  • During the Sprint Team A Team B Team C Team D Team E Scrum of Scrums Daily Meeting of Team Representatives Coordination, Dependencies Mgt, Block Surfacing
  • Project Growth S P R I N T S P R I N T S P R I N T S P R I N T S P R I N T S P R I N T S P R I N T
  • Dependencies: Day-to-Day   Make direct team-to-team communication as easy aspossible for everyone on the project   Use the Scrum-of-Scrums actively   Make sure all teams have some slack (extra buffer) inevery Sprint, to be able to help each other
  • Dependencies: Backlog-Level Backlog Item #1 Team A Team B •  Identify the dependencybefore SprintCommitment is made Then, either… •  Product Owner Areduces priority of #1or •  Product Owner Bincreases priority of #18or •  Product Owner A shifts#18 to Team A ProductBacklog and Team A buildsitor •  Team A uses mock objectin place of #18, andreplaces with actual #18later Product Backlog Product Backlog Backlog Item #18
  • Distributed Scrum Practices   Model 1: Product Owner in US, Dev Team in India   ScrumMaster should be located with Dev Team in India   Start with short Sprints (2 weeks or less)   Dev Team does Daily Scrum during India business hours   After Daily Scrum, ScrumMaster emails list of blocks to theProduct Owner, for assistance clearing   All real-time meetings between Dev Team and Product Ownershould be visual, not just audio   1-2x per week real-time call for Product Owner and Dev Team   Product Owner travels to India for start of first Sprint
  • Distributed Scrum Practices   Model 2: Dev Team split between multiple locations   4 team-members in India, 4 team-members in Europe   To be effective, team formation must occur   Ideally, colocation for first Sprint   Ongoing “ambassadorship”   Multiple forms of continuous live communication   If you can’t make this investment, may be better toorganize them as two different Scrum teams   Daily Scrum   Live via webcam if timezones overlap, otherwise trycameraphone video recording   Scrum Artifacts (Sprint Backlog, Burndown Chart) doneelectronically, in a shared location
  • Scrum Tools   There are a range of software tools available for ScrumTeams to manage their Scrum information   Enterprise tools   VersionOne, Rally, ScrumWorks, Mingle, Greenhopper for Jira   Open-source   X-planner   Lightweight tools   ScrumNinja and BananaScrum   Bear in mind that there are pro’s and con’s, costs as wellas benefits, when using these tools   The most successful self-organization tends to occurwhen Dev Teams are using information radiators
  • SPRINT BACKLOG Blow up 10 Balloons Measure Radius of All 10 Balloons CalculateVolumes of All 10 Balloons Release Estimation in Scrum
  • Team Alpha32 2 2Sprint 1 Sprint 2 Sprint 312 Pointsof size16 Pointsof size14 Pointsof sizeAverage of 14 Points per Sprint “Velocity”81 1 1 12 21 1 12 211321 1 1
  • The Product Backlog Priority DescriptionSize(to build)1 Feature A 32 Feature B 13 Feature C 34 Feature D 55 Feature E 16 Feature F 87 Feature G 38 Feature H 59 Feature I 210 Feature J 311 Feature K 112 Feature L 5
  • Team Alpha32 2 2Sprint 1 Sprint 2 Sprint 381 1 1 12 21 1 12 211321 1 1
  • The Product Backlog Priority DescriptionSize(to build)1 Feature A 32 Feature B 13 Feature C 34 Feature D 55 Feature E 16 Feature F 87 Feature G 38 Feature H 59 Feature I 210 Feature J 311 Feature K 112 Feature L 5
  • The Product Backlog Priority DescriptionSize(to build)1 Feature A 32 Feature B 13 Feature C 34 Feature D 55 Feature E 16 Feature F 87 Feature G 38 Feature H 59 Feature I 210 Feature J 311 Feature K 112 Feature L 5Total = 40 pointsVelocity = 14 pointsTime to complete =40/14 = 3 SprintsIf cost per Sprint is$15K, total cost is:3 x $15K = $45KIf Sprints are 2weeks each, totaltime required is:3 x 2 = 6 weeks
  • •  Many Scrum tems use Planning Poker to estimatethe size of Product Backlog Items •  “Size” = Effort + Complexity + Uncertainty •  The whole team estimates together •  If actual team is not yet selected, then get a typicalteam to do it, and be sensible: add extra buffer tothe final plan •  Everyone estimates overall size of the item (notjust their part of the work) •  ScrumMaster facilitates (and joins in the estimationif they will be doing work too) •  Product Owner should be available to clarifyrequirements
  • Estimating Release Date and Budget   Dev Team does high-level size estimation of Product Backlog   Using Planning Poker, for example   Dev Team estimates their velocity   Using either past history, by doing a Sprint, or by doing a SprintPlanning Meeting. This is a forecast, not a promise.   Product Owner uses the above data to estimate a realisticdate for release   If date turns out to be too optimistic, Product Owner will have toeither remove scope from the Release, or move the Release date   Product Owner decides how much buffer to add, to accountfor uncertainty and risk   Buffer for Uncertainty (for example: 15%)   Buffer for Improvement and Rework (for example: 10%)   Many Dev Teams also need a Pre-Release Sprint (to go fromPotentially Shippable to actually “shipped”)
  • Pre-ReleaseSprint Release Date Sprint Sprint Sprint Sprint Sprint Sprint Sprint Sprint Sprint Sprint FinalHardeningand ReleasePreparation
  • Estimating Release Date and Budget   Dev Team does high-level size estimation of Product Backlog   Using Planning Poker, for example   Dev Team estimates their velocity   Using either past history, by doing a Sprint, or by doing a SprintPlanning Meeting. This is a forecast, not a promise.   Product Owner uses the above data to estimate a realisticdate for release   If date turns out to be too optimistic, Product Owner will have toeither remove scope from the Release, or move the Release date   Product Owner decides how much buffer to add, to accountfor uncertainty and risk   Buffer for Uncertainty (for example: 15%)   Buffer for Improvement and Rework (for example: 10%)   Many Dev Teams also need a Pre-Release Sprint (to go fromPotentially Shippable to actually “shipped”)
  • Item # Product Backlog ItemInitialEstimateSprint 1 Sprint 2 Sprint 3 Sprint 4 Sprint 5 Sprint 6 Sprint 7 Sprint 8 Sprint 9Sprint10Sprint111As an Administrator or Employee, I want to go to the Home Page and type my login name and password, sothat I can gain access to the Dashboard Page. 2 0 0 0 0 02As an Employee, I want to submit a leave request to my manager, so I can find out whether I havepermission to take one or more days of leave. 3 0 0 0 0 03As an employee who has other employees reporting to me, I want to receive an email to inform me that aleave request has been filed, so that I can approve or deny it in a timely manner. 2 2 0 0 0 04As an employee, I want to be able to see the unused vacation, personal, and sick leave I currently have, sothat I can plan when to take leave and how much I’m entitled to. 3 3 3 0 0 05As an employee, I want to be able to review my pending leave requests, so that I can see which requestshave been approved, and which are pending review by my manager. 5 5 5 0 0 06As an Administrator or Employee, I want to click the “Forgot Password” link on the home page, enter myemail address, and have a new password generated and sent to me, so I can log into the system. 1 1 1 1 0 07As an Administrator, I want to be able to modify the personal details (for example, name, or manager, ordate of hire) for a particular employee, so that I can keep their information up-to-date and correct any errors. 3 3 3 3 0 08As an Administrator, I want to have a backup of the system made nightly, so that in the event of a crash orother problem, the recent days’ worth of data can be restored. 8 8 8 8 0 09As an Administrator, I want to create a new Administrator account for another person, so that they have thenecessary permissions within the system. 3 3 3 3 0 010As an Administrator, I want to set up a new Employee account for another person, so they can use thesystem to manage their leave requests and approvals. 3 3 3 3 3 011As an Administrator, I want to be able to modify the system-wide defaults for company name, companyemail, and number of days of leave per year. 2 2 2 2 2 212As an Administrator, I want to set up new Employee accounts for multiple other people at once by copyingand pasting their information into a text field, so they can use the system to manage their leave requests /approvals.3 3 3 3 3 313As an employee, I want to be able to review my pending leave requests, and be able to cancel any that areno longer required, so that I can keep my request up-to-date and accurate. 2 2 2 2 2 214As an employee, I want to be able to review my pending leave requests, and be able to modify any of thedetails that are no longer correct, so that I can keep my request up-to-date and accurate. 2 2 2 2 2 215As an employee who has other employees reporting to me, I want to be able to see a table that lists all theemployees who report to me (as well as the employees that report to them), and for each a summary of theirleave requests and days of leave remaining, so I can have a high-level overview of my departmental leavemetrics.5 5 5 5 5 516As an employee, I want to be able to see all my current and past leave requests (including approved,denied, and pending) since I was hired, so I can quickly get information I need regarding one particularleave request.3 3 3 3 3 317As an employee who has other employees reporting to me, I want to be able to see all the leave requeststhat are currently pending my approval on a single page, and be able to approve or deny them from thatpage, so that I can quickly and easily take care of all my pending approvals at once.5 5 5 5 5 518As an Administrator, I want to be able to select a subset of employees and export their data as either a tab-delimited text file, or as an excel spreadsheet. 13 13 13 13 13 1319As an Administrator or Employee, I want to click “Change Password” choice on the Dashboard Page, and beable to type in a new password. 2 2 2 2 2 220As an Administrator or Employee, I want to click “Change Username” choice on the Dashboard Page, andbe able to type in a new username. 3 3 3 3 3 321As an employee who has other employees reporting to me, I want to receive an email reminder once a dayif there are any leave requests that have been waiting for my review for more than 72 hours, so that I canapprove or deny it without further delay.5 5 5 5 5 522As an employee, I want to receive an email notification when my manager approves or denies one of myrequests. 2 2 2 2 2 2Total 80 75 73 65 50 47Release Backlog
  • 90 80 70 60 50 40 30 20 10 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 Release Burndown Chart Sprints End Development Release
  • Item # Product Backlog ItemInitialEstimateSprint 1 Sprint 2 Sprint 3 Sprint 4 Sprint 5 Sprint 6 Sprint 7 Sprint 8 Sprint 9Sprint10Sprint111As an Administrator or Employee, I want to go to the Home Page and type my login name and password, sothat I can gain access to the Dashboard Page. 2 0 0 0 0 02As an Employee, I want to submit a leave request to my manager, so I can find out whether I havepermission to take one or more days of leave. 3 0 0 0 0 03As an employee who has other employees reporting to me, I want to receive an email to inform me that aleave request has been filed, so that I can approve or deny it in a timely manner. 2 2 0 0 0 04As an employee, I want to be able to see the unused vacation, personal, and sick leave I currently have, sothat I can plan when to take leave and how much I’m entitled to. 3 3 3 0 0 05As an employee, I want to be able to review my pending leave requests, so that I can see which requestshave been approved, and which are pending review by my manager. 5 5 5 0 0 06As an Administrator or Employee, I want to click the “Forgot Password” link on the home page, enter myemail address, and have a new password generated and sent to me, so I can log into the system. 1 1 1 1 0 07As an Administrator, I want to be able to modify the personal details (for example, name, or manager, ordate of hire) for a particular employee, so that I can keep their information up-to-date and correct any errors. 3 3 3 3 0 08As an Administrator, I want to have a backup of the system made nightly, so that in the event of a crash orother problem, the recent days’ worth of data can be restored. 8 8 8 8 0 09As an Administrator, I want to create a new Administrator account for another person, so that they have thenecessary permissions within the system. 3 3 3 3 0 010As an Administrator, I want to set up a new Employee account for another person, so they can use thesystem to manage their leave requests and approvals. 3 3 3 3 3 011As an Administrator, I want to be able to modify the system-wide defaults for company name, companyemail, and number of days of leave per year. 2 2 2 2 2 212As an Administrator, I want to set up new Employee accounts for multiple other people at once by copyingand pasting their information into a text field, so they can use the system to manage their leave requests /approvals.3 3 3 3 3 313As an employee, I want to be able to review my pending leave requests, and be able to cancel any that areno longer required, so that I can keep my request up-to-date and accurate. 2 2 2 2 2 214As an employee, I want to be able to review my pending leave requests, and be able to modify any of thedetails that are no longer correct, so that I can keep my request up-to-date and accurate. 2 2 2 2 2 215As an employee who has other employees reporting to me, I want to be able to see a table that lists all theemployees who report to me (as well as the employees that report to them), and for each a summary of theirleave requests and days of leave remaining, so I can have a high-level overview of my departmental leavemetrics.5 5 5 5 5 516As an employee, I want to be able to see all my current and past leave requests (including approved,denied, and pending) since I was hired, so I can quickly get information I need regarding one particularleave request.3 3 3 3 3 317As an employee who has other employees reporting to me, I want to be able to see all the leave requeststhat are currently pending my approval on a single page, and be able to approve or deny them from thatpage, so that I can quickly and easily take care of all my pending approvals at once.5 5 5 5 5 518As an Administrator, I want to be able to select a subset of employees and export their data as either a tab-delimited text file, or as an excel spreadsheet. 13 13 13 13 13 1319As an Administrator or Employee, I want to click “Change Password” choice on the Dashboard Page, and beable to type in a new password. 2 2 2 2 2 220As an Administrator or Employee, I want to click “Change Username” choice on the Dashboard Page, andbe able to type in a new username. 3 3 3 3 3 321As an employee who has other employees reporting to me, I want to receive an email reminder once a dayif there are any leave requests that have been waiting for my review for more than 72 hours, so that I canapprove or deny it without further delay.5 5 5 5 5 522As an employee, I want to receive an email notification when my manager approves or denies one of myrequests. 2 2 2 2 2 2Total 80 75 73 65 50 47Release Backlog
  • 90807060504030201001 2 3 4 5 6 7 8 9 10 11 12 13 14 15Release Burndown ChartSprintsEnd Development Release
  • 90807060504030201001 2 3 4 5 6 7 8 9 10 11 12 13 14 15Release Burndown ChartSprintsEnd Development Release2 extra Sprintswill be needed todeliver the entireRelease Backlog
  • 90807060504030201001 2 3 4 5 6 7 8 9 10 11 12 13 14 15Release Burndown ChartSprintsEnd Development ReleaseTo deliver therelease onschedule, remove12 points from theRelease Backlog
  • 90807060504030201001 2 3 4 5 6 7 8 9 10 11 12 13 14 15Release Burndown ChartSprintsEnd Development Release
  • Retrospective is awaste of time“The 5 Why’s”We never takeaction on any of theissues we discussWe never have time tomake improvements inour way of workingWe’re always over-committed in everySprintThe Product Ownerpressures us intoovercommittingin Sprint PlanningWe don’t have anyway of remindingourselvesWe always forgetwhatever weagreed to doThe Product Owner gavean unrealistic deliverydate to the VPThe ScrumMasterisn’t protecting us!
  • Impact of Change In the Current Sprint In Future SprintsHappiness ofthe ProductOwnerTeam’s abilityto deliver itscommitmentTeam’s focus,commitment,motivationPO’sdiscipline tonot requestchangesTime andthought thePO puts intopreparing theProductBacklogTeam’s focus,commitment,motivationTeam’sdiscipline infollowing therules ofScrumOther teams’discipline infollowing therules ofScrumWhat are the consequences if the ScrumMaster says “Yes”to the Product Owner making a “swap” during the Sprint?        