SlideShare una empresa de Scribd logo
1 de 47
ESTIMATIONS:
Tips & Techniques
HIT THE TARGET
Definition of “Estimate”
1. A tentative evaluation or rough calculation.
2. A preliminary calculation of the cost of a project.
3. A judgment based upon one’s impressions; opinion.
The American Heritage Dictionary
Good estimates
are within
25% of the actual results
75% of the time
Have you ever heard...
“We need to have product ready to demonstrate at a trade show
in May.”
“These functions need to be completed by July 1 so that we’ll be
in compliance with government regulations.”
“We must limit the cost of the next release to $20K, because
that’s the maximum budget we have for that release.”
Probability Statements
Single-point estimates
assume 100% probability
of the actual outcome
equaling the planned
outcome.
This isn’t realistic.
Probability Statements
This assumption is
incorrect because there
are limits to how
efficiently a project team
can complete any given
amount of work.
Probability Statements
An accurate depiction of
possible software project
outcomes. There is a limit
to how well a project can
go but no limit to how
many problems can occur.
Real Purpose
The primary purpose of software estimation is not to predict a project’s
outcome; it is to determine whether a project’s targets are realistic
enough to allow the project to be controlled to meet them.
Estimates don’t need to be perfectly accurate as much as they need to
be useful.
Planning considerations
● Creating a detailed schedule
● Identifying a project’s critical path
● Creating a complete work breakdown structure
● Prioritizing functionality for delivery
to have accurate estimation
Estimation improvements
Improvement in estimation
at the Boeing Company.
Underestimating treats
● Reduced effectiveness of project plans.
● Statistically reduced chance of on-time completion.
● Destructive late-project dynamics make the project worse than
nominal.
● Poor technical foundation leads to worse-than-nominal results.
Benefits of accuracy
● Improved status visibility.
● Higher quality.
● Better coordination with nonsoftware functions.
● Increased credibility for the development team.
Cone of uncertainty
The Cone of Uncertainty based on
common project milestones
It will not narrow itself
If a project is not well controlled or
well estimated, you can end up
with a Cloud of Uncertainty
What do we usually miss
Ramp-up time for new team
members
Mentoring of new team members
Management
coordination/manager meetings
Installation
Requirements clarifications
Participation in technical reviews
Processing change requests
Attendance at change-control/triage
meetings
Don’t reduce developer
estimates — they’re
probably too optimistic
already.
Off-the-Cuff Estimates
Average error from off-the-cuff
estimates vs reviewed estimates.
Proper technique
When choosing estimation techniques,
consider what you want to estimate, the
size of the project, the development stage,
the project’s development style, and what
accuracy you need.
Count,
Compute,
Judge
1. Count, Compute, Judge
● Find something to count that’s highly correlated with the size of
the software you’re estimating.
● Find something to count that’s available sooner rather than later
in the development cycle.
● Find something to count that will produce a statistically
meaningful average.
1. Count, Compute, Judge
Quantity to Count Historical Data Needed to Convert the Count to an Estimate
Marketing requirements
● Average effort hours per requirement for development
● Average effort hours per requirement for independent
testing
● Average effort hours per requirement for
documentation
● Average effort hours per requirement to create
engineering requirements from marketing
requirements
1. Count, Compute, Judge
Calibration
on Historical
Data
2. Calibration on Historical Data
If you’re not already collecting historical data, you can start with a
very small set of data:
● Size (lines of code or something else you can count after the
software has been released)
● Effort (staff months)
● Time (calendar months)
2. Calibration on Historical Data
Individual
Expert
Judgement
3. Individual Expert Judgement
When estimating at the task level, decompose estimates into
tasks that will require no more than about 2 days of effort.
Tasks larger than that will contain too many places that unexpected
work can hide. Ending up with estimates that are at the 1/4 day,
1/2 day, or full day of granularity is appropriate.
3. Individual Expert Judgement
3. Individual Expert Judgement
Equation #1.
Program Evaluation and Review Technique (PERT) Formula
3. Individual Expert Judgement
Equation #2.
Pessimistic PERT Formula
3. Individual Expert Judgement
Is what’s being estimated clearly
defined?
Does the estimate include all the
kinds of work needed to complete
the task?
Does the estimate include all the
functionality areas needed to
complete the task?
Checklist
Is the estimate broken down into
enough detail to expose hidden work?
Did you look at documented facts
(written notes) from past work rather
than estimating purely from memory?
Is the estimate approved by the person
who will actually do the work?
To be continued...
3. Individual Expert Judgement
Is the productivity assumed in the
estimate similar to what has been
achieved on similar assignments?
Does the estimate include a Best
Case, Worst Case, and Most Likely
Case?
Is the Worst Case really the worst
case? Does it need to be made even
worse?
Checklist
Is the Expected Case computed
appropriately from the other cases?
Have the assumptions in the
estimate been documented?
Has the situation changed since the
estimate was prepared?
3. Individual Expert Judgement
Equation #3.
Magnitude of Relative Error (MRE) Formula
3. Individual Expert Judgement
Estimation
by Analogy
4. Estimation by Analogy
1. Get detailed size, effort, and cost results for a similar previous project.
2. Compare the size of the new project piece-by-piece to the old project.
3. Build up the estimate for the new project’s size as a percentage of the
old project’s size.
4. Create an effort estimate based on the size of the new project compared
to the size of the previous project.
4. Estimation by Analogy
Proxy
Based
Estimation
5. Proxy based Estimation
Fuzzy Logic
Estimators are usually capable of classifying features as Very Small,
Small, Medium, Large, and Very Large.
We can then use historical data about how many lines of code the
average Very Small feature requires, how many lines of code the
average Small feature requires, and so on to compute the total lines
of code.
5. Proxy based Estimation
Standard Components
If you develop many programs that are architecturally similar to
each other, you can use the standard components approach to
estimate size. You first need to find relevant elements to count in
your previous systems.
The specifics will vary depending on the kind of work you do. Typical
systems might include dynamic Web pages, static Web pages, files,
database tables, business rules, graphics, screens, dialogs, reports,
and so on.
5. Proxy based Estimation
Story Points
When using story points, the team reviews the list of stories (or
requirements or features) it is considering building and assigns a
size to each story.
In this sense, story points are similar to fuzzy logic, except that the
stories are normally assigned a numeric value from one of the scales
5. Proxy based Estimation
T-Shirt
In this approach, the developers classify each
feature’s size relative to other features as
Small, Medium, Large, or Extra Large.
In parallel, the customer, marketing, sales, or
other nontechnical stakeholders classify each
feature’s business value on the same scale.
These two sets of entries are then combined
5. Proxy based Estimation
Expert
Judgment
in Groups
6. Expert Judgment in Groups
6. Expert Judgment in Groups
THANK YOU!
Alex Tymokhovskyi
Linkedin

Más contenido relacionado

La actualidad más candente

Decision making models project
Decision making models projectDecision making models project
Decision making models projectneha singh
 
Estimation Agile Projects
Estimation Agile ProjectsEstimation Agile Projects
Estimation Agile ProjectsRam Srivastava
 
Estimations in Project Management
Estimations in Project ManagementEstimations in Project Management
Estimations in Project ManagementIntaver Insititute
 
Basis of Estimate Processes
Basis of Estimate ProcessesBasis of Estimate Processes
Basis of Estimate ProcessesGlen Alleman
 
The Importance of Estimating - WCMKE 2015
The Importance of Estimating  - WCMKE 2015The Importance of Estimating  - WCMKE 2015
The Importance of Estimating - WCMKE 2015Jess Jurick
 
Student guide for unit 9
Student guide for unit 9Student guide for unit 9
Student guide for unit 9Peter R Breach
 
Evm+agile estimating
Evm+agile estimatingEvm+agile estimating
Evm+agile estimatingGlen Alleman
 
Estimates in Project Management
Estimates in Project ManagementEstimates in Project Management
Estimates in Project ManagementIntaver Insititute
 
Drupalcon la estimation john_nollin
Drupalcon la estimation john_nollinDrupalcon la estimation john_nollin
Drupalcon la estimation john_nollinHai Vo Hoang
 
Agile 2010 Estimation Games
Agile 2010 Estimation  GamesAgile 2010 Estimation  Games
Agile 2010 Estimation GamesAgileCoach.net
 
Managing Deploymemt of ERP Systems in the Publishing Domain
Managing Deploymemt of ERP Systems in the Publishing DomainManaging Deploymemt of ERP Systems in the Publishing Domain
Managing Deploymemt of ERP Systems in the Publishing DomainGlen Alleman
 
Defining the Project Y
Defining the Project YDefining the Project Y
Defining the Project YMatt Hansen
 
[HCM Scrum Breakfast] Agile estimation - Story points
[HCM Scrum Breakfast] Agile estimation - Story points[HCM Scrum Breakfast] Agile estimation - Story points
[HCM Scrum Breakfast] Agile estimation - Story pointsScrum Breakfast Vietnam
 
Developing Standards for Enterprise Schedule Quality
Developing Standards for Enterprise Schedule QualityDeveloping Standards for Enterprise Schedule Quality
Developing Standards for Enterprise Schedule QualityAcumen
 
Bottom-up time estimations techiques
Bottom-up time estimations techiquesBottom-up time estimations techiques
Bottom-up time estimations techiquesJ. Scott Christianson
 
Software Test Estimation
Software Test EstimationSoftware Test Estimation
Software Test EstimationJatin Kochhar
 

La actualidad más candente (20)

Decision making models project
Decision making models projectDecision making models project
Decision making models project
 
The relevancy of Agile and Agility to Project Management
The relevancy of Agile and Agility to Project ManagementThe relevancy of Agile and Agility to Project Management
The relevancy of Agile and Agility to Project Management
 
Estimation Agile Projects
Estimation Agile ProjectsEstimation Agile Projects
Estimation Agile Projects
 
Estimations in Project Management
Estimations in Project ManagementEstimations in Project Management
Estimations in Project Management
 
Basis of Estimate Processes
Basis of Estimate ProcessesBasis of Estimate Processes
Basis of Estimate Processes
 
The Importance of Estimating - WCMKE 2015
The Importance of Estimating  - WCMKE 2015The Importance of Estimating  - WCMKE 2015
The Importance of Estimating - WCMKE 2015
 
Student guide for unit 9
Student guide for unit 9Student guide for unit 9
Student guide for unit 9
 
Evm+agile estimating
Evm+agile estimatingEvm+agile estimating
Evm+agile estimating
 
Estimates in Project Management
Estimates in Project ManagementEstimates in Project Management
Estimates in Project Management
 
Drupalcon la estimation john_nollin
Drupalcon la estimation john_nollinDrupalcon la estimation john_nollin
Drupalcon la estimation john_nollin
 
Agile 2010 Estimation Games
Agile 2010 Estimation  GamesAgile 2010 Estimation  Games
Agile 2010 Estimation Games
 
Managing Deploymemt of ERP Systems in the Publishing Domain
Managing Deploymemt of ERP Systems in the Publishing DomainManaging Deploymemt of ERP Systems in the Publishing Domain
Managing Deploymemt of ERP Systems in the Publishing Domain
 
Agile Projects | Rapid Estimation | Techniques | Tips
Agile Projects | Rapid Estimation | Techniques | TipsAgile Projects | Rapid Estimation | Techniques | Tips
Agile Projects | Rapid Estimation | Techniques | Tips
 
Defining the Project Y
Defining the Project YDefining the Project Y
Defining the Project Y
 
[HCM Scrum Breakfast] Agile estimation - Story points
[HCM Scrum Breakfast] Agile estimation - Story points[HCM Scrum Breakfast] Agile estimation - Story points
[HCM Scrum Breakfast] Agile estimation - Story points
 
Developing Standards for Enterprise Schedule Quality
Developing Standards for Enterprise Schedule QualityDeveloping Standards for Enterprise Schedule Quality
Developing Standards for Enterprise Schedule Quality
 
Bottom-up time estimations techiques
Bottom-up time estimations techiquesBottom-up time estimations techiques
Bottom-up time estimations techiques
 
Software Test Estimation
Software Test EstimationSoftware Test Estimation
Software Test Estimation
 
Technical Writing
Technical WritingTechnical Writing
Technical Writing
 
Intro to reliability management
Intro to reliability managementIntro to reliability management
Intro to reliability management
 

Similar a Estimations: hit the target. Tips & Technics

Lecture 5 Estimation techniques.ppt
Lecture 5 Estimation techniques.pptLecture 5 Estimation techniques.ppt
Lecture 5 Estimation techniques.pptMaryamShah29
 
Effort estimation for software development
Effort estimation for software developmentEffort estimation for software development
Effort estimation for software developmentSpyros Ktenas
 
Betsol | Machine Learning for IT Project Estimates
Betsol | Machine Learning for IT Project Estimates  Betsol | Machine Learning for IT Project Estimates
Betsol | Machine Learning for IT Project Estimates BETSOL
 
Presentation on 'Why cant people estimate' event, 23rd June 2016
Presentation on 'Why cant people estimate' event, 23rd June 2016 Presentation on 'Why cant people estimate' event, 23rd June 2016
Presentation on 'Why cant people estimate' event, 23rd June 2016 Association for Project Management
 
How to Estimate Software Development Project Cost.pdf
How to Estimate Software Development Project Cost.pdfHow to Estimate Software Development Project Cost.pdf
How to Estimate Software Development Project Cost.pdfVrinsoft Technology
 
Software Estimation
Software EstimationSoftware Estimation
Software EstimationNguyen Hai
 
SPM week 6 Effort estimation slides from 7th semeter.pptx
SPM week 6 Effort estimation slides from 7th semeter.pptxSPM week 6 Effort estimation slides from 7th semeter.pptx
SPM week 6 Effort estimation slides from 7th semeter.pptxfaiz536657
 
Basic Software Effort Estimation
Basic Software Effort EstimationBasic Software Effort Estimation
Basic Software Effort Estimationumair khan
 
Capacity Planning and Demand Management
Capacity Planning and Demand ManagementCapacity Planning and Demand Management
Capacity Planning and Demand ManagementLawrence Putnam Jr
 
IT Demand Management and Capacity Planning: Why Estimation Is Vital to Balanc...
IT Demand Management and Capacity Planning: Why Estimation Is Vital to Balanc...IT Demand Management and Capacity Planning: Why Estimation Is Vital to Balanc...
IT Demand Management and Capacity Planning: Why Estimation Is Vital to Balanc...Quantitative Software Management, Inc.
 
significance_of_test_estimating_in_the_software_development.pptx
significance_of_test_estimating_in_the_software_development.pptxsignificance_of_test_estimating_in_the_software_development.pptx
significance_of_test_estimating_in_the_software_development.pptxsarah david
 
significance_of_test_estimating_in_the_software_development.pdf
significance_of_test_estimating_in_the_software_development.pdfsignificance_of_test_estimating_in_the_software_development.pdf
significance_of_test_estimating_in_the_software_development.pdfsarah david
 
Estimation guidelines and templates
Estimation guidelines and templatesEstimation guidelines and templates
Estimation guidelines and templatesHoa PN Thaycacac
 
significance_of_test_estimating_in_the_software_development.pptx
significance_of_test_estimating_in_the_software_development.pptxsignificance_of_test_estimating_in_the_software_development.pptx
significance_of_test_estimating_in_the_software_development.pptxsarah david
 
Estimation - web software development estimation DrupalCon and DrupalCamp pre...
Estimation - web software development estimation DrupalCon and DrupalCamp pre...Estimation - web software development estimation DrupalCon and DrupalCamp pre...
Estimation - web software development estimation DrupalCon and DrupalCamp pre...Andy Kucharski
 

Similar a Estimations: hit the target. Tips & Technics (20)

Lecture 5 Estimation techniques.ppt
Lecture 5 Estimation techniques.pptLecture 5 Estimation techniques.ppt
Lecture 5 Estimation techniques.ppt
 
Effort estimation for software development
Effort estimation for software developmentEffort estimation for software development
Effort estimation for software development
 
Betsol | Machine Learning for IT Project Estimates
Betsol | Machine Learning for IT Project Estimates  Betsol | Machine Learning for IT Project Estimates
Betsol | Machine Learning for IT Project Estimates
 
Cost estimation
Cost estimationCost estimation
Cost estimation
 
Presentation on 'Why cant people estimate' event, 23rd June 2016
Presentation on 'Why cant people estimate' event, 23rd June 2016 Presentation on 'Why cant people estimate' event, 23rd June 2016
Presentation on 'Why cant people estimate' event, 23rd June 2016
 
Guide to Software Estimation
Guide to Software EstimationGuide to Software Estimation
Guide to Software Estimation
 
How to Estimate Software Development Project Cost.pdf
How to Estimate Software Development Project Cost.pdfHow to Estimate Software Development Project Cost.pdf
How to Estimate Software Development Project Cost.pdf
 
Software Estimation
Software EstimationSoftware Estimation
Software Estimation
 
Estimation
EstimationEstimation
Estimation
 
SPM week 6 Effort estimation slides from 7th semeter.pptx
SPM week 6 Effort estimation slides from 7th semeter.pptxSPM week 6 Effort estimation slides from 7th semeter.pptx
SPM week 6 Effort estimation slides from 7th semeter.pptx
 
Basic Software Effort Estimation
Basic Software Effort EstimationBasic Software Effort Estimation
Basic Software Effort Estimation
 
Capacity Planning and Demand Management
Capacity Planning and Demand ManagementCapacity Planning and Demand Management
Capacity Planning and Demand Management
 
IT Demand Management and Capacity Planning: Why Estimation Is Vital to Balanc...
IT Demand Management and Capacity Planning: Why Estimation Is Vital to Balanc...IT Demand Management and Capacity Planning: Why Estimation Is Vital to Balanc...
IT Demand Management and Capacity Planning: Why Estimation Is Vital to Balanc...
 
significance_of_test_estimating_in_the_software_development.pptx
significance_of_test_estimating_in_the_software_development.pptxsignificance_of_test_estimating_in_the_software_development.pptx
significance_of_test_estimating_in_the_software_development.pptx
 
Project Estimation.ppt
Project Estimation.pptProject Estimation.ppt
Project Estimation.ppt
 
Project Estimation.ppt
Project Estimation.pptProject Estimation.ppt
Project Estimation.ppt
 
significance_of_test_estimating_in_the_software_development.pdf
significance_of_test_estimating_in_the_software_development.pdfsignificance_of_test_estimating_in_the_software_development.pdf
significance_of_test_estimating_in_the_software_development.pdf
 
Estimation guidelines and templates
Estimation guidelines and templatesEstimation guidelines and templates
Estimation guidelines and templates
 
significance_of_test_estimating_in_the_software_development.pptx
significance_of_test_estimating_in_the_software_development.pptxsignificance_of_test_estimating_in_the_software_development.pptx
significance_of_test_estimating_in_the_software_development.pptx
 
Estimation - web software development estimation DrupalCon and DrupalCamp pre...
Estimation - web software development estimation DrupalCon and DrupalCamp pre...Estimation - web software development estimation DrupalCon and DrupalCamp pre...
Estimation - web software development estimation DrupalCon and DrupalCamp pre...
 

Último

Beyond the Codes_Repositioning towards sustainable development
Beyond the Codes_Repositioning towards sustainable developmentBeyond the Codes_Repositioning towards sustainable development
Beyond the Codes_Repositioning towards sustainable developmentNimot Muili
 
Persuasive and Communication is the art of negotiation.
Persuasive and Communication is the art of negotiation.Persuasive and Communication is the art of negotiation.
Persuasive and Communication is the art of negotiation.aruny7087
 
internship thesis pakistan aeronautical complex kamra
internship thesis pakistan aeronautical complex kamrainternship thesis pakistan aeronautical complex kamra
internship thesis pakistan aeronautical complex kamraAllTops
 
Information Technology Project Management, Revised 7th edition test bank.docx
Information Technology Project Management, Revised 7th edition test bank.docxInformation Technology Project Management, Revised 7th edition test bank.docx
Information Technology Project Management, Revised 7th edition test bank.docxssuserf63bd7
 
International Ocean Transportation p.pdf
International Ocean Transportation p.pdfInternational Ocean Transportation p.pdf
International Ocean Transportation p.pdfAlejandromexEspino
 
The Psychology Of Motivation - Richard Brown
The Psychology Of Motivation - Richard BrownThe Psychology Of Motivation - Richard Brown
The Psychology Of Motivation - Richard BrownSandaliGurusinghe2
 
Gautam Buddh Nagar Call Girls 🥰 8617370543 Service Offer VIP Hot Model
Gautam Buddh Nagar Call Girls 🥰 8617370543 Service Offer VIP Hot ModelGautam Buddh Nagar Call Girls 🥰 8617370543 Service Offer VIP Hot Model
Gautam Buddh Nagar Call Girls 🥰 8617370543 Service Offer VIP Hot ModelNitya salvi
 
Siliguri Escorts Service Girl ^ 9332606886, WhatsApp Anytime Siliguri
Siliguri Escorts Service Girl ^ 9332606886, WhatsApp Anytime SiliguriSiliguri Escorts Service Girl ^ 9332606886, WhatsApp Anytime Siliguri
Siliguri Escorts Service Girl ^ 9332606886, WhatsApp Anytime Siligurimeghakumariji156
 
Safety T fire missions army field Artillery
Safety T fire missions army field ArtillerySafety T fire missions army field Artillery
Safety T fire missions army field ArtilleryKennethSwanberg
 
digital Human resource management presentation.pdf
digital Human resource management presentation.pdfdigital Human resource management presentation.pdf
digital Human resource management presentation.pdfArtiSrivastava23
 
How Software Developers Destroy Business Value.pptx
How Software Developers Destroy Business Value.pptxHow Software Developers Destroy Business Value.pptx
How Software Developers Destroy Business Value.pptxAaron Stannard
 
W.H.Bender Quote 62 - Always strive to be a Hospitality Service professional
W.H.Bender Quote 62 - Always strive to be a Hospitality Service professionalW.H.Bender Quote 62 - Always strive to be a Hospitality Service professional
W.H.Bender Quote 62 - Always strive to be a Hospitality Service professionalWilliam (Bill) H. Bender, FCSI
 
Marketing Management 16th edition by Philip Kotler test bank.docx
Marketing Management 16th edition by Philip Kotler test bank.docxMarketing Management 16th edition by Philip Kotler test bank.docx
Marketing Management 16th edition by Philip Kotler test bank.docxssuserf63bd7
 

Último (14)

Beyond the Codes_Repositioning towards sustainable development
Beyond the Codes_Repositioning towards sustainable developmentBeyond the Codes_Repositioning towards sustainable development
Beyond the Codes_Repositioning towards sustainable development
 
Persuasive and Communication is the art of negotiation.
Persuasive and Communication is the art of negotiation.Persuasive and Communication is the art of negotiation.
Persuasive and Communication is the art of negotiation.
 
internship thesis pakistan aeronautical complex kamra
internship thesis pakistan aeronautical complex kamrainternship thesis pakistan aeronautical complex kamra
internship thesis pakistan aeronautical complex kamra
 
Information Technology Project Management, Revised 7th edition test bank.docx
Information Technology Project Management, Revised 7th edition test bank.docxInformation Technology Project Management, Revised 7th edition test bank.docx
Information Technology Project Management, Revised 7th edition test bank.docx
 
International Ocean Transportation p.pdf
International Ocean Transportation p.pdfInternational Ocean Transportation p.pdf
International Ocean Transportation p.pdf
 
The Psychology Of Motivation - Richard Brown
The Psychology Of Motivation - Richard BrownThe Psychology Of Motivation - Richard Brown
The Psychology Of Motivation - Richard Brown
 
Abortion pills in Jeddah |• +966572737505 ] GET CYTOTEC
Abortion pills in Jeddah |• +966572737505 ] GET CYTOTECAbortion pills in Jeddah |• +966572737505 ] GET CYTOTEC
Abortion pills in Jeddah |• +966572737505 ] GET CYTOTEC
 
Gautam Buddh Nagar Call Girls 🥰 8617370543 Service Offer VIP Hot Model
Gautam Buddh Nagar Call Girls 🥰 8617370543 Service Offer VIP Hot ModelGautam Buddh Nagar Call Girls 🥰 8617370543 Service Offer VIP Hot Model
Gautam Buddh Nagar Call Girls 🥰 8617370543 Service Offer VIP Hot Model
 
Siliguri Escorts Service Girl ^ 9332606886, WhatsApp Anytime Siliguri
Siliguri Escorts Service Girl ^ 9332606886, WhatsApp Anytime SiliguriSiliguri Escorts Service Girl ^ 9332606886, WhatsApp Anytime Siliguri
Siliguri Escorts Service Girl ^ 9332606886, WhatsApp Anytime Siliguri
 
Safety T fire missions army field Artillery
Safety T fire missions army field ArtillerySafety T fire missions army field Artillery
Safety T fire missions army field Artillery
 
digital Human resource management presentation.pdf
digital Human resource management presentation.pdfdigital Human resource management presentation.pdf
digital Human resource management presentation.pdf
 
How Software Developers Destroy Business Value.pptx
How Software Developers Destroy Business Value.pptxHow Software Developers Destroy Business Value.pptx
How Software Developers Destroy Business Value.pptx
 
W.H.Bender Quote 62 - Always strive to be a Hospitality Service professional
W.H.Bender Quote 62 - Always strive to be a Hospitality Service professionalW.H.Bender Quote 62 - Always strive to be a Hospitality Service professional
W.H.Bender Quote 62 - Always strive to be a Hospitality Service professional
 
Marketing Management 16th edition by Philip Kotler test bank.docx
Marketing Management 16th edition by Philip Kotler test bank.docxMarketing Management 16th edition by Philip Kotler test bank.docx
Marketing Management 16th edition by Philip Kotler test bank.docx
 

Estimations: hit the target. Tips & Technics

  • 2. Definition of “Estimate” 1. A tentative evaluation or rough calculation. 2. A preliminary calculation of the cost of a project. 3. A judgment based upon one’s impressions; opinion. The American Heritage Dictionary
  • 3. Good estimates are within 25% of the actual results 75% of the time
  • 4. Have you ever heard... “We need to have product ready to demonstrate at a trade show in May.” “These functions need to be completed by July 1 so that we’ll be in compliance with government regulations.” “We must limit the cost of the next release to $20K, because that’s the maximum budget we have for that release.”
  • 5. Probability Statements Single-point estimates assume 100% probability of the actual outcome equaling the planned outcome. This isn’t realistic.
  • 6. Probability Statements This assumption is incorrect because there are limits to how efficiently a project team can complete any given amount of work.
  • 7. Probability Statements An accurate depiction of possible software project outcomes. There is a limit to how well a project can go but no limit to how many problems can occur.
  • 8. Real Purpose The primary purpose of software estimation is not to predict a project’s outcome; it is to determine whether a project’s targets are realistic enough to allow the project to be controlled to meet them. Estimates don’t need to be perfectly accurate as much as they need to be useful.
  • 9. Planning considerations ● Creating a detailed schedule ● Identifying a project’s critical path ● Creating a complete work breakdown structure ● Prioritizing functionality for delivery to have accurate estimation
  • 10. Estimation improvements Improvement in estimation at the Boeing Company.
  • 11. Underestimating treats ● Reduced effectiveness of project plans. ● Statistically reduced chance of on-time completion. ● Destructive late-project dynamics make the project worse than nominal. ● Poor technical foundation leads to worse-than-nominal results.
  • 12. Benefits of accuracy ● Improved status visibility. ● Higher quality. ● Better coordination with nonsoftware functions. ● Increased credibility for the development team.
  • 13. Cone of uncertainty The Cone of Uncertainty based on common project milestones
  • 14. It will not narrow itself If a project is not well controlled or well estimated, you can end up with a Cloud of Uncertainty
  • 15. What do we usually miss Ramp-up time for new team members Mentoring of new team members Management coordination/manager meetings Installation Requirements clarifications Participation in technical reviews Processing change requests Attendance at change-control/triage meetings
  • 16. Don’t reduce developer estimates — they’re probably too optimistic already.
  • 17. Off-the-Cuff Estimates Average error from off-the-cuff estimates vs reviewed estimates.
  • 18. Proper technique When choosing estimation techniques, consider what you want to estimate, the size of the project, the development stage, the project’s development style, and what accuracy you need.
  • 20. 1. Count, Compute, Judge ● Find something to count that’s highly correlated with the size of the software you’re estimating. ● Find something to count that’s available sooner rather than later in the development cycle. ● Find something to count that will produce a statistically meaningful average.
  • 21. 1. Count, Compute, Judge Quantity to Count Historical Data Needed to Convert the Count to an Estimate Marketing requirements ● Average effort hours per requirement for development ● Average effort hours per requirement for independent testing ● Average effort hours per requirement for documentation ● Average effort hours per requirement to create engineering requirements from marketing requirements
  • 24. 2. Calibration on Historical Data If you’re not already collecting historical data, you can start with a very small set of data: ● Size (lines of code or something else you can count after the software has been released) ● Effort (staff months) ● Time (calendar months)
  • 25. 2. Calibration on Historical Data
  • 27. 3. Individual Expert Judgement When estimating at the task level, decompose estimates into tasks that will require no more than about 2 days of effort. Tasks larger than that will contain too many places that unexpected work can hide. Ending up with estimates that are at the 1/4 day, 1/2 day, or full day of granularity is appropriate.
  • 28. 3. Individual Expert Judgement
  • 29. 3. Individual Expert Judgement Equation #1. Program Evaluation and Review Technique (PERT) Formula
  • 30. 3. Individual Expert Judgement Equation #2. Pessimistic PERT Formula
  • 31. 3. Individual Expert Judgement Is what’s being estimated clearly defined? Does the estimate include all the kinds of work needed to complete the task? Does the estimate include all the functionality areas needed to complete the task? Checklist Is the estimate broken down into enough detail to expose hidden work? Did you look at documented facts (written notes) from past work rather than estimating purely from memory? Is the estimate approved by the person who will actually do the work? To be continued...
  • 32. 3. Individual Expert Judgement Is the productivity assumed in the estimate similar to what has been achieved on similar assignments? Does the estimate include a Best Case, Worst Case, and Most Likely Case? Is the Worst Case really the worst case? Does it need to be made even worse? Checklist Is the Expected Case computed appropriately from the other cases? Have the assumptions in the estimate been documented? Has the situation changed since the estimate was prepared?
  • 33. 3. Individual Expert Judgement Equation #3. Magnitude of Relative Error (MRE) Formula
  • 34. 3. Individual Expert Judgement
  • 36. 4. Estimation by Analogy 1. Get detailed size, effort, and cost results for a similar previous project. 2. Compare the size of the new project piece-by-piece to the old project. 3. Build up the estimate for the new project’s size as a percentage of the old project’s size. 4. Create an effort estimate based on the size of the new project compared to the size of the previous project.
  • 37. 4. Estimation by Analogy
  • 39. 5. Proxy based Estimation Fuzzy Logic Estimators are usually capable of classifying features as Very Small, Small, Medium, Large, and Very Large. We can then use historical data about how many lines of code the average Very Small feature requires, how many lines of code the average Small feature requires, and so on to compute the total lines of code.
  • 40. 5. Proxy based Estimation Standard Components If you develop many programs that are architecturally similar to each other, you can use the standard components approach to estimate size. You first need to find relevant elements to count in your previous systems. The specifics will vary depending on the kind of work you do. Typical systems might include dynamic Web pages, static Web pages, files, database tables, business rules, graphics, screens, dialogs, reports, and so on.
  • 41. 5. Proxy based Estimation Story Points When using story points, the team reviews the list of stories (or requirements or features) it is considering building and assigns a size to each story. In this sense, story points are similar to fuzzy logic, except that the stories are normally assigned a numeric value from one of the scales
  • 42. 5. Proxy based Estimation T-Shirt In this approach, the developers classify each feature’s size relative to other features as Small, Medium, Large, or Extra Large. In parallel, the customer, marketing, sales, or other nontechnical stakeholders classify each feature’s business value on the same scale. These two sets of entries are then combined
  • 43. 5. Proxy based Estimation
  • 45. 6. Expert Judgment in Groups
  • 46. 6. Expert Judgment in Groups