SlideShare a Scribd company logo
Estimations
Małgorzata Szweda, Blaze Hadzik, Magdalena Sitarek
what is an estimation?
estimation
noun es·ti·ma·tion ˌes-tə-ˈmā-shən
: a judgment or opinion about something
: the act of judging the size, amount, cost, etc., of something : the act of estimating something
: a guess about the size, amount, cost, etc., of something
why estimate?
there is one truth:
all clients love estimations
they mostly think:
you have knowledge, you’ve done
that before, that’s piece of cake, isn’
t it?
why estimate?
plan
budget
communication
so...
how to do it well?
is that even possible???
spoiler!
estimation is a well-
informed guess
you’re guaranteed to do it wrong from time to time
be prepared!
do your research
know what you want to use
ask around
the golden rule
From The Pragmatic Programmer: From Journeyman to Master:
What to Say When Asked for an Estimate
You say "I'll get back to you."
You almost always get better results if you slow the process down and spend some time going
through the steps we describe in this section. Estimates given at the coffee machine will (like the
coffee) come back to haunt you.
who should estimate?
not the client
not a dev that isn’t you
you
planning poker
group estimation
different experiences
broader idea of time needed
case study
Client thought of a new feature and asked me to estimate on the call.
What do I do?
never estimate unexpected things on a call!
ask for some time for research
case study
Client thinks he knows better and tells me I can do it faster.
What do I do?
explain why you think it’s not correct
work with your PM
if s/he’s right you finish faster
if s/he’s wrong there can be a delay
case study
Lead dev from the client’s team estimated the ticket for me and it’s wrong.
What do I do?
communicate it’s possible you won’t make it
they insisted and you ran out of time - explain why
work with your PM so you can estimate instead
how to estimate features?
make sure you know what needs to be done
remember that you need to write tests
remember about code review
there WILL be problems
how to estimate features?
feature = planning + actual work + tests + code review
+ bugs-that-never-happen-but-sometimes-do
how to estimate features?
add some padding!
the Blaze Time Tax = 1.75
DOs
ok, so here we are…
1) Gather requirements (ping pm/ client if needed) and do your research (mockups, APIs, edge cases...)
2) Ask when in doubt and explain when something’s amiss
3) There is always room to screw up and for things to go wrong - add padding
4) Track elapsed time and learn from past experiences
5) Ask around - check with others / internet / seniors / grandma / PM /
6) Use more than one method to arrive at an estimate, and look for a midpoint among all of them.
DON’Ts
1) Never estimate during the call !!
2) Don’t let anyone estimate for you
3) Don’t estimate without checking that you have everything
why we fail sometimes...
1. The presence of hidden or unknown variables that are difficult or impossible to anticipate,
and sometimes even more difficult to resolve.
2. Our often-idealistic views of our own capabilities. We frequently believe that we can
achieve much more than is possible in the available time.
3. A strong human desire to please other people by telling them what they want to hear.
(After all, who wants to be the bearer of bad news?)
how to estimate bugs?
Don’t.
No, seriously - DON’T.
But if you have to:
some bugs can’t be estimated - they need a no-idea label
if your guess was wrong - explain why you need more time
how to estimate projects?
that might surprise you, but…
you usually don’t work 8h a day
how to estimate projects?
that might surprise you, but…
you usually don’t work 8h a day :)
how come?
9am 11am 1pm 3pm 5pm
help reqlunch
email
checking
call
email
checking
and finally...
always think of the worst case scenario
and finally...
always think of the worst case scenario
… and then add even more time :)
responsibility
What is responsibility?
responsibility
What am I responsible for?
responsibility
Let your client know in case of delays & blockers
responsibility
Don’t be quiet.
responsibility
Be a friend.
responsibility
The missing feedback loop we want to have.
Cases
The API that has just been updated.
The integration no one knows about.
The project you don’t know about.
Cases
The client changes requirements.
The client is too cool.
The client asks you how long sth would take on a call.
Questions?
ask us now! :)
fill in the evaluation survey
and share your feedback

More Related Content

What's hot

The pragmatic programmer
The pragmatic programmerThe pragmatic programmer
The pragmatic programmer
Joel Corrêa
 

What's hot (14)

Some Example Questions
Some Example QuestionsSome Example Questions
Some Example Questions
 
The pragmatic programmer
The pragmatic programmerThe pragmatic programmer
The pragmatic programmer
 
Planning booklet
Planning bookletPlanning booklet
Planning booklet
 
Constraints
ConstraintsConstraints
Constraints
 
Pragmatic Programmer
Pragmatic ProgrammerPragmatic Programmer
Pragmatic Programmer
 
Task 2 22
Task 2 22Task 2 22
Task 2 22
 
Марта Комарницька
Марта КомарницькаМарта Комарницька
Марта Комарницька
 
BSidesSF talk: Overcoming obstacles in operationalizing security
BSidesSF talk: Overcoming obstacles in operationalizing securityBSidesSF talk: Overcoming obstacles in operationalizing security
BSidesSF talk: Overcoming obstacles in operationalizing security
 
The pragmatic programmer
The pragmatic programmerThe pragmatic programmer
The pragmatic programmer
 
99 problems but feedback ain’t one
99 problems but feedback ain’t one99 problems but feedback ain’t one
99 problems but feedback ain’t one
 
3 lessons on effective communication for engineers
3 lessons on effective communication for engineers3 lessons on effective communication for engineers
3 lessons on effective communication for engineers
 
Startup Product Management - Lessons Learned - Boulder Product Meetup - 14 Ma...
Startup Product Management - Lessons Learned - Boulder Product Meetup - 14 Ma...Startup Product Management - Lessons Learned - Boulder Product Meetup - 14 Ma...
Startup Product Management - Lessons Learned - Boulder Product Meetup - 14 Ma...
 
The Most Important Thing: How Mozilla Does Security and What You Can Steal
The Most Important Thing: How Mozilla Does Security and What You Can StealThe Most Important Thing: How Mozilla Does Security and What You Can Steal
The Most Important Thing: How Mozilla Does Security and What You Can Steal
 
Design thinking for Learning
Design thinking for LearningDesign thinking for Learning
Design thinking for Learning
 

Similar to Estimations

Get things done : pragmatic project management
Get things done : pragmatic project managementGet things done : pragmatic project management
Get things done : pragmatic project management
Stan Carrico
 
Module 3.1 PowerPoint Slide Deck - DOWNLOAD for Presentation version April 20...
Module 3.1 PowerPoint Slide Deck - DOWNLOAD for Presentation version April 20...Module 3.1 PowerPoint Slide Deck - DOWNLOAD for Presentation version April 20...
Module 3.1 PowerPoint Slide Deck - DOWNLOAD for Presentation version April 20...
GeorgeGozon1
 
Interview Tips & Techniques
Interview Tips & TechniquesInterview Tips & Techniques
Interview Tips & Techniques
Liz Hotham
 
Selling Smart Workshop - Questioning Technique - Asking the Right Questions
Selling Smart Workshop - Questioning Technique - Asking the Right QuestionsSelling Smart Workshop - Questioning Technique - Asking the Right Questions
Selling Smart Workshop - Questioning Technique - Asking the Right Questions
AnnArborSPARK
 

Similar to Estimations (20)

Managing expectations
Managing expectationsManaging expectations
Managing expectations
 
Data skills for Agile Teams- Killing story points
Data skills for Agile Teams- Killing story pointsData skills for Agile Teams- Killing story points
Data skills for Agile Teams- Killing story points
 
Get things done : pragmatic project management
Get things done : pragmatic project managementGet things done : pragmatic project management
Get things done : pragmatic project management
 
Hiring a developer: step by step debugging
Hiring a developer: step by step debuggingHiring a developer: step by step debugging
Hiring a developer: step by step debugging
 
Agile and scrum anti-patterns
Agile and scrum anti-patternsAgile and scrum anti-patterns
Agile and scrum anti-patterns
 
Planning for Uncertainty
Planning for UncertaintyPlanning for Uncertainty
Planning for Uncertainty
 
QA's lead role in agile transformations
QA's lead role in agile transformationsQA's lead role in agile transformations
QA's lead role in agile transformations
 
Room to Breathe: The BA's role in project estimation
Room to Breathe: The BA's role in project estimationRoom to Breathe: The BA's role in project estimation
Room to Breathe: The BA's role in project estimation
 
SearchLove San Diego 2017 | Joel Klettke | Don't Buy Your Customer a Beer: Ho...
SearchLove San Diego 2017 | Joel Klettke | Don't Buy Your Customer a Beer: Ho...SearchLove San Diego 2017 | Joel Klettke | Don't Buy Your Customer a Beer: Ho...
SearchLove San Diego 2017 | Joel Klettke | Don't Buy Your Customer a Beer: Ho...
 
ProductTank #20 Kraków- Customer development, how to validate your product idea
ProductTank #20 Kraków- Customer development, how to validate your product ideaProductTank #20 Kraków- Customer development, how to validate your product idea
ProductTank #20 Kraków- Customer development, how to validate your product idea
 
Improve Testing with a Zone Defense
Improve Testing with a Zone DefenseImprove Testing with a Zone Defense
Improve Testing with a Zone Defense
 
Top 10 Things To Do If You Want To Get Fired Over A WordPress Project
Top 10 Things To Do If You Want To Get Fired Over A WordPress ProjectTop 10 Things To Do If You Want To Get Fired Over A WordPress Project
Top 10 Things To Do If You Want To Get Fired Over A WordPress Project
 
Module 3.1 PowerPoint Slide Deck - DOWNLOAD for Presentation version April 20...
Module 3.1 PowerPoint Slide Deck - DOWNLOAD for Presentation version April 20...Module 3.1 PowerPoint Slide Deck - DOWNLOAD for Presentation version April 20...
Module 3.1 PowerPoint Slide Deck - DOWNLOAD for Presentation version April 20...
 
Want better estimation ?
Want better estimation ?Want better estimation ?
Want better estimation ?
 
A Complete Waste of Time - Redux
A Complete Waste of Time - ReduxA Complete Waste of Time - Redux
A Complete Waste of Time - Redux
 
Interview Tips & Techniques
Interview Tips & TechniquesInterview Tips & Techniques
Interview Tips & Techniques
 
Interview tips and techniques
Interview tips and techniquesInterview tips and techniques
Interview tips and techniques
 
Five Ways to Get Better Data From Our Users
Five Ways to Get Better Data From Our UsersFive Ways to Get Better Data From Our Users
Five Ways to Get Better Data From Our Users
 
Selling Smart Workshop - Questioning Technique - Asking the Right Questions
Selling Smart Workshop - Questioning Technique - Asking the Right QuestionsSelling Smart Workshop - Questioning Technique - Asking the Right Questions
Selling Smart Workshop - Questioning Technique - Asking the Right Questions
 
Dont Be On Time
Dont Be On TimeDont Be On Time
Dont Be On Time
 

Recently uploaded

Mastering Windows 7 A Comprehensive Guide for Power Users .pdf
Mastering Windows 7 A Comprehensive Guide for Power Users .pdfMastering Windows 7 A Comprehensive Guide for Power Users .pdf
Mastering Windows 7 A Comprehensive Guide for Power Users .pdf
mbmh111980
 

Recently uploaded (20)

A Comprehensive Appium Guide for Hybrid App Automation Testing.pdf
A Comprehensive Appium Guide for Hybrid App Automation Testing.pdfA Comprehensive Appium Guide for Hybrid App Automation Testing.pdf
A Comprehensive Appium Guide for Hybrid App Automation Testing.pdf
 
Cyaniclab : Software Development Agency Portfolio.pdf
Cyaniclab : Software Development Agency Portfolio.pdfCyaniclab : Software Development Agency Portfolio.pdf
Cyaniclab : Software Development Agency Portfolio.pdf
 
SOCRadar Research Team: Latest Activities of IntelBroker
SOCRadar Research Team: Latest Activities of IntelBrokerSOCRadar Research Team: Latest Activities of IntelBroker
SOCRadar Research Team: Latest Activities of IntelBroker
 
OpenFOAM solver for Helmholtz equation, helmholtzFoam / helmholtzBubbleFoam
OpenFOAM solver for Helmholtz equation, helmholtzFoam / helmholtzBubbleFoamOpenFOAM solver for Helmholtz equation, helmholtzFoam / helmholtzBubbleFoam
OpenFOAM solver for Helmholtz equation, helmholtzFoam / helmholtzBubbleFoam
 
Field Employee Tracking System| MiTrack App| Best Employee Tracking Solution|...
Field Employee Tracking System| MiTrack App| Best Employee Tracking Solution|...Field Employee Tracking System| MiTrack App| Best Employee Tracking Solution|...
Field Employee Tracking System| MiTrack App| Best Employee Tracking Solution|...
 
Agnieszka Andrzejewska - BIM School Course in Kraków
Agnieszka Andrzejewska - BIM School Course in KrakówAgnieszka Andrzejewska - BIM School Course in Kraków
Agnieszka Andrzejewska - BIM School Course in Kraków
 
TROUBLESHOOTING 9 TYPES OF OUTOFMEMORYERROR
TROUBLESHOOTING 9 TYPES OF OUTOFMEMORYERRORTROUBLESHOOTING 9 TYPES OF OUTOFMEMORYERROR
TROUBLESHOOTING 9 TYPES OF OUTOFMEMORYERROR
 
Studiovity film pre-production and screenwriting software
Studiovity film pre-production and screenwriting softwareStudiovity film pre-production and screenwriting software
Studiovity film pre-production and screenwriting software
 
WSO2Con2024 - WSO2's IAM Vision: Identity-Led Digital Transformation
WSO2Con2024 - WSO2's IAM Vision: Identity-Led Digital TransformationWSO2Con2024 - WSO2's IAM Vision: Identity-Led Digital Transformation
WSO2Con2024 - WSO2's IAM Vision: Identity-Led Digital Transformation
 
AI/ML Infra Meetup | Perspective on Deep Learning Framework
AI/ML Infra Meetup | Perspective on Deep Learning FrameworkAI/ML Infra Meetup | Perspective on Deep Learning Framework
AI/ML Infra Meetup | Perspective on Deep Learning Framework
 
Mastering Windows 7 A Comprehensive Guide for Power Users .pdf
Mastering Windows 7 A Comprehensive Guide for Power Users .pdfMastering Windows 7 A Comprehensive Guide for Power Users .pdf
Mastering Windows 7 A Comprehensive Guide for Power Users .pdf
 
How Does XfilesPro Ensure Security While Sharing Documents in Salesforce?
How Does XfilesPro Ensure Security While Sharing Documents in Salesforce?How Does XfilesPro Ensure Security While Sharing Documents in Salesforce?
How Does XfilesPro Ensure Security While Sharing Documents in Salesforce?
 
De mooiste recreatieve routes ontdekken met RouteYou en FME
De mooiste recreatieve routes ontdekken met RouteYou en FMEDe mooiste recreatieve routes ontdekken met RouteYou en FME
De mooiste recreatieve routes ontdekken met RouteYou en FME
 
Accelerate Enterprise Software Engineering with Platformless
Accelerate Enterprise Software Engineering with PlatformlessAccelerate Enterprise Software Engineering with Platformless
Accelerate Enterprise Software Engineering with Platformless
 
Facemoji Keyboard released its 2023 State of Emoji report, outlining the most...
Facemoji Keyboard released its 2023 State of Emoji report, outlining the most...Facemoji Keyboard released its 2023 State of Emoji report, outlining the most...
Facemoji Keyboard released its 2023 State of Emoji report, outlining the most...
 
top nidhi software solution freedownload
top nidhi software solution freedownloadtop nidhi software solution freedownload
top nidhi software solution freedownload
 
Breaking the Code : A Guide to WhatsApp Business API.pdf
Breaking the Code : A Guide to WhatsApp Business API.pdfBreaking the Code : A Guide to WhatsApp Business API.pdf
Breaking the Code : A Guide to WhatsApp Business API.pdf
 
Crafting the Perfect Measurement Sheet with PLM Integration
Crafting the Perfect Measurement Sheet with PLM IntegrationCrafting the Perfect Measurement Sheet with PLM Integration
Crafting the Perfect Measurement Sheet with PLM Integration
 
Advanced Flow Concepts Every Developer Should Know
Advanced Flow Concepts Every Developer Should KnowAdvanced Flow Concepts Every Developer Should Know
Advanced Flow Concepts Every Developer Should Know
 
Abortion ^Clinic ^%[+971588192166''] Abortion Pill Al Ain (?@?) Abortion Pill...
Abortion ^Clinic ^%[+971588192166''] Abortion Pill Al Ain (?@?) Abortion Pill...Abortion ^Clinic ^%[+971588192166''] Abortion Pill Al Ain (?@?) Abortion Pill...
Abortion ^Clinic ^%[+971588192166''] Abortion Pill Al Ain (?@?) Abortion Pill...
 

Estimations

  • 1. Estimations Małgorzata Szweda, Blaze Hadzik, Magdalena Sitarek
  • 2. what is an estimation? estimation noun es·ti·ma·tion ˌes-tə-ˈmā-shən : a judgment or opinion about something : the act of judging the size, amount, cost, etc., of something : the act of estimating something : a guess about the size, amount, cost, etc., of something
  • 3. why estimate? there is one truth: all clients love estimations they mostly think: you have knowledge, you’ve done that before, that’s piece of cake, isn’ t it?
  • 5. so... how to do it well? is that even possible???
  • 6. spoiler! estimation is a well- informed guess you’re guaranteed to do it wrong from time to time
  • 7. be prepared! do your research know what you want to use ask around
  • 8. the golden rule From The Pragmatic Programmer: From Journeyman to Master: What to Say When Asked for an Estimate You say "I'll get back to you." You almost always get better results if you slow the process down and spend some time going through the steps we describe in this section. Estimates given at the coffee machine will (like the coffee) come back to haunt you.
  • 9. who should estimate? not the client not a dev that isn’t you you
  • 10. planning poker group estimation different experiences broader idea of time needed
  • 11. case study Client thought of a new feature and asked me to estimate on the call. What do I do? never estimate unexpected things on a call! ask for some time for research
  • 12. case study Client thinks he knows better and tells me I can do it faster. What do I do? explain why you think it’s not correct work with your PM if s/he’s right you finish faster if s/he’s wrong there can be a delay
  • 13. case study Lead dev from the client’s team estimated the ticket for me and it’s wrong. What do I do? communicate it’s possible you won’t make it they insisted and you ran out of time - explain why work with your PM so you can estimate instead
  • 14. how to estimate features? make sure you know what needs to be done remember that you need to write tests remember about code review there WILL be problems
  • 15. how to estimate features? feature = planning + actual work + tests + code review + bugs-that-never-happen-but-sometimes-do
  • 16. how to estimate features? add some padding! the Blaze Time Tax = 1.75
  • 17. DOs ok, so here we are… 1) Gather requirements (ping pm/ client if needed) and do your research (mockups, APIs, edge cases...) 2) Ask when in doubt and explain when something’s amiss 3) There is always room to screw up and for things to go wrong - add padding 4) Track elapsed time and learn from past experiences 5) Ask around - check with others / internet / seniors / grandma / PM / 6) Use more than one method to arrive at an estimate, and look for a midpoint among all of them.
  • 18. DON’Ts 1) Never estimate during the call !! 2) Don’t let anyone estimate for you 3) Don’t estimate without checking that you have everything
  • 19. why we fail sometimes... 1. The presence of hidden or unknown variables that are difficult or impossible to anticipate, and sometimes even more difficult to resolve. 2. Our often-idealistic views of our own capabilities. We frequently believe that we can achieve much more than is possible in the available time. 3. A strong human desire to please other people by telling them what they want to hear. (After all, who wants to be the bearer of bad news?)
  • 20. how to estimate bugs? Don’t. No, seriously - DON’T. But if you have to: some bugs can’t be estimated - they need a no-idea label if your guess was wrong - explain why you need more time
  • 21. how to estimate projects? that might surprise you, but… you usually don’t work 8h a day
  • 22. how to estimate projects? that might surprise you, but… you usually don’t work 8h a day :) how come? 9am 11am 1pm 3pm 5pm help reqlunch email checking call email checking
  • 23. and finally... always think of the worst case scenario
  • 24. and finally... always think of the worst case scenario … and then add even more time :)
  • 26. responsibility What am I responsible for?
  • 27. responsibility Let your client know in case of delays & blockers
  • 30. responsibility The missing feedback loop we want to have.
  • 31. Cases The API that has just been updated. The integration no one knows about. The project you don’t know about.
  • 32. Cases The client changes requirements. The client is too cool. The client asks you how long sth would take on a call.
  • 33. Questions? ask us now! :) fill in the evaluation survey and share your feedback

Editor's Notes

  1. By definision therefore estimates cannot a treated as a contract. Nevertheless, put simply - no one wants to be the guy (or gal) who invoices for two hours of their time but ends up working five.
  2. they mostly think: you have knowledge, you’ve done that before, that’s piece of cake, isn’t it?
  3. One: it’s a pain in the butt. Two: nobody believes in it ; if our estimates are wrong, and most of the time they are, why should we even attempt estimating in the first place?
  4. http://www.amazon.com/dp/020161622X/
  5. The idea is simple. Individual stories are presented for estimation. After a period of discussion, each participant chooses from his own deck the numbered card that represents his estimate of how much work is involved in the story under discussion. All estimates are kept private until each participant has chosen a card. At that time, all estimates are revealed and discussion can begin again.
  6. if you see you’re running out of time leave a PT comment, message on Slack, talk to your client and elaborate on a issue.
  7. if you’re going overtime with a task or have problems it is your job as a developer to let your PM AND your client know
  8. if you’re doing work on a ticket that somebody else’s work depends on - communicate