SlideShare a Scribd company logo
1 of 78
@gil_zilberfeld@gil_zilberfeld
Better Estimation
and Planning
@gil_zilberfeld
Hello!
I AM GIL ZILBERFELD
www.gilzilberfeld.com
www.everydayunittesting.com
@gil_zilberfeld
@gil_zilberfeld@gil_zilberfeld
Material available on
https://github.com/gilzilberfeld/better-estimation
@gil_zilberfeld
“Prediction is very
difficult, especially
about the future.” Niels Bohr,
Nobel Prize in Physics
@gil_zilberfeld
“It always takes longer than
you expect,
even when you take into
account
Hofstadter's Law”
Douglas Hofstadter
Professor of cognitive
science
@gil_zilberfeld@gil_zilberfeld
Why estimate?
@gil_zilberfeld
The estimation game
For each of the next 10 quantitative questions,
give a lower and an upper bound,
such that you believe with about 90% certainty
that the correct answer lies within the interval
given.
@gil_zilberfeld
The estimation game
This means that you should expect to guess
correctly for about 9 questions out of 10.
The estimation game
@gil_zilberfeld@gil_zilberfeld
Q: How many people are in this room?
A: You ‘guess’ an interval: 12-67
@gil_zilberfeld@gil_zilberfeld
Ready?
Have a pen and paper to write your ranges down!
@gil_zilberfeld@gil_zilberfeld
1. What was the date of birth of Bram Stoker,
author of Dracula?
@gil_zilberfeld@gil_zilberfeld
2. What is the population of the Republic of Brazil?
@gil_zilberfeld@gil_zilberfeld
3. What is the height, in meters, of the tallest
living redwood tree?
@gil_zilberfeld@gil_zilberfeld
4. How many standardized (ISO 6346) steel
shipping containers exist in the world?
@gil_zilberfeld@gil_zilberfeld
5. How many Boeing 747 (all models) have been
built at this date?
@gil_zilberfeld@gil_zilberfeld
6. What is the total number of human deaths
attributed to H5N1 “avian” flu?
@gil_zilberfeld@gil_zilberfeld
7. How many Syrian conflict refugees were
registered by UNHCR as of 1 Nov 2012?
@gil_zilberfeld@gil_zilberfeld
8. What was the total wine production of France in
2009, in hectoliters?
@gil_zilberfeld@gil_zilberfeld
9. How many Olympics medals altogether have
been won to date by Austrian athletes?
@gil_zilberfeld@gil_zilberfeld
10. What is the half-life, in years, of the isotope
Plutonium 239?
@gil_zilberfeld
1) 1847
2) 199 million
3) 115 meters
4) 20 million containers
5) 1486 747s
You can also split your content
6) 379 deaths
7) 286,000 refugees
8) 45 million hectoliters
9) 304 medals
10) 24 thousand years
How did you do?
@gil_zilberfeld@gil_zilberfeld
So what happened?
@gil_zilberfeld
@gil_zilberfeld@gil_zilberfeld
How do estimates help the product?
@gil_zilberfeld@gil_zilberfeld
Estimates are waste!
Maybe a necessary waste
@gil_zilberfeld@gil_zilberfeld
Are they working for you?
@gil_zilberfeld@gil_zilberfeld
Would you call a 15 min planning session a win?
@gil_zilberfeld
@gil_zilberfeld@gil_zilberfeld
Story points
@gil_zilberfeld
Story points are
thinly obfuscated
time,
no more and no
less.
Ron Jeffries
@gil_zilberfeld@gil_zilberfeld
Why obfuscate time?
@gil_zilberfeld
I am not sure I
invented story
points,
but if I did, I’m
sorry now.
Ron Jeffries
@gil_zilberfeld
Story points
◉ Everybody knows the “algorithm”
◉ The business talks in dates
◉ We want to encourage ubiquitous language and
openness
◉ Just use time measurements
@gil_zilberfeld@gil_zilberfeld
Planning Poker
@gil_zilberfeld
https://www.amazon.com/Agile-Stationery-Estimation-Poker-players/dp/B01MDTJDST
@gil_zilberfeld
Planning Poker
◉ Fibonacci numbers
◉ Full story estimation
◉ Promote discussion through variation
◉ All the team and just the team
◉ No HIPPOs
@gil_zilberfeld
@gil_zilberfeld
Not so helpful questions
◉ Is it a 3 or a 5?
◉ Should we take the top or the average?
◉ Should we go another round?
@gil_zilberfeld
Planning Poker
◉ Process that requires practice
◉ Make it quick or find another way
◉ Discuss the “why” behind variation
@gil_zilberfeld
@gil_zilberfeld@gil_zilberfeld
Consensus is not that important
@gil_zilberfeld
https://estimation.lunarlogic.io/
@gil_zilberfeld
@gil_zilberfeld@gil_zilberfeld
Let’s do some estimation
@gil_zilberfeld
The cheese marketplace
◉ Buy and sell cheese in our marketplace
◉ Buyers can buy different types of cheese from
different countries with different currencies and get
a single bill
@gil_zilberfeld
The cheese exchange
◉ Each line item comes with cheese type, amount,
price per kilo, and exchange rate against the EUR
◉ Bill Example:
Gouda::10::3.12::GBP
Pecorino::14::4.25::USD
Cheddar::8.99::CHF
@gil_zilberfeld
The cheese exchange
◉ Allow adding, modifying and deleting exchange
rates
◉ Process multi-currency bills and calculate the
total in required currency
◉ API based application accessible through mobile
and web and integration with at least 5 suppliers
@gil_zilberfeld
Group Exercise (10 mins)
◉ Examine the test plan
◉ Pick the 10 important items (we’re going to cover
them first)
◉ Define the estimation scale
◉ Keep the personal and group estimation for later
@gil_zilberfeld
Group exercise
◉ Do some planning poker
◉ Write down the variances and why
@gil_zilberfeld@gil_zilberfeld
What is a good estimate?
@gil_zilberfeld
The primary purpose of an
estimate is not to predict a
project’s outcome.
Steve McConnell, Software Estimation (2006)
It is to determine whether a
project’s targets are realistic
enough to allow the project to
be controlled to meet them.
@gil_zilberfeld@gil_zilberfeld
How confident are you with your estimates?
@gil_zilberfeld
Liz Keogh’s Complexity Scale
1. We all know how to do it
2. Someone on our team has done this before
3. Someone in our company has done this before
4. Someone has done this outside our organization
5. Nobody has done this before.
https://lizkeogh.com/2013/07/21/estimating-complexity/
@gil_zilberfeld
Group exercise
◉ Rate the different items
◉ How confident are you now?
@gil_zilberfeld
Experience based estimation
◉ Our estimates are based on our experience
◉ “I’ve done this before” -> It will probably be faster
than my last time
◉ “You’ve done this before” -> It will probably be
faster with your help
◉ “We haven’t done this before” -> It will take time
@gil_zilberfeld
@gil_zilberfeld
Comparative estimations
◉ We’re optimistic and want to please
◉ We don’t remember what it took last time
◉ We don’t remember how it looked last time
◉ We don’t foresee what will happen
◉ Our estimates suck
@gil_zilberfeld
@gil_zilberfeld
Group exercise: Let’s make history!
◉ Roll the dice for each test case 5 times
(iterations)
◉ For each complexity level :
1 - roll once
2,3 – roll twice
4,5 – roll 4 times
• Estimate the next iterations based on history
@gil_zilberfeld@gil_zilberfeld
What is velocity?
And how do you calculate it?
@gil_zilberfeld
Velocity is a measure
of the amount of work
a team can tackle
during a single sprint
https://www.scruminc.com/velocity/
@gil_zilberfeld@gil_zilberfeld
What happens if velocity is a goal?
@gil_zilberfeld
@gil_zilberfeld
But stories are not the same size!
◉ Make them the same size!
◉ If all stories / tasks are the same it’s easy to
count
◉ Count same-size stories over time, that is your
velocity
◉ Then estimation goes away!
@gil_zilberfeld
Projection over estimation
◉ Projection is what we think our progress would
be, based on the recorded past.
◉ We can be more statistically “precise”
◉ But it only works if people understand statistics
@gil_zilberfeld
Monte-Carlo simulation
◉ Based on small sample size, create projections in
different confidence levels
◉ The sample need relevance into the projected
future
@gil_zilberfeld
Demo: Monte Carlo Simulation
◉ Troy Magennis tools
◉ You need relevant data
◉ You need people who understand probabilities
@gil_zilberfeld
Group Exercise - How long will it take?
◉ Use
 The rolls as history
 Split rate based on complexity
 Maximum throughput is # of people on team
- 2
◉ When are all the tasks be done?
@gil_zilberfeld
@gil_zilberfeld@gil_zilberfeld
So what is this #NoEstimates nonsense?
@gil_zilberfeld
Estimates are
not the only
tools
@gil_zilberfeld
Trains!
@gil_zilberfeld
Value
estimation
@gil_zilberfeld
Flow – By Don Reinertsen
@gil_zilberfeld
Write them
down!
@gil_zilberfeld
Summary
◉ Estimates are not going away
◉ History is the greatest projector
◉ Use with other tools to make decisions
◉ And if you’re lucky, #NoEstimates await
@gil_zilberfeld
@gil_zilberfeld
Thanks!
ANY QUESTIONS?
You can find me at:
@gil_zilberfeld
http://www.GilZilberfeld.com
http://www.EverydayUnitTesting.com

More Related Content

Similar to Better Estimation and Planning

Similar to Better Estimation and Planning (20)

Real Life Test Maintenance
Real Life Test MaintenanceReal Life Test Maintenance
Real Life Test Maintenance
 
Zen and the Art of Test Maintenance
Zen and the Art of Test MaintenanceZen and the Art of Test Maintenance
Zen and the Art of Test Maintenance
 
Fractal test planning
Fractal test planningFractal test planning
Fractal test planning
 
The Whole Story - Mapping, Slicing and Figuring things out
The Whole Story - Mapping, Slicing and Figuring things outThe Whole Story - Mapping, Slicing and Figuring things out
The Whole Story - Mapping, Slicing and Figuring things out
 
The Untold User Story
The Untold User StoryThe Untold User Story
The Untold User Story
 
TDD For The Rest Of Us
TDD For The Rest Of UsTDD For The Rest Of Us
TDD For The Rest Of Us
 
ROI is Dead!
ROI is Dead!ROI is Dead!
ROI is Dead!
 
Why TDD is Important for Everyone
Why TDD is Important for EveryoneWhy TDD is Important for Everyone
Why TDD is Important for Everyone
 
Cinderella Story Content Strategy
Cinderella Story Content StrategyCinderella Story Content Strategy
Cinderella Story Content Strategy
 
TDD for the rest of us
TDD for the rest of usTDD for the rest of us
TDD for the rest of us
 
The Empire Tests First
The Empire Tests FirstThe Empire Tests First
The Empire Tests First
 
TDD patterns
TDD patternsTDD patterns
TDD patterns
 
Creating A Unit Testing Strategy
Creating A Unit Testing StrategyCreating A Unit Testing Strategy
Creating A Unit Testing Strategy
 
Beter code for better tests
Beter code for better testsBeter code for better tests
Beter code for better tests
 
Why do we need WiP?
Why do we need WiP?Why do we need WiP?
Why do we need WiP?
 
How To Leverage Employee Generated Content to Support Your Recruiting Efforts
How To Leverage Employee Generated Content to Support Your Recruiting Efforts How To Leverage Employee Generated Content to Support Your Recruiting Efforts
How To Leverage Employee Generated Content to Support Your Recruiting Efforts
 
Interview with the Vampire
Interview with the VampireInterview with the Vampire
Interview with the Vampire
 
Introduction to TDD
Introduction to TDDIntroduction to TDD
Introduction to TDD
 
Testing economics101
Testing economics101Testing economics101
Testing economics101
 
Coverage Lies
Coverage LiesCoverage Lies
Coverage Lies
 

More from Gil Zilberfeld

More from Gil Zilberfeld (14)

Dirty tests and How To Clean Them
Dirty tests and How To Clean ThemDirty tests and How To Clean Them
Dirty tests and How To Clean Them
 
Unit testing for Grown-ups
Unit testing for Grown-upsUnit testing for Grown-ups
Unit testing for Grown-ups
 
Spock: It's Only Logical
Spock: It's Only LogicalSpock: It's Only Logical
Spock: It's Only Logical
 
Dependency injection and Why It Matters to Testers
Dependency injection and Why It Matters to TestersDependency injection and Why It Matters to Testers
Dependency injection and Why It Matters to Testers
 
Spring Testing Features
Spring Testing FeaturesSpring Testing Features
Spring Testing Features
 
Agile Intro to DevOps
Agile Intro to DevOpsAgile Intro to DevOps
Agile Intro to DevOps
 
Playing games remotely
Playing games remotelyPlaying games remotely
Playing games remotely
 
An agile introduction to DevOps
An agile introduction to DevOpsAn agile introduction to DevOps
An agile introduction to DevOps
 
Work
WorkWork
Work
 
Introduction to BDD
Introduction to BDDIntroduction to BDD
Introduction to BDD
 
Introduction to Unit Testing
Introduction to Unit TestingIntroduction to Unit Testing
Introduction to Unit Testing
 
Simple
SimpleSimple
Simple
 
What is wrong with agile
What is wrong with agileWhat is wrong with agile
What is wrong with agile
 
Rebooting Application Life Cycle Management
Rebooting Application Life Cycle ManagementRebooting Application Life Cycle Management
Rebooting Application Life Cycle Management
 

Recently uploaded

%+27788225528 love spells in Boston Psychic Readings, Attraction spells,Bring...
%+27788225528 love spells in Boston Psychic Readings, Attraction spells,Bring...%+27788225528 love spells in Boston Psychic Readings, Attraction spells,Bring...
%+27788225528 love spells in Boston Psychic Readings, Attraction spells,Bring...
masabamasaba
 
%+27788225528 love spells in Atlanta Psychic Readings, Attraction spells,Brin...
%+27788225528 love spells in Atlanta Psychic Readings, Attraction spells,Brin...%+27788225528 love spells in Atlanta Psychic Readings, Attraction spells,Brin...
%+27788225528 love spells in Atlanta Psychic Readings, Attraction spells,Brin...
masabamasaba
 
+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...
+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...
+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...
Health
 
%+27788225528 love spells in Colorado Springs Psychic Readings, Attraction sp...
%+27788225528 love spells in Colorado Springs Psychic Readings, Attraction sp...%+27788225528 love spells in Colorado Springs Psychic Readings, Attraction sp...
%+27788225528 love spells in Colorado Springs Psychic Readings, Attraction sp...
masabamasaba
 

Recently uploaded (20)

%+27788225528 love spells in Vancouver Psychic Readings, Attraction spells,Br...
%+27788225528 love spells in Vancouver Psychic Readings, Attraction spells,Br...%+27788225528 love spells in Vancouver Psychic Readings, Attraction spells,Br...
%+27788225528 love spells in Vancouver Psychic Readings, Attraction spells,Br...
 
Generic or specific? Making sensible software design decisions
Generic or specific? Making sensible software design decisionsGeneric or specific? Making sensible software design decisions
Generic or specific? Making sensible software design decisions
 
Crypto Cloud Review - How To Earn Up To $500 Per DAY Of Bitcoin 100% On AutoP...
Crypto Cloud Review - How To Earn Up To $500 Per DAY Of Bitcoin 100% On AutoP...Crypto Cloud Review - How To Earn Up To $500 Per DAY Of Bitcoin 100% On AutoP...
Crypto Cloud Review - How To Earn Up To $500 Per DAY Of Bitcoin 100% On AutoP...
 
%in kempton park+277-882-255-28 abortion pills for sale in kempton park
%in kempton park+277-882-255-28 abortion pills for sale in kempton park %in kempton park+277-882-255-28 abortion pills for sale in kempton park
%in kempton park+277-882-255-28 abortion pills for sale in kempton park
 
%+27788225528 love spells in Boston Psychic Readings, Attraction spells,Bring...
%+27788225528 love spells in Boston Psychic Readings, Attraction spells,Bring...%+27788225528 love spells in Boston Psychic Readings, Attraction spells,Bring...
%+27788225528 love spells in Boston Psychic Readings, Attraction spells,Bring...
 
%in ivory park+277-882-255-28 abortion pills for sale in ivory park
%in ivory park+277-882-255-28 abortion pills for sale in ivory park %in ivory park+277-882-255-28 abortion pills for sale in ivory park
%in ivory park+277-882-255-28 abortion pills for sale in ivory park
 
%in tembisa+277-882-255-28 abortion pills for sale in tembisa
%in tembisa+277-882-255-28 abortion pills for sale in tembisa%in tembisa+277-882-255-28 abortion pills for sale in tembisa
%in tembisa+277-882-255-28 abortion pills for sale in tembisa
 
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️
 
%+27788225528 love spells in Atlanta Psychic Readings, Attraction spells,Brin...
%+27788225528 love spells in Atlanta Psychic Readings, Attraction spells,Brin...%+27788225528 love spells in Atlanta Psychic Readings, Attraction spells,Brin...
%+27788225528 love spells in Atlanta Psychic Readings, Attraction spells,Brin...
 
%in Harare+277-882-255-28 abortion pills for sale in Harare
%in Harare+277-882-255-28 abortion pills for sale in Harare%in Harare+277-882-255-28 abortion pills for sale in Harare
%in Harare+277-882-255-28 abortion pills for sale in Harare
 
+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...
+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...
+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...
 
SHRMPro HRMS Software Solutions Presentation
SHRMPro HRMS Software Solutions PresentationSHRMPro HRMS Software Solutions Presentation
SHRMPro HRMS Software Solutions Presentation
 
W01_panagenda_Navigating-the-Future-with-The-Hitchhikers-Guide-to-Notes-and-D...
W01_panagenda_Navigating-the-Future-with-The-Hitchhikers-Guide-to-Notes-and-D...W01_panagenda_Navigating-the-Future-with-The-Hitchhikers-Guide-to-Notes-and-D...
W01_panagenda_Navigating-the-Future-with-The-Hitchhikers-Guide-to-Notes-and-D...
 
OpenChain - The Ramifications of ISO/IEC 5230 and ISO/IEC 18974 for Legal Pro...
OpenChain - The Ramifications of ISO/IEC 5230 and ISO/IEC 18974 for Legal Pro...OpenChain - The Ramifications of ISO/IEC 5230 and ISO/IEC 18974 for Legal Pro...
OpenChain - The Ramifications of ISO/IEC 5230 and ISO/IEC 18974 for Legal Pro...
 
%in Midrand+277-882-255-28 abortion pills for sale in midrand
%in Midrand+277-882-255-28 abortion pills for sale in midrand%in Midrand+277-882-255-28 abortion pills for sale in midrand
%in Midrand+277-882-255-28 abortion pills for sale in midrand
 
Payment Gateway Testing Simplified_ A Step-by-Step Guide for Beginners.pdf
Payment Gateway Testing Simplified_ A Step-by-Step Guide for Beginners.pdfPayment Gateway Testing Simplified_ A Step-by-Step Guide for Beginners.pdf
Payment Gateway Testing Simplified_ A Step-by-Step Guide for Beginners.pdf
 
%in kaalfontein+277-882-255-28 abortion pills for sale in kaalfontein
%in kaalfontein+277-882-255-28 abortion pills for sale in kaalfontein%in kaalfontein+277-882-255-28 abortion pills for sale in kaalfontein
%in kaalfontein+277-882-255-28 abortion pills for sale in kaalfontein
 
10 Trends Likely to Shape Enterprise Technology in 2024
10 Trends Likely to Shape Enterprise Technology in 202410 Trends Likely to Shape Enterprise Technology in 2024
10 Trends Likely to Shape Enterprise Technology in 2024
 
%+27788225528 love spells in Colorado Springs Psychic Readings, Attraction sp...
%+27788225528 love spells in Colorado Springs Psychic Readings, Attraction sp...%+27788225528 love spells in Colorado Springs Psychic Readings, Attraction sp...
%+27788225528 love spells in Colorado Springs Psychic Readings, Attraction sp...
 
%in Hazyview+277-882-255-28 abortion pills for sale in Hazyview
%in Hazyview+277-882-255-28 abortion pills for sale in Hazyview%in Hazyview+277-882-255-28 abortion pills for sale in Hazyview
%in Hazyview+277-882-255-28 abortion pills for sale in Hazyview
 

Better Estimation and Planning