Agile Concepts - II “Agile” Estimating & Planning Nupul Kukreja 5 th November, 2014.
Exploring Agile Estimating and Planning
-
Upload
nick-oostvogels -
Category
Business
-
view
802 -
download
0
Transcript of Exploring Agile Estimating and Planning
Exploring Agile
Estimating &
Planning
@NickOostvoge
ls
WHY
estimating
& planning?
http://www.flickr.com/photos/jakecaptive/3205277810/
It’s HARD !
http://www.flickr.com/photos/jypsygen/3732589905/
Why do we keep playing
this game?
http://www.flickr.com/photos/12203106@N05/1259607301/
The 5 wivesBecause my manager keeps
asking for them!
Because he needs to give
estimates
to his bossBecause the management team
needs to update the release
planningBecause our customers want to
know when they get their
new features
Because they are relying on our
solution for their own
business
1. WHY?
2. WHY?
3. WHY?
4. WHY?
5. WHY?
http://www.flickr.com/photos/jypsygen/3732589905/
Giving accurate estimates
is commercially interesting
and brings value to our
customers!
Other
reasons
To keep the pressure
on
http://www.flickr.com/photos/wwarby/3016549999/
Other
reasons
For political
reasons
http://www.flickr.com/photos/polandmfa/5537238802/
One month ago in
Poland
NO Belgian government for 291 days!
Now
NO Belgian government for 422 days!
Other reasons
Not having to work
together
http://www.flickr.com/photos/nanophoto69/5294068212/
Other reasons
Yearly budgetting
http://www.flickr.com/photos/bcgovphotos/5449582500/
Other reasons
Cost optimizing
Other reasons
Personne
l
planning
http://www.flickr.com/photos/sponng/32380259/
These are all REASONS
that can be dealt with
in another way!
but still...
Number 1 reason:
Customers!
HOW
Estimating
& Planning?
http://www.flickr.com/photos/jakecaptive/3205277810/
3 types of
estimating1. Guessing
http://www.flickr.com/photos/photojonny/2268845904/
3 types of
estimating
2. Counting
http://www.flickr.com/photos/ruiguerra/215254507/
3 types of
estimating
3. Measuring
http://www.flickr.com/photos/luis_is_rubbish_at_photography/5357065651/
Conclusion
Count or measure if you can, only use guessing or judgement as your last option.
Especially
when estimating
duration of tasks!
We ALL tend to be too OPTIMISTIC
Developers: • 20% - 30% too optimistic²
Managers : • We’ll be more productive
• Won’t make the same mistakes
• Catch up with extra effort
Guessing in ranges
When you can’t count or
measure
Task 1
Task 2
1 2 3 4 5
1 2 3 4 5
Guessing in ranges
Reveals information:
• How clear is the tasks
• A best and worst case scenario
Counting
What can you count?
Nr of
interfacesLines of code
Nr of
rulesNr of
roles
Function
points
Web pagesDatabase
tables
Planning by
counting1. Find something to count
closely related to size of
the software
2. Find something that’s
available now
3. Must be statistically
meaningful
4. Convert count to estimate
Measuring
http://www.flickr.com/photos/jakecaptive/3205277810/
WHY
does Agile need
a different
type of
planning?
Responding to
change
http://www.flickr.com/photos/driotinto/2878033778/
Customer
collaborationWhat’s the point in getting
feedback if you can’t do
anything with it?
Quest for value
What
should
we build?
Planning never ends
http://www.flickr.com/photos/michpics17/3476946665/
Comparison
Up-front
planning
• At the start
• Stick to the
plan
• Changes
Agile planning
• Ongoing
• Re-plan
• Changes
weighed
We need to plan FAST,
with good ACCURACY
and LITTLE DETAILED
information
• Ongoing
• Re-planning
• Changes
weighed
HOW can we
plan ‘Agile’?• Plan and re-
plan• The right thing at the right
time• With minimal
effort• With good
accuracy• And little detailed
information• Creating a shared framework of
understandinghttp://www.flickr.com/photos/jakecaptive/3205277810/
Guessing?
NOT Accurate
Too little requirements
are detailed
(only next sprint)
Counting &
Measuring?YES !
FAST
ACCURATE
Don’t need all
details
Agile counting &
measuring
COUNT pieces of functionality
(ex. user stories)
MEASURE team velocity or
feature cycle time
Issue : size & complexity
vary
Solution : use a
scale
Story points
T-shirt sizes
Fruit, ...http://www.flickr.com/photos/jaydedman/2593673396/
Issue : size & complexity
vary
Solution : SPLIT them to
approx. the same size and
benefit from the statistical
average
http://www.flickr.com/photos/jaydedman/2593673396/
Issue : size & complexity
vary
Solution : SPLIT them to
approx. the same size and
benefit from the statistical
average
http://www.flickr.com/photos/jaydedman/2593673396/
Issue : lot’s of
discussions
Solution : Poker
planning
http://www.flickr.com/photos/smannion/3385144016/
Solution : Good
Facilitation
http://www.flickr.com/photos/smannion/3385144016/
Issue : lot’s of
discussions
Issue : we never deliver
what we estimated
• Dedicated team! (or time)
• Compute velocity according to
capacity
• Strive for Zero defects
• Increase input quality (story
preparation)
Solution : Reduce variation
between input & output
Agile Release
PlanningHow the h*ll ?
can you make a release plan
without detailed up-front
analysis?
http://www.flickr.com/photos/tripphotogallery/4059486159/
Count & Measure
Relative estimates or dividing
into equal parts
TIP: Silent Grouping
Image by Ken Power
Count & Measure
Use historical data
to
project into the
future
http://www.flickr.com/photos/hdrphotographyblog/4498443106/
Count & Measure
• Low
• Medium
• High
Estimate in rangesScope
Time
Re-plan
Measure
velocity
Adjust release
plan
Scope
Time
Agile release
planning
‚What is most imporant?
• Delivering the FULL SCOPE
OR
• Delivering a useful product at a FIXED DATE
But answer this question first:
Count & Measure
• Business value
• Story mapping
• Dimensional planning
• Kano
• Bang for the buck
Prioritize
Because it’s part of history
and did not know about the
present!²
A plan loses its value right
after it is created
The only way
it makes sense to use a plan,
is when you continuously re-
plan!
Thanks!
@NickOostvogels
noostvog.wordpress.com
Resources