Your SlideShare is downloading. ×
Advanced Agile Planning
Advanced Agile Planning
Advanced Agile Planning
Advanced Agile Planning
Advanced Agile Planning
Advanced Agile Planning
Advanced Agile Planning
Advanced Agile Planning
Advanced Agile Planning
Advanced Agile Planning
Advanced Agile Planning
Advanced Agile Planning
Advanced Agile Planning
Advanced Agile Planning
Advanced Agile Planning
Advanced Agile Planning
Advanced Agile Planning
Advanced Agile Planning
Upcoming SlideShare
Loading in...5
×

Thanks for flagging this SlideShare!

Oops! An error has occurred.

×
Saving this for later? Get the SlideShare app to save on your phone or tablet. Read anywhere, anytime – even offline.
Text the download link to your phone
Standard text messaging rates apply

Advanced Agile Planning

929

Published on

Velocity is perhaps the most useful metric available to agile teams. In this session we will look at advanced uses of velocity for planning under special but common circumstances. We will see how to …

Velocity is perhaps the most useful metric available to agile teams. In this session we will look at advanced uses of velocity for planning under special but common circumstances. We will see how to forecast velocity in the complete absence of any historical data. We will look at how a new team can forecast velocity by looking at other teams. We will see how to predict the velocity of a team that will grow or shrink in size. Most importantly we will look at the use of confidence intervals to create plans we can be 90% confident in, even on fixed-price or fixed-date contracts.

Published in: Business, Technology
3 Comments
10 Likes
Statistics
Notes
No Downloads
Views
Total Views
929
On Slideshare
0
From Embeds
0
Number of Embeds
1
Actions
Shares
0
Downloads
36
Comments
3
Likes
10
Embeds 0
No embeds

Report content
Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
No notes for slide

Transcript

  • 1. Advanced Agile Planning Mike Cohn NDC London 6 December 2013 1 The planning onion Strategy Portfolio Product Team focuses here Team focuses here Iteration Team focuses here ® Release Daily © Copyright Mountain Goat Software 2
  • 2. Release and iteration planning Release Plan Iteration 1 Iteration 2 Iteration 3 Iterations 4–7 Plan IterationIteration Plan 6 Code the … e the … Cod 4 Decide … Test the … 6 … Test theDesign a … 8 Automate … the … Code 8 12 8 6 © Copyright Mountain Goat Software ® 3 What’s a good plan? A good plan is one that supports reliable decision-making Will go from We’ll be done in the third quarter We’ll be done in December “It’s better to be We’ll be done 18 December ghly right than rou precisely wrong.” —J.M. Keynes ® © Copyright Mountain Goat Software 4
  • 3. Velocity An iteration 4 Velocity = 15 10 3 1 © Copyright Mountain Goat Software ® 5 Velocity A useful long-term measure of the amount of work completed per iteration Most useful over at least a handful of iterations 40 Velocity 30 Velocity is measured in the units you use to estimate product backlog items 20 10 0 ® 1 2 3 4 5 6 7 8 9 © Copyright Mountain Goat Software 6
  • 4. Planning Scenarios Five data A team with historical Fixed-date plans Fixed-scope plans data A team with no velocity A team changing size © Copyright Mountain Goat Software ® 7 Calculate a confidence interval from Iterations to historical data # of historical iterations 35 38 39 40 90% confidence interval 40 41 45 Sorted Velocities ® 0 8–10 11–12 13–15 1 2 3 16–17 4 18–20 21–22 23–25 5 6 7 26+ 34 throw out from each each end 0–7 27 8 © Copyright Mountain Goat Software 8
  • 5. Extrapolate from the velocity range We’ll almost certainly get here (5×34=170) The most we can realistically expect (5×41=205) Product Backlog ® Assume there are five iterations left © Copyright Mountain Goat Software 9 © Copyright Mountain Goat Software 10 Use the online velocity range calculator at mountaingoatsoftware.com/tools ®
  • 6. Planning Scenarios Five data A team with historical Fixed-date plans Fixed-scope plans data A team with no velocity A team changing size © Copyright Mountain Goat Software ® 11 Fixed-date planning Three steps 1. Determine how many iterations you have. 2. Estimate velocity as a range. 3. Use that range × the number of iterations to partition the backlog into Will Have, Might Have, and Won’t Have. ® © Copyright Mountain Goat Software 12
  • 7. Count the iterations APRIL MAY SUN MON TUE WED THU FRI SAT 1 JUNE SUN MON TUE WED THU FRI SAT 2 3 8 9 10 11 12 13 14 6 7 15 16 17 18 19 20 21 13 14 22 23 24 25 26 27 28 20 21 22 29 30 27 28 4 5 6 1 7 SUN MON TUE WED THU FRI SAT 1 2 3 8 9 10 11 12 6 3 4 7 15 16 17 18 19 10 13 14 11 23 24 25 26 20 17 18 21 24 27 25 28 29 30 4 5 31 2 3 5 8 6 9 10 7 11 8 12 9 15 12 16 13 14 17 15 18 16 19 22 19 20 23 21 24 22 25 26 23 26 29 27 30 28 31 29 30 4 1 5 2 © Copyright Mountain Goat Software ® 13 Determine a velocity range 50 Story Points 40 30 20 34 30 30 25 29 29 25 21 10 0 ® Iterations © Copyright Mountain Goat Software 14
  • 8. Determine what to commit to 6×25 Will have If you promise this t • You probably won’t ge the contract ish • But will probably fin everything if you do Might have If you promise this • You will probably win Won’t have Product Backlog the contract h • But probably not finis everything in time © Copyright Mountain Goat Software ® 15 Balancing risk High Expectation Risk Promise Just the Will-Haves Low ® Promise All the Might-Haves Low Delivery Risk High © Copyright Mountain Goat Software 16
  • 9. Planning Scenarios Five data A team with historical Fixed-date plans Fixed-scope plans data A team with no velocity A team changing size © Copyright Mountain Goat Software ® 17 Fixed scope planning Three steps 1. Sum the product backlog items. 2. Estimate velocity as a range. 3. Use the sum of the backlog divided by the velocity range to determine a date range. ® © Copyright Mountain Goat Software 18
  • 10. = 120 story points Story Points 25 20 15 10 5 0 }=15–20 Iterations © Copyright Mountain Goat Software ® 19 If you promise the short duration • You probably get the contract • But may not finish everything in time 120 ÷ 20 = 120 ÷ 15 = JANUARY FEBRUARY SUN MON TUE WED THU FRI SAT MARCH SUN MON TUE WED THU FRI SAT APRIL SUN MON TUE WED THU FRI SAT MAY SUN MON TUE WED THU FRI SAT JUNE SUN MON TUE WED THU FRI SAT SUN MON TUE WED THU FRI SAT 1 2 3 4 5 6 1 2 3 1 2 3 1 2 3 4 5 6 7 1 2 3 4 5 7 8 9 10 11 12 13 4 5 6 7 8 9 10 4 5 6 7 8 9 10 8 9 10 11 12 13 14 6 7 8 9 10 11 12 14 15 16 17 18 19 20 11 12 13 14 15 16 17 11 12 13 14 15 16 17 15 16 17 18 19 20 21 13 14 15 16 17 18 19 10 13 14 11 15 12 16 13 14 17 15 18 16 19 21 22 23 24 25 26 27 18 19 20 21 22 23 24 18 19 20 21 22 23 24 22 23 24 25 26 27 28 20 21 22 23 24 25 26 20 17 18 21 22 19 20 23 24 21 25 22 26 23 28 29 30 31 25 26 27 28 25 26 27 28 29 30 31 29 30 27 28 29 30 31 24 27 25 28 26 29 30 27 28 31 29 30 JANUARY FEBRUARY SUN MON TUE WED THU FRI SAT MARCH SUN MON TUE WED THU FRI SAT APRIL SUN MON TUE WED THU FRI SAT MAY SUN MON TUE WED THU FRI SAT 1 6 3 4 7 5 8 2 6 9 3 10 7 4 1 5 2 11 8 12 9 JUNE SUN MON TUE WED THU FRI SAT JULY SUN MON TUE WED THU FRI SAT AUGUST SUN MON TUE WED THU FRI SAT SUN MON TUE WED THU FRI SAT 1 2 3 4 5 6 1 2 3 1 2 3 1 2 3 4 5 6 7 1 2 3 4 5 1 2 3 4 1 5 2 1 2 3 4 5 6 7 7 8 9 10 11 12 13 4 5 6 7 8 9 10 4 5 6 7 8 9 10 8 9 10 11 12 13 14 6 7 8 9 10 11 12 6 3 4 7 5 8 6 9 10 7 11 8 12 9 8 9 10 11 12 13 14 14 15 16 17 18 19 20 11 12 13 14 15 16 17 11 12 13 14 15 16 17 15 16 17 18 19 20 21 13 14 15 16 17 18 19 10 13 14 11 15 12 16 13 14 17 15 18 16 19 15 16 17 18 19 20 21 12 13 14 15 16 17 18 21 22 23 24 25 26 27 18 19 20 21 22 23 24 18 19 20 21 22 23 24 22 23 24 25 26 27 28 20 21 22 23 24 25 26 20 17 18 21 22 19 20 23 24 21 25 22 26 23 22 23 24 25 26 27 28 19 20 21 22 23 24 25 28 29 30 31 25 26 27 28 25 26 27 28 29 30 31 29 30 27 28 29 30 31 24 27 25 28 26 29 30 27 28 31 29 30 29 30 31 26 27 28 29 30 31 If you promise the long duration 1 5 6 7 8 2 9 3 4 10 11 • You probably will not ® get the contract • But it should be easy to finish everything Mountain Goat Software © Copyright 20
  • 11. Ranges Notice in both cases we had a range For a fixed date project, use a scope range: “By that date you’ll have all of these features and some of these.” For a fixed-scope project, use a date range: “It will take us between 6 and 8 iterations to deliver all of those features.” © Copyright Mountain Goat Software ® 21 The impending tradeshow Your company develops tools for managing agile projects. You’ve finished version 1.0 (on time, of course). Now the boss needs a new version for the big trade show that is 4 iterations away. • • Which features can you “guarantee” will be in for the trade show? Which features are likely to be in? Use the following user stories, estimates and velocities. ® © Copyright Mountain Goat Software 22
  • 12. Past velocities Historic Data cal Iteration Velocity 1 2 3 4 5 6 7 8 9 10 Your estimates 20 14 23 18 25 30 12 22 15 23 © Copyright Mountain Goat Software ® Product backlog item 23 Estimate 1. As the product owner I want to drag items onto a release burndown chart and see the impact to the release date. 20 2. As a user at a company with lots of cash, I want your product to support touch screens so I can put a large one in our team room. 13 3. As a user I would like performance to be about twice as fast as now during peak use periods. 20 4. As a team member, I’d like to be able to do online planning poker estimating right inside the tool. 13 5. As a third party, I would like an SOA interface so that I can integrate my product with yours. 8 6. As a team member I want RSS support for all changes to tasks or user stories so that I’m notified. 8 7. As the product owner, I want a new report that shows differences in the product backlog between different time periods. 3 8. As a team member I’d like to define templates of tasks that 13 recur for lots of different stories so that I can reuse them © Copyright Mountain Goat Software ® 24
  • 13. Planning Scenarios Five data A team with historical Fixed-date plans Fixed-scope plans data A team with no velocity A team changing size © Copyright Mountain Goat Software ® 25 Forecast an initial velocity Get the team together as though there were going to plan a real iteration (2–4 weeks) Iteration planning involves Breaking product backlog items (features) into tasks Estimating the hours for each task Repeating until the iteration feels full See how many points are represented by the work they select Consider planning a second iteration this way ® © Copyright Mountain Goat Software 26
  • 14. Consider this team Person Hours/Day Hours / Iteration Sergey 4–6 40–60 Yuri 4–6 40–60 Carina 2–3 20–30 Total o 100–150 © Copyright Mountain Goat Software ® 27 Establishing their velocity Capacity 100–150 hours per iteration Code… 12 Design … 6 Test … 8 46 Decide … 8 Automate … 12 ® 22 Points As a frequent flyer … 3 As a visitor … 5 As a frequent flyer … Code… Test … 31 Design … Test … 8 6 12 5 48 48 5 As a vacation planner … … 22 Story 2 … © Copyright Mountain Goat Software 28
  • 15. Turn the point estimate into a range If you don’t have historical data Take a wild guess, perhaps: +/– 10% for a known team working in a known domain with known technologies +/– 50% if all that is unknown If you have historical data from other teams Calculate the relative standard deviation of those teams © Copyright Mountain Goat Software ® 29 Using data from other teams Team A Iteration Velocity 1 20 2 28 3 24 4 16 5 18 6 23 7 26 8 21 ® Team A Mean Standard Deviation 22 3.8 Relative standard deviation 3.8 / 22 = 17% © Copyright Mountain Goat Software 30
  • 16. Adjust velocity by ±19% % Estimated velocity = 11 119 81% Will Have 9 multiply by number of iterations Might Have 13 Won’t Have Product Backlog ® © Copyright Mountain Goat Software 31 e Planning Scenarios Fiv data A team with historical Fixed-date plans Fixed-scope plans data A team with no velocity A team changing size ® © Copyright Mountain Goat Software 32
  • 17. Track velocity when size changes Initial Team Size New Team Size 6 7 –20% –4% +12% 6 7 0% –6% +15% 7 5 –12% –8% –8% 8 6 –20% –20% –16% 7 8 –15% Iteration Iteration Iteration +1 +2 +3 Track across the entire organization. © Copyright Mountain Goat Software ® 33 Impact of going from 6–7 people Initial Team Size New Team Size 6 7 –20% –4% +12% 6 7 0% –6% +15% 7 5 –12% –8% –8% … … … Iteration Iteration Iteration +1 +2 +3 … Iteration … Average Velocity Change 1 2 –5% 3+ ® –10% +13% © Copyright Mountain Goat Software 34
  • 18. Mike Cohn mike@mountaingoatsoftware.com www.mountaingoatsoftware.com twitter: mikewcohn (888) 61-AGILE ® © Copyright Mountain Goat Software 35

×