SlideShare uma empresa Scribd logo
1 de 30
Baixar para ler offline
STOP
MULTIPLYINGBY4
CHUCK REEVES @MANCHUCK
What is estimation?
Why even estimate?
Why should developers estimate?
I'll tell you how I estimate things. I sit down and figure out how
long I think it would take me to do it. Then I double that time and
then I push it up to the next point on the “Time Progression
Scale”. Were the “Time Progress Scale” starts off: seconds,
minuets, hours and days. So if I think something is going to take
me 4 hours to do. I will double it to 8 and then I would say it
would take me 8 days to get it all completely done start to finish.
And I'm usually right, because there are so many impediments. If
you are the only one doing it yourself your schedule can be very
accurate. Once you have to involve other people, you might as
well just make numbers up. You might as well say “I think this will
take me Blue days to get done”
- Development hell podcast; Episode 29: Snappy to Snappy question
2 + x = 5
Deduction
2 + x = y
Induction
Requirements are the key
Measure what is measurable, but make measurable what is not so
-Galileo Galilei
“Wordy” Expression
Our new Contact form, is a quick and easy way for the sales
team to collect information to contact people to sell our
service. The contact form will require someone to enter in:
Their name, their email address and their phone number.
The sales team will then contact that person to tell them
how awesome our service is
Actors:
Sales – Employees of Initech who promote the
product
Leads – People who are not already signed on for
Initech products
The contact form will have fields for: Name, Email, and Valid
Phone number.
Misplaced Modifier
The contact form allows Leads to enter in: Name, Email and
Valid phone number. The sales team needs a list of leads with
the option to mark as contacted
Top Tip: Prevent children from ingesting dangerous medicines by locking
them in a childproof cupboard. 3 children per cupboard is a good fit
-Periwinkle Jones @peachesanscream
The contact form will have fields for: Name, Email, and Phone number.
All fields are required and must be validated. The sales team needs a list of
leads. Sales team needs a checkbox to mark a lead as contacted
Valid Phone numbers:
(202) 456-1111
555-1212
212-867-5309
1-800-MATTRES
911
+44 871 984 6352
+852 2280 2898
+91 11 2679 1234
fast, rapid, efficient Use a set time: "5 seconds"
valid, including but not limited too,
etc., and so on
Describe what is valid or invalid. use
comprehensive list
maximize, minimize, optimize, at least,
between, several
Be sure to include appropriate values
simple, easy, quick, user-friendly Describe what makes it these
reasonable, when necessary How do you make this judgment?
Source: Software Requirements 2 – Karl Weigers
Be sure you define the technical requirements of what you
are estimating:
UTF-8
First and Last name must be between 3 and 100 characters
Email complies with RFC 822 and no longer than 300 characters and unique in our system
Phone Number < 25 characters and validated with Foo-Bar REST service
Break down requirements into smaller parts:
Email lookup service
Phone validation integration
Form logic
Lead management UI
Historical data
Dry run / Unit test
Confidence Interval (CI)
It is better to be roughly right than precisely wrong.
- John Maynard Keynes
What is the wingspan of a 747
Francis Scott Key wrote the lyrics, but not the music, for the
American National Anthem
Repetition
Pros and Cons
Absurdity Test
Equivalent Bet
90% WIN
10%
Loose
Q. What is the wingspan of a 747
A. 211 ft (64m)
Q. Francis Scott Key wrote the lyrics, but not the music, for the
American National Anthem
A. True
Fuzzy Logic / Tee Shirt
Size Average LOC
Very Small 127
Small 253
Medium 500
Large 1,014
Very Large 1,988
Source: Software Estimation 2 – Steve McConnell
Wideband Delphi Or Group
Round 1
Round 2
Round 3
Hours
1 2 3 4 65 7 8 9
Round 1 – 6.5
Round 2 – 6.8
Round 3 – 6
Bayes Theorem
When you get information, the level of uncertainty will decrease.
P (A|B) =
P (B|A) P(A)
P (B)
Priorities – Urgency Matrix
Important Not Important
Urgent High Priority
Not Urgent Medium Priority Low Priority
Source: Software Requirements 2 – Karl Weigers
Priorities – Prioritization Spreadsheet
Source: Software Requirements 2 – Karl Weigers
https://www.microsoftpressstore.com/store/software-requirements-9780735679665
Feature
Relative
Benefit
Relative
Penalty
Total
Value
Value
%
Dev
Cost
Cost
%
Dev
Risk
Risk
%
Priorit
y
Phone Validation 2 4 8 15.0 8 44.4 9 60.0 0.144
Lead UI 5 3 13 20.0 2 11.1 1 6.7 1.125
Form Logic 9 7 25 40.0 5 27.8 3 20.0 0.837
Email Lookup 5 5 15 25.0 3 16.7 2 13.3 0.833
Totals 21 19 61 100.0 11 100.0 15 100.0
Politics
Remove people from the problem
Focus on Interests not Positions
DO NOT NEGOTIATE YOUR ESTIMATE!!!!!
Final Thoughts
Prefer hours to days (scale easier)
Throwing more developers may not solve the problem
Iterate and be honest
ISBN-13: 978-0735618794
ISBN-13: 978-0735605350
ISBN-13: 978-1118539279
Thank You!
Chuck Reeves @manchuck
Software Estimation: Demystifying the Black Art – by Steve
McConnell | ISBN-13: 978-0735605350
Software Requirements: Practical Techniques for Gathering and
Managing Requirements – by Karl Wiegers ASIN: B0043M56R8
How to Measure Anything: Finding the Value of Intangibles in
Business – by Douglas Hubbard | ISBN-13: 978-1118539279
Dev Hell Podcast - Episode 29: Snappy Answers to Stupid
Questions

Mais conteúdo relacionado

Mais procurados (6)

5 whys - The Path to Resolution
5 whys - The Path to Resolution5 whys - The Path to Resolution
5 whys - The Path to Resolution
 
How to give awesome
How to give awesomeHow to give awesome
How to give awesome
 
Introducing HOSTING Labs - Ed Schaefer
Introducing HOSTING Labs - Ed Schaefer Introducing HOSTING Labs - Ed Schaefer
Introducing HOSTING Labs - Ed Schaefer
 
5 whys
5 whys5 whys
5 whys
 
What the Flash Crash & Black Boxes can teach us about the Search #searchlove ...
What the Flash Crash & Black Boxes can teach us about the Search #searchlove ...What the Flash Crash & Black Boxes can teach us about the Search #searchlove ...
What the Flash Crash & Black Boxes can teach us about the Search #searchlove ...
 
How to have less rubbish ideas #brightonseo
How to have less rubbish ideas #brightonseoHow to have less rubbish ideas #brightonseo
How to have less rubbish ideas #brightonseo
 

Semelhante a Stop multiplying by 4 Lone Star PHP

Stop multiplying by 4 PHP Tour 2014
Stop multiplying by 4 PHP Tour 2014Stop multiplying by 4 PHP Tour 2014
Stop multiplying by 4 PHP Tour 2014
Chuck Reeves
 
13 0827 webinar q & a sustainability
13 0827   webinar q & a sustainability13 0827   webinar q & a sustainability
13 0827 webinar q & a sustainability
CleantechOpen
 
13 0827 webinar q & a sustainability
13 0827   webinar q & a sustainability13 0827   webinar q & a sustainability
13 0827 webinar q & a sustainability
CleantechOpen
 
Controlled assessment
Controlled assessmentControlled assessment
Controlled assessment
Andy Goodwin
 
Lab - Surface WaterPre-Lab QuestionsWhen a river bends and.docx
Lab - Surface WaterPre-Lab QuestionsWhen a river bends and.docxLab - Surface WaterPre-Lab QuestionsWhen a river bends and.docx
Lab - Surface WaterPre-Lab QuestionsWhen a river bends and.docx
smile790243
 
Assignment 3 GlencoreYour client is the Glencore. It has hire.docx
Assignment 3  GlencoreYour client is the Glencore.  It has hire.docxAssignment 3  GlencoreYour client is the Glencore.  It has hire.docx
Assignment 3 GlencoreYour client is the Glencore. It has hire.docx
sherni1
 
Roadmap to your success
Roadmap to your successRoadmap to your success
Roadmap to your success
WeAllWinGlobal
 

Semelhante a Stop multiplying by 4 Lone Star PHP (20)

Stop multiplying by 4 nyphp
Stop multiplying by 4 nyphpStop multiplying by 4 nyphp
Stop multiplying by 4 nyphp
 
Stop multiplying by 4 PHP Tour 2014
Stop multiplying by 4 PHP Tour 2014Stop multiplying by 4 PHP Tour 2014
Stop multiplying by 4 PHP Tour 2014
 
13 0827 webinar q & a sustainability
13 0827   webinar q & a sustainability13 0827   webinar q & a sustainability
13 0827 webinar q & a sustainability
 
13 0827 webinar q & a sustainability
13 0827   webinar q & a sustainability13 0827   webinar q & a sustainability
13 0827 webinar q & a sustainability
 
When Remembering REALLY Matters - DevLearn 2014 presentation
When Remembering REALLY Matters - DevLearn 2014 presentationWhen Remembering REALLY Matters - DevLearn 2014 presentation
When Remembering REALLY Matters - DevLearn 2014 presentation
 
Creating a culture that provokes failure and boosts improvement
Creating a culture that provokes failure and boosts improvementCreating a culture that provokes failure and boosts improvement
Creating a culture that provokes failure and boosts improvement
 
Controlled assessment
Controlled assessmentControlled assessment
Controlled assessment
 
Rinse and Repeat : The Spiral of Applied Machine Learning
Rinse and Repeat : The Spiral of Applied Machine LearningRinse and Repeat : The Spiral of Applied Machine Learning
Rinse and Repeat : The Spiral of Applied Machine Learning
 
Lab - Surface WaterPre-Lab QuestionsWhen a river bends and.docx
Lab - Surface WaterPre-Lab QuestionsWhen a river bends and.docxLab - Surface WaterPre-Lab QuestionsWhen a river bends and.docx
Lab - Surface WaterPre-Lab QuestionsWhen a river bends and.docx
 
Assignment 3 GlencoreYour client is the Glencore. It has hire.docx
Assignment 3  GlencoreYour client is the Glencore.  It has hire.docxAssignment 3  GlencoreYour client is the Glencore.  It has hire.docx
Assignment 3 GlencoreYour client is the Glencore. It has hire.docx
 
[EN] 7 steps to a successful International PR Campaign
[EN] 7 steps to a successful International PR Campaign[EN] 7 steps to a successful International PR Campaign
[EN] 7 steps to a successful International PR Campaign
 
4 Cycles Remote Innovation - Communicate & Check
4  Cycles Remote Innovation - Communicate & Check 4  Cycles Remote Innovation - Communicate & Check
4 Cycles Remote Innovation - Communicate & Check
 
Effective Use of Surveys in UX | Triangle UXPA Workshop
Effective Use of Surveys in UX | Triangle UXPA WorkshopEffective Use of Surveys in UX | Triangle UXPA Workshop
Effective Use of Surveys in UX | Triangle UXPA Workshop
 
Mit elearning design workshop day
Mit elearning design workshop dayMit elearning design workshop day
Mit elearning design workshop day
 
Directions for response to discussion post students will resp
Directions for response to discussion post students will respDirections for response to discussion post students will resp
Directions for response to discussion post students will resp
 
Selenium Users Anonymous
Selenium Users AnonymousSelenium Users Anonymous
Selenium Users Anonymous
 
Mini Map
Mini MapMini Map
Mini Map
 
SurveyMonkey Audience - Survey Writing Guide
SurveyMonkey Audience - Survey Writing GuideSurveyMonkey Audience - Survey Writing Guide
SurveyMonkey Audience - Survey Writing Guide
 
Branchout 2017 - Day 1 Session - Effi Fuks-Leichtag
Branchout 2017 - Day 1 Session - Effi Fuks-LeichtagBranchout 2017 - Day 1 Session - Effi Fuks-Leichtag
Branchout 2017 - Day 1 Session - Effi Fuks-Leichtag
 
Roadmap to your success
Roadmap to your successRoadmap to your success
Roadmap to your success
 

Último

Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slide
vu2urc
 
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptxEIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
Earley Information Science
 

Último (20)

Slack Application Development 101 Slides
Slack Application Development 101 SlidesSlack Application Development 101 Slides
Slack Application Development 101 Slides
 
Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityBoost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivity
 
A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)
 
Factors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptxFactors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptx
 
Real Time Object Detection Using Open CV
Real Time Object Detection Using Open CVReal Time Object Detection Using Open CV
Real Time Object Detection Using Open CV
 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
 
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonData Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt Robison
 
Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slide
 
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
 
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptxEIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
 
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
 
Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processors
 
The Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxThe Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptx
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed texts
 
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUnderstanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
 
How to convert PDF to text with Nanonets
How to convert PDF to text with NanonetsHow to convert PDF to text with Nanonets
How to convert PDF to text with Nanonets
 
08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men
 
[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf
 

Stop multiplying by 4 Lone Star PHP

  • 2.
  • 3. What is estimation? Why even estimate? Why should developers estimate?
  • 4. I'll tell you how I estimate things. I sit down and figure out how long I think it would take me to do it. Then I double that time and then I push it up to the next point on the “Time Progression Scale”. Were the “Time Progress Scale” starts off: seconds, minuets, hours and days. So if I think something is going to take me 4 hours to do. I will double it to 8 and then I would say it would take me 8 days to get it all completely done start to finish. And I'm usually right, because there are so many impediments. If you are the only one doing it yourself your schedule can be very accurate. Once you have to involve other people, you might as well just make numbers up. You might as well say “I think this will take me Blue days to get done” - Development hell podcast; Episode 29: Snappy to Snappy question
  • 5. 2 + x = 5 Deduction
  • 6. 2 + x = y Induction
  • 7. Requirements are the key Measure what is measurable, but make measurable what is not so -Galileo Galilei
  • 8. “Wordy” Expression Our new Contact form, is a quick and easy way for the sales team to collect information to contact people to sell our service. The contact form will require someone to enter in: Their name, their email address and their phone number. The sales team will then contact that person to tell them how awesome our service is
  • 9. Actors: Sales – Employees of Initech who promote the product Leads – People who are not already signed on for Initech products The contact form will have fields for: Name, Email, and Valid Phone number.
  • 10. Misplaced Modifier The contact form allows Leads to enter in: Name, Email and Valid phone number. The sales team needs a list of leads with the option to mark as contacted Top Tip: Prevent children from ingesting dangerous medicines by locking them in a childproof cupboard. 3 children per cupboard is a good fit -Periwinkle Jones @peachesanscream
  • 11. The contact form will have fields for: Name, Email, and Phone number. All fields are required and must be validated. The sales team needs a list of leads. Sales team needs a checkbox to mark a lead as contacted Valid Phone numbers: (202) 456-1111 555-1212 212-867-5309 1-800-MATTRES 911 +44 871 984 6352 +852 2280 2898 +91 11 2679 1234
  • 12. fast, rapid, efficient Use a set time: "5 seconds" valid, including but not limited too, etc., and so on Describe what is valid or invalid. use comprehensive list maximize, minimize, optimize, at least, between, several Be sure to include appropriate values simple, easy, quick, user-friendly Describe what makes it these reasonable, when necessary How do you make this judgment? Source: Software Requirements 2 – Karl Weigers
  • 13. Be sure you define the technical requirements of what you are estimating: UTF-8 First and Last name must be between 3 and 100 characters Email complies with RFC 822 and no longer than 300 characters and unique in our system Phone Number < 25 characters and validated with Foo-Bar REST service
  • 14. Break down requirements into smaller parts: Email lookup service Phone validation integration Form logic Lead management UI
  • 15. Historical data Dry run / Unit test Confidence Interval (CI) It is better to be roughly right than precisely wrong. - John Maynard Keynes
  • 16. What is the wingspan of a 747 Francis Scott Key wrote the lyrics, but not the music, for the American National Anthem
  • 17. Repetition Pros and Cons Absurdity Test Equivalent Bet
  • 19. Q. What is the wingspan of a 747 A. 211 ft (64m) Q. Francis Scott Key wrote the lyrics, but not the music, for the American National Anthem A. True
  • 20. Fuzzy Logic / Tee Shirt Size Average LOC Very Small 127 Small 253 Medium 500 Large 1,014 Very Large 1,988 Source: Software Estimation 2 – Steve McConnell
  • 21. Wideband Delphi Or Group Round 1 Round 2 Round 3 Hours 1 2 3 4 65 7 8 9 Round 1 – 6.5 Round 2 – 6.8 Round 3 – 6
  • 22. Bayes Theorem When you get information, the level of uncertainty will decrease. P (A|B) = P (B|A) P(A) P (B)
  • 23. Priorities – Urgency Matrix Important Not Important Urgent High Priority Not Urgent Medium Priority Low Priority Source: Software Requirements 2 – Karl Weigers
  • 24. Priorities – Prioritization Spreadsheet Source: Software Requirements 2 – Karl Weigers https://www.microsoftpressstore.com/store/software-requirements-9780735679665 Feature Relative Benefit Relative Penalty Total Value Value % Dev Cost Cost % Dev Risk Risk % Priorit y Phone Validation 2 4 8 15.0 8 44.4 9 60.0 0.144 Lead UI 5 3 13 20.0 2 11.1 1 6.7 1.125 Form Logic 9 7 25 40.0 5 27.8 3 20.0 0.837 Email Lookup 5 5 15 25.0 3 16.7 2 13.3 0.833 Totals 21 19 61 100.0 11 100.0 15 100.0
  • 25. Politics Remove people from the problem Focus on Interests not Positions DO NOT NEGOTIATE YOUR ESTIMATE!!!!!
  • 26. Final Thoughts Prefer hours to days (scale easier) Throwing more developers may not solve the problem Iterate and be honest
  • 30. Thank You! Chuck Reeves @manchuck Software Estimation: Demystifying the Black Art – by Steve McConnell | ISBN-13: 978-0735605350 Software Requirements: Practical Techniques for Gathering and Managing Requirements – by Karl Wiegers ASIN: B0043M56R8 How to Measure Anything: Finding the Value of Intangibles in Business – by Douglas Hubbard | ISBN-13: 978-1118539279 Dev Hell Podcast - Episode 29: Snappy Answers to Stupid Questions