0% found this document useful (0 votes)
1K views108 pages

Agile Estimating and Planning 5b18dad07f8b9a45398b461e

The document provides information about agile estimating and planning. It discusses why plans often go wrong due to factors like lateness being passed down schedules, student syndrome of procrastinating tasks, and the inefficiencies of multitasking. It then outlines what makes for a good plan in agile, including focusing on planning over rigid plans, supporting reliable decision making, and viewing plans as evolving views rather than commitments. The document details various agile planning practices like using product, release and sprint backlogs to plan in iterations, estimating story points to measure task size, and using planning poker to iteratively estimate tasks by consensus.

Uploaded by

Poero CARO
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
1K views108 pages

Agile Estimating and Planning 5b18dad07f8b9a45398b461e

The document provides information about agile estimating and planning. It discusses why plans often go wrong due to factors like lateness being passed down schedules, student syndrome of procrastinating tasks, and the inefficiencies of multitasking. It then outlines what makes for a good plan in agile, including focusing on planning over rigid plans, supporting reliable decision making, and viewing plans as evolving views rather than commitments. The document details various agile planning practices like using product, release and sprint backlogs to plan in iterations, estimating story points to measure task size, and using planning poker to iteratively estimate tasks by consensus.

Uploaded by

Poero CARO
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 108

Agile

Estimating
and
Planning
Special thanks to
Mike Cohn,
founder of
Mountain Goat
Software, who gave
us permission to
use this material.

mountaingoat
software.com
720-890-6110
Where’s
my
plan?
Why plans go wrong…
Lateness passed down schedule

• Task 3 late when?


Student syndrome
• Have you ever started a term paper the
night before it was due?
Student syndrome

• It is based on estimates like this:


Task Local Safety
Student syndrome

• It is based on estimates like this:


Task Local Safety

• But we do this:
Local Safety Task
Multitasking

• 20-30% time increase to do each task


• Greater loss on complex tasks
Task 1 Task 2 Task 3

1 2 3 1 2 3 1 2 3 1 2 3 1 2 3 1 2 3 1 2 3 1 2 3
To do two things at
once is to do neither.
- Publilius Syrus
The Effects of Multitasking
What’s a good plan?
Project Management

“It is a bad plan that admits to no


modifications.”
-- Publilius Syrus (ca. 42 BCE)
What’s a Good Plan?

 Supports reliable decision-making

Go from:
 Will be done in fourth quarter
 … in November
 …. November 7
A Plan is NOT a Commitment

It is a current view.
If one sticks to the idea that once set, a
plan should not be changed, a business
cannot exist for long.
--- Taiichi Ohno

In preparing for battle I have always


found that plans are useless, but
planning is indispensable.
--- Dwight D. Eisenhower
AA
Plan is NOT a Commitment
Plan is NOT a Commitment
 If plans are commitments, then we are
committing to decisions made when we were
the most ignorant (recall the cone of
uncertainty, 5%)
 Measuring conformance to plan is measuring
the wrong thing because the plan will change
What makes planning Agile?

 More focused on planning than the plan


 Encourages change
 Plans are easily changed
 Done throughout the project
What’s an Agile plan?

In the form of three backlogs:


 Product Backlog
Epics and Themes for Product
 Release Backlog
Release Theme and User Stories
 Sprint Backlog
User Stories and tasks planned for
the Sprint (iteration)
Product Planning
Product Planning

 Product Backlog:
 Develop Epic User Stories
 Prioritize based on Business Value
 Define release themes
 Place Epics into releases

Who: Stakeholders, Business and Team


Release Planning
Release Planning
Product Backlog (Prioritized Epics and Themes)
H

Release Planning Meeting


H

Release Backlog for Epic


High BV Medium BV Low BV
M

L
Release Planning,
Planning part 1

 Release Backlog:
 Develop User Stories for ONE release
 Prioritize based on Business Value

Who: Stakeholders, Business and Team


Release
ReleasePlanning, part
Planning, 22
part

 Estimate Story Points on User Stories

Who: Delivery Team


Agile
Estimating
Exercise: How long will it take …

…. to read the
latest Harry
Potter book?
…. to drive to
Austin, TX?
Estimate Size by Deriving Duration

Size Calculation Duration

Velocity 300/20=
300
= 15
kilograms
20 iterations
measure of size
Traditional Measure of Size

Traditional
measures
of size:

Lines of Code
Function Points
Agile Measure of Size
Agile Measure of Size

Agile
measures
of size:

Story Points
Story Points

As a buyer, I
 The “bigness” want to be able
of a task to have some but
 Points are unit-less not all items in
 Influenced by my cart gift
• How hard it is
wrapped.
• How much there is
8
Story Points

 Relative values are what is important:


• A login screen is a 2.
• A search feature is an 8.
 Basic math properties hold, e.g., 5+5 = 10

As a mailer, I want to produce


discounted mailings for 1st
class automation letters and
flats 30
Exercise: Dog Points

Assign “dog
points” to the
following breeds: Labrador Retriever
Dachshund
Great Dane
Terrier
German Shepherd
Poodle
St. Bernard
Bulldog
Why Story Points

• Help drive cross-


functional behavior
• Estimates do not
decay
• Pure measure of size
• Estimating is
typically faster
Estimating Tips and
Techniques
Estimate by Analogy

 Compare one user story to another


• “This story is like that story”
 Don’t use a single gold standard
• Triangulate: Compare the story to be estimated to
other estimated stories
Triangulation
Triangulation
 Compare a story to similar stories
 Group like-sized stories

5 pts Story A Story D

3 pts Story E Story H Story J Story K

2 pts Story C Story F

1 pt Story B Story G Story I


Disaggregation
 Breaking a big story into smaller stories
• Can’t estimate the big story – don’t know enough
• Break into smaller estimatable stories
 Don’t get too small
• Small errors can add up
• Tasks slip through cracks
How
Howmuch
mucheffort?
effort?

 A little effort
helps a lot
 A lot more
effort only
helps a little
Use the Right Units
 Can you distinguish a 1-point story from a 2?
 Can you distinguish a 17 from an 18?
 Use units that makes since, such as
• 1, 2, 3, 5, 8, 13
• 1, 2, 4, 8 Use Planning Poker Cards
Planning Poker
An iterative approach to planning:
 Team members use planning poker cards to
make an estimate
 Product owner reads and discusses a story
 Each team member selects a card that’s her
estimate, placing it face down
 When all cards are face down, turn them over
 Outliers are discussed
 Continue estimating and discussing until
consensus reached
Planning Poker Example

Estimator Round 1
Susan 3
Vadim 8
Ann 2
Chris 5
Planning Poker Example

Estimator Round 1 Round 2


Susan 3 5
Vadim 8 5
Ann 2 5
Chris 5 8
Planning Poker Example

Estimator Round 1 Round 2 Round 3


Susan 3 5 5
Vadim 8 5 5
Ann 2 5 5
Chris 5 8 5
Exercise: Agile Estimating
Item # Product Backlog Item Estimate
1 Read a high-level 10-page overview of agile software
development in People magazine.
2 Read a densely written 5-page research paper about agile
software development in an academic journal.
3 Write the product backlog for a simple eCommerce site that
sells only clocks.
4 Recruit, interview, and hire a new member for your team.
5 Create a 60-minute presentation about agile estimating and
planning for your co-workers.
6 Wash and wax your boss’ Porsche.
7 Read a 150-page book on agile software development.
8 Write an 8-page summary of that book for your boss.
Planning Poker Guidelines
Rules

 Only delivery team members estimate their


user stories
 Outliers explain their estimates
 Everyone’s opinion is heard
 It’s a conversation! Not a commitment.
Release Planning, part 2

Estimate Story Points on User


Stories
Who: Delivery Team

Exercise: Estimate your user stories using


story points.
Leadership Role

Sprint Planning
Sprint Planning
 Determine user stories
in sprint
 Define “done, done,
done”
 Team commits
 Create an information
radiator
Who: Delivery Team
Sprint
Sprint Duration
Duration
Sprint Duration

How long can you


keep business
changes out of the
sprint?
Sprint
Sprint Planning
Planning Meeting
Session
Sprint Planning Meeting
 Held at the beginning of a new Sprint
 Chaired by the Scrum Master
 Attended by all including Key Stakeholders
 Update the Product Backlog with new user
stories
 Select highest priority items in the backlog
based on Business Value And Optimization
of team resources
Creating
Creating a Sprint Backlog
Create a Sprint Backlog
As a card holder, I want to
Team may break be able to withdraw funds
from my account so I can
down stories into have cash available to me
tasks (all tasks must  Make a withdrawal with
be done to demo sufficient funds

User Story)  Make a withdrawal with


insufficient funds
(exception)

 Make a withdrawal when


specified demonization
not available (exception)
Team Defines
Team ‘Done3’
Defines of “Done”
Consider:
 No showstoppers
 All errors that the team has not agreed to
are removed
 Code is unit tested, function tested,
system tested, performance tested, tested
end-to-end
 A meaningful stakeholder review has
been conducted
Can ‘Done3’
Team really
Defines be done?
“Done”
This puts a high premium on:
 Valuable, maintained, nested automation
 Appropriate coverage (e.g. 80%)
 True test-driven development
 Avoiding technical debt
 Continuous integration
 Really understanding what quality looks
like
Example‘Done4’
Example:

Jeff Sutherland (co-creator of Scrum), said while


@ PatientKeeper:
“It took us four years to get done,
done, done, done.”
Patientkeeper provides safety critical patient
management software
Example‘Done4’
Example:

What does “Done”, “Done”, “Done” , “Done”


mean?
 It is fully developed
 It is fully tested
 It has no Severity 1s or 2s
 It has been deployed before a release in a client
environment
Example‘Done4’
Example:

They ship
 A major release every 3 months
 A minor release every month
 And minor updates once a week

Consider the competitors, teams of 600-700


developers and they cannot achieve the work
flow Patientkeeper does.
Information Radiator
Information Radiator

 Visual representation of progress


 Display of:
• Work Planned (Product, Release and Sprint)
• Work in Progress
• Work Done
• User Stories to mitigate risk
• User Stories to gather information to make future
decisions
Information Radiator
Sprint 2 Release
Backlog
WP WIP WD
Epic:

New User Stories


Information
Information Radiator
Radiator
Sprint 2 Release
Backlog
WP WIP WD
Epic:
BH

AK

CO

New User Stories


Information Radiator
Sprint 2 Release
Backlog
WP WIP WD
Epic:
BH AK

CO CO

AK

New User Stories


Example:
Example Information Radiator
Sprint Burndown Chart
Burndown Chart
Part of the Information Radiator
Release Burn Up Chart
Done for sprint results against total release backlog.
Exercise: Information Radiator
Create an Information Radiator

Create an information radiator


 Place all sprint stories onto the Information
Radiator under Work Planned column
 Add a section for “New User Stories”
 Decide what ‘Done’ is
Velocity
Velocity

 Long-term measure of work completed in


iterations
 A GUIDE not a goal.
Track Velocity Multiple Ways

Last Observation=36
Mean (last 8)=33
Mean (lowest 3)=28
Extrapolate from Velocity

Assume five iterations left

Finish here at lowest velocity: 5x28

Finish here at average velocity: 5x33


Finish here at current velocity: 5x36
How much can I get by
<date>?
Fixed Date ‘Planning’

 Determine how many iterations you have


 Estimate high and low velocity
 Low velocity times iterations = ‘will have’
stories
 High velocity times iterations = ‘might have’
 All the rest = ‘will not have’
Fixed Date ‘Planning’ Example

Will have

12x15

Might have
12x20
Won’t have
Agile
Estimating
and Planning
Summary
Product Planning
Product Backlog

Input SOW, Purpose


Output Prioritized Product
Backlog (Epics and Release
Themes)
Who Business, Product
Owner, Dev Team
representatives
Release Planning, part 1
Product Backlog
H
Release
Backlog Input Product Backlog
H
Theme Output Prioritized
M
H/P
H/D
Release Backlog
H/P
H/D
(User Stories)
M
H/P marked as
M/D
M/P differentiating or
M/P
M M/P
M/P
parity
M/D
M/P
Who Business, Product
L

L/D
L/P
Owner, Dev Team
Release Planning, part 2
Release Planning Meeting 2
Release
Backlog
Input Release Backlog
Theme
H/P 5
H/D 5
Output Estimated and
H/P
1
3 Prioritized Release
H/D
H/P 1 Backlog (story points)
M/D 3
M/P 8
M/P 1
M/P 5
Who Delivery Team using
M/P 2
M/D 2
planning poker
M/P 5
L/P 2
L/D 3
Release Planning, part 2
Release Planning Meeting 2
Release
Backlog
Input Release Backlog
Theme
H
5
5 Output Estimated and
H
H
1
3 Prioritized Release
H
H
3
1 Backlog (story points)
M
M 8

M
M
5
1 Who Delivery Team using
M
M 2

2
planning poker
M 5
L 2
L 3
Sprint Planning
Sprint Planning Meeting
WP WIP WD Input Release Backlog
Output Sprint Backlog,
Definition of Done,
Architecture Spike,
Information
Radiator
Who Delivery Team
New User Stories
References

Refer to Mike Cohn’s


book for details on
how to estimate and
plan.
Estimating & Planning
Scrum Deep Dive - Questions
For every sprint …
Scrum

Release
Backlog
Daily Standup Scrum Meetings

 Daily 15 minute status meeting


 Same place and time every day
 Chaired by Scrum Master
 Attended by entire sprint team
 Others can attend
 Chickens and pigs (only the deliverers
speak)
Daily Scrums

Each team member answers:


 What did you do yesterday?
 What are you doing today?
 What are your blocking
issues?
No problem solving!
Leave after 15 minutes!
Daily Scrum Outcome
Records
 Sprint Backlog up to date
 Scrum Master updates the blocks list
Sprint Review Meeting

 Held the last day of the sprint


 Attended by team
 Team demos “done” user stories to
stakeholders
 Requests feedback
 Team holds retrospective
 Updates the process for the next sprint
Demonstration

 Only DONE DONE working user stories.


 Ask for attendance from the following:
• Executives
• Internal users
• Stakeholders
• Customers
 Early iterations may be
unsuitable for
customers
 Add or Update Stories on
the Release Backlog
Retrospective

 Keep
 Drop
 Add

Keep? Drop? Add?


What surprised us?
Other Retrospective Questions
 What was
 Keep
supposed to
happen?
 Drop
 Add  What actually
happened?
 Why were there
differences?
Take Action

 Keep
 Drop
 Add

What process changes


will we make for the next
iteration?
The Team owns the learning from
the retrospective.

They do not have to share it with


the rest of the organization..
Unleashing Innovation

Scrum Exercise
Collaboration Process
Develop a Brochure in a 3-day Sprint
Complete Sprint Planning Meeting -10min
00
 Select at least 5 Product Backlog Items
01
02
03
04
05
06
07
08
09
10
 Identify 2 to 3 Tasks per Item
Day 1
00
08
01
02
03
04
05
06
07
 8 minute day

Day 2
 2 minute Daily Scrum
00
01
02 00
08
01
02
03
04
05
06
07
 8 minute day
Day 3
 2 minute Daily Scrum Meeting
00
02
01 00
08
01
02
03
04
05
06
07  8 minute day

Demo & Reflection


Unleashing Innovation

Scrum Exercise
Retrospective
Collaboration Process
Agile Summary

Protect Team Boundaries


Scrum

Release
Backlog
Scrum on a Page

Roles
Stakeholders Product Scrum Team
Owner Master

Product Release Sprint Blocks Information


Artifacts Backlog Backlog Backlog List Radiator

Product Release Sprint Daily Sprint Review


Meetings Planning Planning Planning Scrum Meetings

Concept inspired by William Wake’s “Scrum on a Page,” http://xp123.com/xplor/xp0507/index.shtml


Leadership Role

Agile is continuous learning


and adaptive planning.

- M. Buckingham
Leadership Role

A good agile project will build


something that meets customers
needs but may be different from
original plans.

- Jim Collins
Agile Highlights

 Make decisions together to avoid handoffs


 Dev Team decides how – nothing technical in
user stories
 Cover all types of stakeholders
 It’s all about learning
 Pace yourselves
 Don’t accumulate technical debt
 Beware of chicken subversion
Getting Started Tips

 Expect the teams to over estimate in the first


few sprints
 It will take about 5 sprints to develop a
cadence and velocity
 Teams may take on too much after some time
 Watch out for anti-bodies
Things to Consider

 Management Support
 Strong and Experienced Leader(s)
 Picking the right project as a proof point
 Providing the right education, tooling and
governance
 Ability to allow change to occur
 Keep it Simple
Scrum has been used by:
• Microsoft • Intuit
• Yahoo • Nielsen Media
• Google • First American Real
• Electronic Arts Estate
• Lockheed Martin • BMC Software
• Philips • Ipswitch
• Siemens • John Deere
• Nokia • Lexis Nexis
• IBM • Sabre
• Capital One • Salesforce.com
• BBC • Time Warner
• Pitney Bowes • Turner Broadcasting
References
 http://scrumalliance.org/pages/
what_is_scrum
 Scrum and XP from the Trenches, Henrik Kniberg
http://www.infoq.com/minibooks/scrum-xp-
from-the-trenches
 http://c2.com/cgi/wiki?PairProgrammingBene
fits
 The Elegant Solution, Matthew May
 Outside-in Software Development, Carl Kessler
and John Sweitzer
References

Agile Project Management with


Scrum, Ken Schwaber
(for scrum novices)

Agile Software Development with


Scrum, Ken Schwaber and Mike
Beedle
(for experienced scrum types)
Feedback
1. WWW: What Went Well
2. WCBI: What Could Be
Improved
3. NPS: Net Promoter Score

“Would you recommend this class


to a peer?”

10-9 Yes!
8-7 Neutral
0-6 No way!

You might also like