© 20032007 Mountain Goat Software ® ® Mike Cohn 12 March 2008 An Introduction to Agile Estimating and Planning.

Slides:



Advertisements
Similar presentations
Created by Gwendolyn Best
Advertisements

TWO STEP EQUATIONS 1. SOLVE FOR X 2. DO THE ADDITION STEP FIRST
The Road to Agile From the Bottom Up Kevin Malley Tracey Clark 1 March 20 th, 2013 SWOQG.
Keith McMillan Principal, Adept Technologies Copyright (C) 2008, Adept Technologies llc.
Transition to Scrum Midway through a AAA Development Cycle: Lessons Learned Asbjoern Malte Soendergaard Development Manager Crytek GmbH.
Iterative Development: Done Simply Emily Lynema NCSU Libraries Code4Lib 2010.
Copyright © , Armstrong Process Group, Inc., and others All rights reserved Made available under EPL v1.01 Project Management Review Eclipse Process.
Armstrong Process Group, Inc. Copyright © , Armstrong Process Group, Inc., and others All rights reserved Armstrong Process.
Exit a Customer Chapter 8. Exit a Customer 8-2 Objectives Perform exit summary process consisting of the following steps: Review service records Close.
Agile Modeling Emitzá Guzmán Agile Modeling.
1 Advanced Tools for Account Searches and Portfolios Dawn Gamache Cindy Bylander.
ATMAN HB summary seminar # Challenges 2 ATMAN project 9/17/2010.
New Silent Knight Buyer SAP Based e-commerce. 2HONEYWELL - CONFIDENTIAL File Number 2HONEYWELL - CONFIDENTIAL File Number Agenda E-commerce training resources.
Are Parametric Techniques Relevant for Agile Development Projects?
Iteration Planning.
Walter Bodwell Planigle. An Introduction – Walter Bodwell First did agile at a startup in 1999 Got acquired by BMC in 2000 and spent the next 8 years.
1 BULLDOG BASKETBALL Box 1 Out of Bounds Under the Basket Head Coach Joshua Kendrick.
CP Chapter 4 Schedule Planning.
R12 Assets A Look Inside SM. Copyright © 2008 Chi-Star Technology SM -2- High-Level Overview R12 Setups –Subledger Accounting –ADI Templates –XML Reports.
Last Planner ® National Capital Region Community of Practice Victor Sanvido – Southland Industries Matt Bruening – Southland Industries 1.
Adding Up In Chunks.
Agile Software Development کاری از : مهدی هوشان استاد راهنما : استاد آدابی.
An Introduction to eXtreme Programming Michael L. Collard, Ph.D. Department of Computer Science Kent State University.
Addition 1’s to 20.
Extreme Planning: Agile turned to the max Exilesoft Johannes Brodwall Exilesoft Chief
A technique for agile estimation Francy Rodríguez Javier Diez.
Chapter Extension 16 Agile Development.
One line description - easy to understand and remember

Renato Pinto López TUM18 - UPM. Sprint Planning Meeting ATTENDED BY PRODUCT OWNER (PO), SCRUM MASTER AND SCRUM TEAM PO DESCRIBES THE HIGHEST PRIORITY.
Agile Development Chapter Extension 16. ce16-2 Study Questions Q1: Why is the SDLC losing credibility? Q2: What are the principles of agile development.
Clinton Keith CTO, High Moon Studios Agile Methodology in Game Development: Year 3.
ECE44x SCRUM Overview slides adapted from Marty Stepp
SCRUM John Drew. SCRUM - overview Scrum is a project management discipline that has evolved since the early 1990s to deliver software that meets business.
Scrum. An evolutionary/iterative/incremental/agile software process The main roles in Scrum are: – Scrum team: Team of software developers – Scrum master.
© Timothy Korson Page 1 Scrum by Dr. Korson For CPTR 209 Software Engineering Version
1 Agile Estimating and Planning October, 2013 Technion, Israel Prof. Fabio Kon University of Sao Paulo, Brazil
What is Scrum Process? Where is it used? How is it better?
Agile and XP Development Dan Fleck 2008 Dan Fleck 2008.
Release and Iteration Planning September 13, 2008.
Creating a Brand New Project using Scrum and Agile Techniques Matt Turner, Mark Wightman Red Gate Software.
Stephen Chief Strategy Officer Telerik
Coming up: What is Agile? XP Development Dan Fleck 2010 Dan Fleck 2010.
5. Planning.
Agile Concepts - II “Agile” Estimating & Planning Nupul Kukreja 5 th November, 2014.
Process is continuously improving Have Definition of Done (DoD) DoD achievable within each iteration Team respects DoD The bottom line Delivering working,
Dr. Nguyen Hai Quan.  Why SCRUM?  What is SCRUM?  Some terms  SCRUM Meetings  Sprint  Estimation  Product backlog  Sprint backlog  Whiteboard.
Chapter 7 The Practices: dX. 2 Outline Iterative Development Iterative Development Planning Planning Organizing the Iterations into Management Phases.
What Is Agile? Agile is a group of software development methodologies Scrum Extreme Programming (XP) Lean Etc. Key Characteristics: Small increments Adaptive.
SCRUM.
End of Sprint Meetings (Ceremonies)
CSE Senior Design II Scrum Review/Discussion Instructor: Mike O’Dell.
Managing Agile Software Development Teams Using Scrum AKA: Wrangling Developers for Fun and Profit!
Testing under the Agile Method CSCI 521 Software Project Management based on the book Testing Extreme Programming by Lisa Crispin and Tip House.
Planning Poker-Agile Estimation for Dummies S.INFANTA PRINCY, M.E II YEAR. ANNA UNIVERSITY, TRICHY.
Planning 2: Estimation Mechanics Emerson Murphy-Hill Creative Commons Attribution 4.0 License. Material Produced by NCSU Software Engineering Faculty.
Coming up: What is Agile? XP Development Dan Fleck 2010 Dan Fleck 2010.
Scrum and TargetProcess
CSC 355 – Newer Approaches to System Development Life Cycles & Processes, Spring 2017 March 2017 Dr. Dale Parson.
Agile Scrum Management
Real Metrics for Real Decisions
Agile Transformation Gint Grabauskas Presented to STL JUG
User Stories Applied, Mike Cohn Chapter 1: An Overview
Scrum MODULE 3 – Part 3.
Johanna Rothman Agile Team Measurements Chapter 12
Johanna Rothman Report Your Project State Chapter 14
Johanna Rothman Know What “Done” Means Chapter 11
Coming up: What is Agile?
Agile Development – a new way of software development?
2-2 Estimating Size in Ideal Days
Presentation transcript:

© Mountain Goat Software ® ® Mike Cohn 12 March 2008 An Introduction to Agile Estimating and Planning

© Mountain Goat Software ® ® Mike Cohn - background Agile coach and trainer Founding member and director of Agile Alliance and Scrum Alliance Founder of Mountain Goat Software Ran my first Scrum project back in 1995 Typical programmer to manager, etc. progression

© Mountain Goat Software ® ® The right units for estimating How to estimate Release planning Planning with multiple teams Agenda

© Mountain Goat Software ® ® How long will it take… …to read the latest Harry Potter book? …to drive to Paris?

© Mountain Goat Software ® ® Estimate size; derive duration SizeCalculationDuration 300 kilograms Velocity = /20 = 15 sprints

© Mountain Goat Software ® ® Measures of size Agile Story points Ideal days Sequential Lines of code Function points

© Mountain Goat Software ® ® Ideal days How long something would take if its all you worked on you had no interruptions and everything you need is available The ideal time of a basketball game is 40 minutes Four 10-minute quarters The elapsed time is much longer (2+ hours)

© Mountain Goat Software ® ® Story points The bigness of a task Influenced by How hard it is How much of it there is Relative values are what is important: A login screen is a 2. A search feature is an 8. Points are unit-less As a user, I want to be able to have some but not all items in my cart gift wrapped.

© Mountain Goat Software ® ® Zoo points What value in zoo points would you put on these zoo animals? Lion Kangaroo Rhinocerus Bear Giraffe Gorilla Hippopotamus Tiger

© Mountain Goat Software ® ® Comparing the approaches Story points help drive cross-functional behavior Story point estimates do not decay Story points are a pure measure of size Estimating in story points is typically faster My ideal days cannot be added to your ideal days Ideal days are easier to explain outside the team Ideal days are easier to estimate at first Ideal days can force companies to confront time wasting activities

© Mountain Goat Software ® ® The problem with mixing units As a frequent flyer, I want… Code the… Design the… Automate… Test the…

© Mountain Goat Software ® ® The right units for estimating How to estimate Release planning Planning with multiple teams Agenda

© Mountain Goat Software ® ® Estimate by analogy Comparing a user story to others This story is like that story, so its estimate is what that storys estimate was. Dont use a single gold standard Triangulate instead Compare the story being estimated to multiple other stories

© Mountain Goat Software ® ® Use the right units Can you distinguish a 1-point story from a 2? How about a 17 from an 18? Use a set of numbers that make sense; I like: 1, 2, 3, 5, 8, 13 Stay mostly in a 1-10 range Nature agrees: Musical tones and volume are distinguishable on a logarithmic scale Use 0 and ½ if you like

© Mountain Goat Software ® ® Planning poker An iterative approach to estimating Steps Each estimator is given a deck of cards, each card has a valid estimate written on it Customer/Product owner reads a story and its discussed briefly Each estimator selects a card thats his or her estimate Cards are turned over so all can see them Discuss differences (especially outliers) Re-estimate until estimates converge

© Mountain Goat Software ® ® Planning pokeran example Erik Martine Inga Tor Estimator Round Round 2

© Mountain Goat Software ® ® Estimate these Product backlog itemEstimate Read a high-level, 10-page overview of agile software development in a celebrity magazine. Read a densely written 5-page research paper about agile software development in an academic journal. Write the product backlog for a simple eCommerce site that sells only clocks. Recruit, interview, and hire a new member for your team. Create a 60-minute presentation about agile estimating and planning for your coworkers. Wash and wax your boss Porsche. Read a 150-page book on agile software development. Write an 8-page description of agile development for your boss.

© Mountain Goat Software ® ® Free, or I wouldnt mention it

© Mountain Goat Software ® ® The right units for estimating How to estimate Release planning Planning with multiple teams Agenda

© Mountain Goat Software ® ® Release planning Release Planning Meeting Release Plan Sprint 1Sprint 2Sprint 3Sprints 47

© Mountain Goat Software ® ® Sprint 34 An example with velocity = 14 Sprint 1 Story A 5 Story B 8 Story E 1 Story A 5 Story B 8 Story E 1 Story C 3 Story D 5 Story F 3 Story G 3 Story H 13 Story I 5 Story J 8 Story C 3 Story D 5 Story F 3 Story G 3 Story H 13 Story I 5 Story J 8

© Mountain Goat Software ® ® Projections based on velocity Mean (Best 3) = 37 Mean (Last 8) = 33 Mean (Worst 3) = 28

© Mountain Goat Software ® ® Extrapolate from velocity At our slowest velocity, well end here (5 × 28) At our average velocity, well end here (5 × 33) At our average velocity, well end here (5 × 37) Assume 5 sprints left

© Mountain Goat Software ® ® Fixed-date planning Determine how many sprints you have Estimate velocity as a range Multiply low velocity × number of sprints Count off that many points; These are Will Have items Multiply high velocity × number of sprints Count off that many more points; these are might haves How much can I get by ?

© Mountain Goat Software ® ® Fixed-date planning example Desired release date Todays date Number of sprints Low velocity High velocity 30 June 1 January 6 (monthly) Will have Might have Wont have 6 × 15 6 × 20

© Mountain Goat Software ® ® The right units for estimating How to estimate Release planning Planning with multiple teams Agenda

© Mountain Goat Software ® ® Three issues Estimating in a common unit Sprint planning Dependencies

© Mountain Goat Software ® ® Establish a common baseline All teams should agree on story points or ideal days Establish a common baseline Select a dozen or so user stories that were done recently or are on the product backlog Estimate them en masse with Planning Poker

© Mountain Goat Software ® ® Be careful with cross-team comparisons When did this firm start comparing velocity? When did the yellow team figure out they were being compared?

© Mountain Goat Software ® ® Two approaches to sprint planning Stagger by a day Sprints end by ± a day Helps a key resource (e.g., a product owner or architect) fully participate in many planning meetings

© Mountain Goat Software ® ® The Big Room All sprints end on same day All planning is on same day and in one room Key resources shift between teams on demand The Big Room All sprints end on same day All planning is on same day and in one room Key resources shift between teams on demand

© Mountain Goat Software ® ® Dependencies Critical dependencies between teams Must be done in this order and likely to influence overall ship date Fewer of these than you may think Emergent dependencies OK, were going to start on such-and-such soon. As you know we need this-and-that first.

© Mountain Goat Software ® ® Buffer critical dependencies Sprint 1 Sprint 2 Sprint 3 Sprint 1 Sprint 2 Sprint 3 20 points10 points20 points 17 points

© Mountain Goat Software ® ® Rolling lookahead planning Sprint 1 Task Hours 8 8 Code the … Test the … 16 Integrate with … 5 5 Code the … 8 8 Design the … 4 4 Sprint 2Sprint 3

© Mountain Goat Software ® ® After Sprint 1 Sprint 1Sprint 2Sprint 3Sprints 47 Code…8 Test…4 Design4 Code…5 After Sprint 2 Sprint 2Sprint 3Sprint 4Sprints 57 Code…3 Test…7 Test…6 Code…8 While planning Sprint 2, a team rolls Sprint 4 into view. They discover a dependency on another team. The other team work on that item during Sprint 3.

© Mountain Goat Software ® ® Mike Cohn contact info (720)