NYS Forum Project Management Community of Practice Presents…..

advertisement
NYS Forum Project
Management Community of
Practice Presents…..
Estimating
Techniques and
Tools
September 30,
2004
Introductions
¾ Presenter: Michael LaBarge
¾ Supporting Cast:
• Joann Dunham
• Steve Lawlor
2
What is Estimating?
¾ Part Art, Part Science?
¾ “Black Box Tool”?
• Lines of Code In
• Project Cost Out
¾ Completion Date Blurted Out While Under Duress from
Senior Management
¾ Process of Associating a Value with Cost, Duration and
Effort for a proposed project.
3
The Formula
ESTIMATE = ((C+H) x S)
Where:
C = Conjecture
H = Hypothesis
S = Supposition
Rule # 1
Estimates Are Wrong
4
What Should Estimating Be?
¾ Accurate
¾ Repeatable
¾ Defensible
¾ Well Documented
¾ Management Tool
5
Agenda
¾ Fundamentals of Estimating
• Components of a Good Estimate
• Characteristics of a Good Estimate
¾ Estimating Techniques Overview
¾ Creating The “Basis of Estimate”
¾ Estimating Tool Overview
6
NYS Project Life Cycle – A Refresher
Project Origination
Project Initiation
Project Planning
Project Execution
& Control
Project Closeout
(As outlined in the “NYS Project Management Guidebook”)
7
Fundamentals of Estimating
¾ When Do We Need an Estimate?
• Project Origination
- Project Proposal / Business Case
ƒ Strategic Planning, Budget Development
• Project Initiation
• Project Planning
• Project Execution
- In-flight Forecasting
- Change Requests
- “Next Phase” Detailed Estimate
8
What Needs to be Estimated?
¾ Scope
• Defines the Boundaries of the Project
- Defined In Business Terms
- Business Functions to be Addressed as Part of the
Project
¾ Size
• Software
- Size of the Application Under Consideration
• Non-Software
- Non Application Deliverables such as Requirements,
Documentation, Training
- Measured by Interviews Performed, Pages of
Documentation, Training Sessions
9
What Needs to be Estimated? (cont.)
¾ Effort
• Defines Amount of Effort Required to Deliver The Agreed upon Scope
• Effort is Measured in Applied Hours, Person Months, etc.
¾ Staffing
• The Number of People Required to Deliver the Agreed upon Scope
¾ Schedule
• Duration of Time Required to Deliver the Agreed Upon Scope
¾ Cost
• Defines Both Labor and Non-Labor Costs of Delivering the Agreed
Upon Scope
Rule #2
It’s The Things You Don’t Estimate That Hurt You
10
Inter-Relationship of Components
Scope
Non-Product Size
Product Size
Effort
Time
Staffing
Labor Cost
11
Inter-Relationship of Components
Scope
Non-Product
Size
Product Size
Effort
Time
Staffing
Labor Cost
12
Getting Started
¾ Identify Purpose of Estimate
• What Needs to be Estimated?
• How is Estimate Going to be Used?
• What Degree of Accuracy is Needed?
• Who is Requesting the Estimate?
13
Types of Estimates
¾ Two Main Estimating Categories
• Sizing Estimate
- Rough Order of Magnitude(ROM)
- Strategic Planning
- High Level Budget Planning
• Detailed Estimate
- Project Budget
- Firm Project Schedule
- Tactical Decision Making
- Plan, Schedule and Monitor Project Activities
14
Characteristics of Sizing Estimates
¾ High Level Approximations used for making Strategic
decisions.
• Project Go/No Go decisions
• Project Origination
• Business Case Development
• Make Vs. Buy
• Project Prioritization for Portfolio Management
¾ Measured in Overall Effort, Cost or General
Implementation Timeframes.
¾ Considered a Rough Order of Magnitude Estimate
• Wide Confidence Range of -25% to +75%
15
Characteristics of Detailed Estimates
¾ Used for Tactical Decisions Related to Projects
• Project Planning
• Resource Assignments
• Delivery Dates
• Budgeted Costs
¾ Provide Enough Information for Individual Project
Assignments
¾ Detailed Estimates Fall into Two Categories Based on
Accuracy
• Budgetary (Confidence Level of -10% to +15%)
• Defined (Confidence Level of -5% to +10%)
16
Estimating & The PM Lifecycle
Project Origination
Project Initiation
Sizing
Detailed (Budgetary)
Rough Order of Magnitude
Tactical Decisions
Confidence Range Of -25% to +75%
Confidence Range Of -10 to +25%
Project Planning
Project Execution and Control
Detailed (Defined)
Detailed (Defined)
Generate Work Assignments
“In-Flight” Estimating
Confidence Range Of -5 to +10%
Generate Work Assignments
Confidence Range Of -5 to +10%
17
Estimating Techniques
18
Top Down Estimating
¾ Use High Level View of Project and Produce Estimates
Quickly
¾ Produce Effect Sizing Estimates When a Limited
Amount of Detailed Information Exists About the
Project
¾ Can be Comparison Based
• Compare Characteristics or Functionality from Known
Projects
¾ Can also be used as a Reasonability Check for Detailed
Estimates
19
Bottom-Up Estimating
¾ Involve Significant Level of Detail
¾ Used When Definitive , Detailed Estimates of Effort and
Cost are Required
¾ Involves Generating Individual Estimates for Small Units
of Work Products
¾ Summarizing Units of Work to Generate Overall Effort
(WBS)
¾ Used to Determine Project Schedules and Delivery Time
Frames
20
Estimating Techniques
¾ Function Point Analysis
¾ Work Distribution Model
¾ Comparison Based
¾ Expert Based
¾ Consensus Estimating
•
Used in Conjunction with Other Techniques
¾ Putnam Distribution Model
Rule #3 There is No Silver Bullet
21
Estimating Techniques
¾ Function Point Analysis
¾ Work Distribution Model
¾ Comparison Based
¾ Expert Based
¾ Consensus Estimating
•
Used in Conjunction with Other Techniques
¾ Putnam Distribution Model
22
Function Point Analysis (FPA)
¾ A Sizing Technique That Relies upon a Logical Business
View of the System
¾ Considers Five Weighted Variables
• External Inputs
• External Outputs
• Logical Internal Tables
• External Queries
• External Interfaces
¾ Calculated Function Points are Converted to Effort Based
on Industry or Organizational Metrics
23
Function Point Analysis (FPA)
¾ Strengths
• Capable of Generating Accurate Estimates Early in Software
Development Life Cycle (SDLC)
• Universally Recognized Sizing Units
• The Heart of Most Estimating Tools
¾ Weaknesses
• Training in Function Point Counting is Required
• Time Consuming Manual Process
Rule #4 Individual Results May Vary
24
Calculating Function Points
Type
External Inputs
Externa Interface Files
External Outputs
External Queries
Logical Internal Tables
Language
C++
COBOL
Visual Basic 6
SQL
HTML
Number Conversion Factor
4
3
4
4
6
4
7
5
4
10
Function Points =
(4*4)+(3*7)+(4*5)+(4*4)+(6*10)
=133
SLOC per Function Point
53
107
24
SLOC = (133*24)=3,192
13
14
Function Points & Source Lines Of Code are the Heart of Most
Estimating Tools
25
Estimating Techniques
¾ Function Point Analysis
¾ Work Distribution Model
¾ Comparison Based
¾ Expert Based
¾ Consensus Estimating
•
Used in Conjunction with Other Techniques
¾ Putnam Distribution Model
26
Work Distribution Model
¾ Modeling Technique Based on the Utilization of a
Standard SDLC and Project History
¾ Used In Conjunction with Other Modeling Techniques as
a “Reality Check”
¾ Calculates Distribution of Effort or Cost by Major
Development Phase
Rule # 5 History Repeats Itself
27
Work Distribution Model
¾ Strengths
• Can be Used to Validate and Existing Estimate
• Can Distribute Estimated Costs or Effort Across Major
Phases of SDLC
¾ Weaknesses
• Requires Project Data be Collected and Analyzed (Multiple
Projects)
• Should be Used in Conjunction with Other Estimating
Techniques
28
Estimating Techniques
¾ Function Point Analysis
¾ Work Distribution Model
¾ Comparison Based
¾ Expert Based
¾ Consensus Estimating
•
Used in Conjunction with Other Techniques
¾ Putnam Distribution Model
29
Comparison Based
¾ Often Used in Conjunction with Expert-Based Technique
¾ Assumes That if Two Projects are Alike in Some
respects, Other Similarities May be Inferred
¾ Compare Projects to develop Ballpark Estimate
¾ Adjust Estimate Based on Differences in Projects
¾ Best Results Occur With Historical Data
Rule #6 Predictable Life Cycle Yields Predictable Estimates
30
Comparison Based
¾ Strengths
• Can be Used to Develop Top-Down or Bottom-Up Estimate
• Can Quickly Provide a Top-Down Rough Order of
Magnitude(ROM) Sizing Estimate
¾ Weaknesses
• Accuracy Dependent on Actual Similarities of Projects
• Key Effort Drivers Like Technology or SDLC may be
Different
31
Estimating Techniques
¾ Function Point Analysis
¾ Work Distribution Model
¾ Comparison Based
¾ Expert Based
¾ Consensus Estimating
•
Used in Conjunction with Other Techniques
¾ Putnam Distribution Model
32
Expert Based
¾ Results are Heavily Dependent on “Hands On”
Experience of the Estimators
¾ Best Results Occur When Historical Project Metrics are
Available
¾ Should be used in Conjunction with other Estimating
Techniques
33
Estimating Techniques
¾ Function Point Analysis
¾ Work Distribution Model
¾ Comparison Based
¾ Expert Based
¾ Consensus Estimating
•
Used in Conjunction with Other Techniques
¾ Putnam Distribution Model
34
Estimating Techniques
¾ Function Point Analysis
¾ Work Distribution Model
¾ Comparison Based
¾ Expert Based
¾ Consensus Estimating
•
Used in Conjunction with Other Techniques
¾ Putnam Distribution Model
35
Putnam Distribution Model
¾ Used When There is A Significant Amount of Uncertainty
of About the Task Being Estimated
¾ Accounts for Uncertainty by Calculating a Weighted
Average
¾ Factors “Best Case”, “Worst Case” and “Most Likely”
Occurrence
¾ Usually Used in Conjunction with Other Estimating
Techniques (Expert Based, Consensus)
36
Putnam Distribution Model
¾ Strengths
• Can Be used to Calculate a Weighted Average
Estimate when Little Information or Prior Experience
Exists
• Calculates Standard Deviation Which Can Quantify
Range of Uncertainty
¾ Weaknesses
• Often Represents “Precision without Accuracy”
• Produces Estimate Range
37
Putnam Distribution
Produce Three Estimates
Calculate Expected Value
Low Estimate
10k LOC
Most Likely Estimate
12k LOC
High Estimate
18k LOC
Calculate Standard Deviation
SD = H - L
6
SD = 18k - 10k
6
=1.333k LOC
Expected Value = L + (MLx4) + H
6
E V = 10k + (12kx4) + 18k
6
= 12.67k LOC
Based on Normal Curve using Standard Deviation
• 50% of Occurrences will be > EV at +3 SD
• 50% of Occurrences will be < EV at -3 SD
Based on Normal Curve 66% of
Occurrences will fall within 1 SD
38
Let’s Do a Simple Estimate
Effort = KSLOC * Productivity
From FPA
Project Type
SLOC = (133*24)=3,192
= 3.2 KSLOC
COCOMO Default
Embedded Dev
E-Commerce DEV
Linear Productivity
2.94
2.58
3.6
Effort = 3.2 * 3.60 = 11.5 Person Months
(for Code and Unit Test)
Let’s Estimate the Rest of The Product
39
Let’s use Work Distribution (SDLC Based) Model
11.5 Person Months for Code and Unit Test
Relative to Effort For Code and Unit Test …
Requirements (20%)
Technical Design (20%)
2.3 Person Months
2.3 Person Months
Code & Unit Test
Integration Test (30%)
System Test (20%)
User Test (15%)
11.5 Person Months
3.5 Person Months
2.3 Person Months
1.7 Person Months
Total Effort
23.6 Person Months
40
Estimating & The PM Lifecycle
Project Origination
Sizing
Rough Order of Magnitude
Top Down Estimating
FPA
Work Distribution
Consensus
Expert
Confidence Range Of -25% to +75%
Project Initiation
Detailed (Budgetary)
Tactical Decisions
Bottom-Up Estimating
Confidence Range Of -10 to +25%
Activity Level
Work Breakdown
Structure
AND
Work Distribution
Consensus
Expert
41
Planning & The PM Lifecycle
Project Planning
Work Breakdown
Detailed (Defined)
Generate Work Assignments
Confidence Range Of -5 to +10%
AND
Stop
Estimating
Task Level
Consensus
Expert
Project Execution and Control
Work Breakdown
Detailed (Defined)
Manage Work Assignments
Confidence Range Of -5 to +10%
AND
Task Level
Consensus
Expert
Start
Planning
42
Planning & The PM Lifecycle
Project Closeout
¾ Capture Metrics, Update BOE and Document
Estimating Lessons Learned
• Effort Expended
• Costs
• Staffing
¾ The More Detail You Capture …
The Better Future Estimates Will Be
43
Life Cycle Of an Estimate
Estimate for Strategic
Planning and Go /No-Go
Decision
In-flight Forecasting
Change Request
Develop Budgetary or
Project Plan Estimate
Refine Estimates
Sizing/ROM
Top-Down
Detailed (Budgetary or Defined)
Project Origination
&
Business Case
Techniques
Development
FPA
Consensus
Expert Based
Comparison Based
Work Dist. Model
Detailed (Defined)
Bottom-Up
Project Initiation
&
TechniquesProject Execution
Tools
& Tools
Project PlanningConsensus
KEM
KEM
Change Management
QSM
Expert Based
COST Xpert
Comparison Based
WBS
QSM
COST Xpert
44
Basis of Estimate (BOE)
45
Basis of Estimate (BOE)
¾ What is a BOE?
• A Written Justification For a Project Estimate and the
Basis (Planning Assumptions) by which the Project
Manager Can Predict How Changes in the Project
Landscape will effect Current Project Plan and Cost.
• Project Communication Vehicle to Increase the
Probability of Project Success.
46
Components of BOE
¾ A Good BOE Should Include the Following:
• The Estimating Techniques that were used
• Who Participated in the Estimating Process
• Identification of Projects used as Comparisons
• The Historical Data that was used in the Estimate
• The Confidence Level of the Estimate
47
Confidence Level
¾ What Determines a Confidence Level?
• Level of Knowledge about the Scope
• Level of Risk
• Level of Detail of the Estimate
• Technique(s) used to Complete Estimate
• Related Experience of Those that Developed the
Estimate
¾ Well Defined Scope and Detailed Estimates Result in
High Confidence Levels
• Lower Change or Contingency Budgets
48
Reviewing A BOE
¾ How Well is The Scope Defined?
¾ Determine What Estimating Techniques were used
• Will the Technique used Support the Accuracy I Need?
• Was Historical Data Used?
¾ Determine Who Participated in the Estimating Process
• Was it a Team Approach?
• Were the “Experts” Involved?
• Did They Have Access to Historical Data?
¾ Identify Projects used as Comparisons
• How Similar are the Projects?
• Do you have a BOE for Previous Project?
49
Let’s Review The Rules
¾ Rule # 1 - Estimates Are Wrong
• Understand The Purpose of The Estimate
• Review And Validate The BOE
¾ Rule # 2 - It’s The Things That you Don’t Estimate That Hurt
You
• Understand the Scope
• When Possible Use A Work Breakdown Structure
• Get The Experts Involved
¾ Rule # 3 - Individual Results May Vary
• If Using a Tool Understand The Metrics Used
• Gather Your Own History
50
Let’s Review The Rules
¾ Rule # 4 - There is No Silver Bullet
• No One Technique is Sufficient
• The More Detail the Better
¾ Rule # 5 - History Repeats Itself
• Capturing Detailed Project History at Project Closure
is Key
¾ Rule # 6 - Predictable Life Cycle Yields Predictable
Estimates
• Capturing History For All Phases and Activities Will
Make Estimates Repeatable
• Not All Projects Will Use All Activities
• Make Sure That This is In Your BOE
51
Estimating Tools
52
Estimating Tools
¾ QSM/SLIM
¾ Cost Xpert
¾ Keane Estimating Model
¾ COCOMO (Various)
¾ Cosmos
53
QSM/SLIM
54
Key Concepts in QSM/SLIM
¾ Estimates cost, schedule, effort and quality
¾ Utilizes concept of a ‘Performance Index’
• Measures the proficiency of your agency performance vs.
similar organizations
¾ Estimating tool is part of a suite of integrated components
• Historical Data Collection
• Project Oversight
• Analysis
¾ Combines organization-specific performance with related
industry trends and data
¾ Provides estimating ‘wizards’ to speed estimating process
55
Sample QSM/SLIM Screens and Reports
56
Cost Xpert
57
Key Concepts in Cost Xpert
¾ Supports multiple ‘categories’ of projects
• Construction
• Financial Services
• Systems Development
¾ Flexibility to model large variety of project
scenarios, accommodating:
• Different Life Cycle Approaches
• Multiple Labor Categories and Related Costs
• Varying estimating techniques (FPA, COCOMO etc.)
58
Sample Cost Xpert Screens/Reports
Variables such as
Project Type and
Lifecycle are selected
from drop-down lists
Accommodates and
accounts for Project
Constraints such as
‘Customer Response Time’
59
Keane Estimating Model
60
Key Concepts in KEM
ƒ
Keane Points - a neutral unit of measurement for product sizing
ƒ
Provides equivalency independent of language or technology
ƒ
Linked to language selection(s) to provide basis as work effort
ƒ
Established and adjusted internally to KEM
ƒ
Product Size – Measurement of a software system in Keane Points
ƒ
Product Effort – Basic Work Effort for a software system measured in hours
ƒ
Project Effort - The Work Effort to develop a software solution, including
business modeling, user acceptance testing, training, and other tasks beyond
the Product
ƒ
Gearing Factor
ƒ
A scalable parameter used in calculation of work effort
ƒ
Fixed value within KEM
ƒ
Established and adjusted internally to KEM
61
KEM Estimation Process Steps
¾
Specify Project Overview Information
¾
Estimation Worksheet (system breakdown structure, estimation
assumptions)
¾
Calculate Product Sizing
¾
Calculate Product Effort
¾
Specify Project-Specific Gearing Factors (optional)
¾
Distribute Work Effort to Lifecycle Steps and Supporting Activities –
Finalize Work Effort Estimate
¾
Specify Staffing Mix
¾
Generate and Analyze Resource Distribution
¾
Specify Project Costs
¾
Project Estimation Summary
62
63
NYS Forum Project
Management Community of
Practice Presents…..
Estimating
Techniques and
Tools
September 30,
2004
Download