cse 7315 - sw project management / module 20 - more effort estimation models copyright © 1995-2006,...
TRANSCRIPT
CSE 7315 - SW Project Management / Module 20 - More Effort Estimation ModelsCopyright © 1995-2006, Dennis J. Frailey, All Rights Reserved
Slide 1
CSE7315M20
August 12, 2006
SMU CSE 7315Planning and Managing a
Software Project
Module 20More Effort Estimation Models
Slide # 2August 12, 2006
CSE 7315 - SW Project Management / Module 20 - More Effort Estimation ModelsCopyright © 1995-2006, Dennis J. Frailey,
All Rights ReservedCSE7315M20
Objectives of This Module
• To discuss some additional Effort Estimating models
• To discuss conversion from effort to cost
• To discuss more about Cocomo II
Slide # 3August 12, 2006
CSE 7315 - SW Project Management / Module 20 - More Effort Estimation ModelsCopyright © 1995-2006, Dennis J. Frailey,
All Rights ReservedCSE7315M20
The Big Picturefor Cost Estimating
EstimateSize
EstimateEffort and
Cost
EstimateSchedule
Evaluate
Source InformationStatement of Work
RequirementsConstraintsStandardsProcesses
Historyetc.
WBS Size
Effort &
Cost
Schedule
OKCompleteDetailedPlanning
Revise &Negotiate
Not OK
Slide # 4August 12, 2006
CSE 7315 - SW Project Management / Module 20 - More Effort Estimation ModelsCopyright © 1995-2006, Dennis J. Frailey,
All Rights ReservedCSE7315M20
Bottom-Up Effort Estimating
Slide # 5August 12, 2006
CSE 7315 - SW Project Management / Module 20 - More Effort Estimation ModelsCopyright © 1995-2006, Dennis J. Frailey,
All Rights ReservedCSE7315M20
Architecture of Spreadsheet
Model BasedEffort Estimate
Other EffortEstimates ...
HistoricalSize Estimate
SoftwareReuse
Analysis
Final EffortEstimate
ProductivityBased Effort
Estimate
Other SizeEstimates ...
Final SizeEstimate
DelphiSize Estimate
Size / Reuse Effort Effort & Cost Schedules
Generic Schedule
Effort Schedule
Labor Schedule
Cost Schedule
0
5
10
15
20
25
M1 M2 M3 M4 M5 M6
Total
Build 1
Build 2
Slide # 6August 12, 2006
CSE 7315 - SW Project Management / Module 20 - More Effort Estimation ModelsCopyright © 1995-2006, Dennis J. Frailey,
All Rights ReservedCSE7315M20
Bottom-Up Effort Estimating
• This method may take a lot of time
• It may or may not be based on size estimates
Slide # 7August 12, 2006
CSE 7315 - SW Project Management / Module 20 - More Effort Estimation ModelsCopyright © 1995-2006, Dennis J. Frailey,
All Rights ReservedCSE7315M20
Bottom-Up Estimating Process
1) Break the software down into components -- as detailed as you can– Break down until the individual parts are
small enough for an individual to develop in a short time (1 week to 1 month perhaps)
– If you do not know, make a reasonable estimate of how you might break each part of the software into smaller parts
2) Estimate each part3) Combine estimates
Slide # 8August 12, 2006
CSE 7315 - SW Project Management / Module 20 - More Effort Estimation ModelsCopyright © 1995-2006, Dennis J. Frailey,
All Rights ReservedCSE7315M20
Sample Breakdown
Database I/F
ErrorProcessor
Sort Module
Synchro-nizer
CommandProcessor
TableInterface
Joe Mary &
Jim
Bert &
Sally
Joe Bert Sally
ParserCode
GeneratorFile
SystemRun TimeSystem
UserInterface
ManageSoftware
Development
Build “C”Compiler
Build TestSuite
WriteDocumentation
WriteInstallationSoftware
Software for“C” Compiler
Slide # 9August 12, 2006
CSE 7315 - SW Project Management / Module 20 - More Effort Estimation ModelsCopyright © 1995-2006, Dennis J. Frailey,
All Rights ReservedCSE7315M20
Sample Estimate
6 SW6 SW 1 SW1 SW4 SW4 SW 5 SW5 SW3 SW3 SW 4 SW4 SW
Joe Mary &
Jim
Bert &
Sally
Joe Bert Sally
12 SW 28 SW23 SW 14 SW18 SW
18 SW95 SW 33 SW 12 SW 22 SW
180 SW
Slide # 10August 12, 2006
CSE 7315 - SW Project Management / Module 20 - More Effort Estimation ModelsCopyright © 1995-2006, Dennis J. Frailey,
All Rights ReservedCSE7315M20
For an Object Oriented DesignYou May Break it Up
Differently
Class“Query”
Subclass“User
Response”
Class“ErrorCode”
Class“Response”
Subclass“System
Response”
Subclass“Maintenance
Response”
Slide # 11August 12, 2006
CSE 7315 - SW Project Management / Module 20 - More Effort Estimation ModelsCopyright © 1995-2006, Dennis J. Frailey,
All Rights ReservedCSE7315M20
Bottom-Up EstimatingBenefits
• Each part of the project is estimated by someone who knows that part well
• Individuals “buy in” to the estimate because it was based on their expertise
• It is easy to compare actuals with estimates and determine if and where you went wrong
Slide # 12August 12, 2006
CSE 7315 - SW Project Management / Module 20 - More Effort Estimation ModelsCopyright © 1995-2006, Dennis J. Frailey,
All Rights ReservedCSE7315M20
Architecture of Spreadsheet
Model BasedEffort Estimate
Other EffortEstimates ...
HistoricalSize Estimate
SoftwareReuse
Analysis
Final EffortEstimate
ProductivityBased Effort
Estimate
Other SizeEstimates ...
Final SizeEstimate
DelphiSize Estimate
Size / Reuse Effort Effort & Cost Schedules
Generic Schedule
Effort Schedule
Labor Schedule
Cost Schedule
0
5
10
15
20
25
M1 M2 M3 M4 M5 M6
Total
Build 1
Build 2
Slide # 13August 12, 2006
CSE 7315 - SW Project Management / Module 20 - More Effort Estimation ModelsCopyright © 1995-2006, Dennis J. Frailey,
All Rights ReservedCSE7315M20
Compare Results and Judge
Method Productivity Cocomo Bottom Up
J udged
Eff ort 376 402 358 360
Productivity 1.1 .9 1.2 1.2
Schedule 12.8 14.2 12 12
Slide # 14August 12, 2006
CSE 7315 - SW Project Management / Module 20 - More Effort Estimation ModelsCopyright © 1995-2006, Dennis J. Frailey,
All Rights ReservedCSE7315M20
Cost Estimating
Slide # 15August 12, 2006
CSE 7315 - SW Project Management / Module 20 - More Effort Estimation ModelsCopyright © 1995-2006, Dennis J. Frailey,
All Rights ReservedCSE7315M20
There are Many CostsOther Than Software
Development
WBS
EstimateSize and
ThenEffort
Estimate Costs Directlyor as % of
Development Costs
Software Developme
nt Tasks• requirement
s• design• code• ...
Other Tasks and Costs
• management
• travel• training• overhead• facilities• equipment• software• …
Convertto$
TotalCost
Estimate
TotalCost
Estimate
Slide # 16August 12, 2006
CSE 7315 - SW Project Management / Module 20 - More Effort Estimation ModelsCopyright © 1995-2006, Dennis J. Frailey,
All Rights ReservedCSE7315M20
Turning Effort into Cost• Turning effort estimates into cost
estimates depends on many factors that depend on your specific company– Overhead rates– Cost of borrowing money– Methods of calculating profit margin– Allocations of management and support
expenses– Costs of capital equipment– etc.
Slide # 17August 12, 2006
CSE 7315 - SW Project Management / Module 20 - More Effort Estimation ModelsCopyright © 1995-2006, Dennis J. Frailey,
All Rights ReservedCSE7315M20
One Way to Convert Effort to $
Category % of Total Salary Rate#
Requirements 10% $65/hourDesign 10% $50/hourCode 30% $40/hourTest 30% $30/hourOther 5% $15/houretc. etc.
# use rate per hour if effort is measured in staff-hours use rate per day if effort is measured in staff-days etc.
Slide # 18August 12, 2006
CSE 7315 - SW Project Management / Module 20 - More Effort Estimation ModelsCopyright © 1995-2006, Dennis J. Frailey,
All Rights ReservedCSE7315M20
Multiply the Effort by the Percentages to get the Labor
Distribution and $10,000 hours:
1000 hours - requirements x $65 = $65,000
1000 hours - design x $50 = $50,000
3000 hours - code x $40 = $120,000
3000 hours - test x $30 = $90,000
etc.
Total: $xxx,xxx
Slide # 19August 12, 2006
CSE 7315 - SW Project Management / Module 20 - More Effort Estimation ModelsCopyright © 1995-2006, Dennis J. Frailey,
All Rights ReservedCSE7315M20
A Note About theLabor Rate Chart
• Be sure to correlate the percentages with the “experience level” factors assumed in your effort estimate
>> It is tempting to cut costs estimates by boosting the percentage of lower cost staff -- check what this does to the cost drivers first!!! <<
Slide # 20August 12, 2006
CSE 7315 - SW Project Management / Module 20 - More Effort Estimation ModelsCopyright © 1995-2006, Dennis J. Frailey,
All Rights ReservedCSE7315M20
Supplement - Cocomo II (1)
• Barry Boehm and his colleagues at the University of Southern California are working on a new version of Cocomo that better represents modern programming practices and such
• An initial version of the model has been released
• The next few slides will review some of the important concepts in the new model
(1) Boehm, et. al., USC Center for Software Engineering
Slide # 21August 12, 2006
CSE 7315 - SW Project Management / Module 20 - More Effort Estimation ModelsCopyright © 1995-2006, Dennis J. Frailey,
All Rights ReservedCSE7315M20
Cocomo Versions and Limitations
Original (1981) - custom, “build to specs” software development projects
Ada (1989) - custom, written in Ada These models were not calibrated to:• Business software• Object-oriented software• Commercial, off-the-shelf application
composition• Evolutionary development
Slide # 22August 12, 2006
CSE 7315 - SW Project Management / Module 20 - More Effort Estimation ModelsCopyright © 1995-2006, Dennis J. Frailey,
All Rights ReservedCSE7315M20
Cocomo II Objectives
• Fit lifecycle practices of the 21st century
• Support continuous improvement of the model
• Support evaluating the effects of software technology improvements on life cycle costs and schedules
Slide # 23August 12, 2006
CSE 7315 - SW Project Management / Module 20 - More Effort Estimation ModelsCopyright © 1995-2006, Dennis J. Frailey,
All Rights ReservedCSE7315M20
Future Software PracticesMarketplace Model (1)
(1) extrapolated from Silvestri and Likasieicz, “Occupational Employment Projections,” [Bureau of Labor Statistics moderate-growth labor distribution scenario for the year 2005] Monthly Labor Review 114 (11), November 1991, pp. 64-94.
Infrastructure (operating systems, networks,major products) (0.75 Million
Performers in the U.S.)
End-User Programming
(55 Million Performers in the U.S.)
SystemIntegration(0.7 Million)
Application Composition (0.7 Million)
Application Generators &
Composition Aids (0.6 Million)
Slide # 24August 12, 2006
CSE 7315 - SW Project Management / Module 20 - More Effort Estimation ModelsCopyright © 1995-2006, Dennis J. Frailey,
All Rights ReservedCSE7315M20
Duration of TypicalSW Development Effort
Infrastructure (operating systems,networks, major products)
1-6 years
SystemIntegration
Application Composition
1-6 months
Application Generators & Composition Aids
End-User Programming
1-6 hours
Slide # 25August 12, 2006
CSE 7315 - SW Project Management / Module 20 - More Effort Estimation ModelsCopyright © 1995-2006, Dennis J. Frailey,
All Rights ReservedCSE7315M20
The Middle Layers
• Application Generators -- creation of prepackaged capabilities for end users
SystemIntegration(0.7 Million)
Application Generators and Composition Aids
(0.6 Million)
Application Composition (0.7 Million)
Slide # 26August 12, 2006
CSE 7315 - SW Project Management / Module 20 - More Effort Estimation ModelsCopyright © 1995-2006, Dennis J. Frailey,
All Rights ReservedCSE7315M20
The Middle Layers (continued)
SystemIntegration(0.7 Million)
Application Generators and Composition Aids
(0.6 Million)
Application Composition (0.7 Million)
• Application Composition -- from interoperable components such as GUI builders, database systems, object managers (middleware)
Slide # 27August 12, 2006
CSE 7315 - SW Project Management / Module 20 - More Effort Estimation ModelsCopyright © 1995-2006, Dennis J. Frailey,
All Rights ReservedCSE7315M20
The Middle Layers (continued)
• System Integration -- similar to custom
applications but with heavy use of prepackaged tools
and application composition
SystemIntegration(0.7 Million)
Application Generators and Composition Aids
(0.6 Million)
Application Composition (0.7 Million)
Slide # 28August 12, 2006
CSE 7315 - SW Project Management / Module 20 - More Effort Estimation ModelsCopyright © 1995-2006, Dennis J. Frailey,
All Rights ReservedCSE7315M20
Cocomo II Strategy• Several submodels for the various sectors described
above• Tailoring of submodels to project details• Combination of submodels for each situation, as
required
Slide # 29August 12, 2006
CSE 7315 - SW Project Management / Module 20 - More Effort Estimation ModelsCopyright © 1995-2006, Dennis J. Frailey,
All Rights ReservedCSE7315M20
Additional Cocomo II Information
Under development at University of Southern California, Cocomo II project.
For More Information on Cocomo II:HTTP://SUNSET.USC.EDU/
research/COCOMOII/index.html
Slide # 30August 12, 2006
CSE 7315 - SW Project Management / Module 20 - More Effort Estimation ModelsCopyright © 1995-2006, Dennis J. Frailey,
All Rights ReservedCSE7315M20
Matching Models to SectorsEnd User Programming
– No Need for a Cocomo Model– Relatively short development
Application Composition– Based on Object Points (1)
Application Generator & System Integration– Tailored mix of Application Composition (for prototyping) and
more detailed models
(1) Banker, Kauffman, Kumar, “An Empirical Test of Object-Based Output Measurement Metrics in a Computer Aided Software Engineering Environment,” Journal of Management Information Systems, 1994.
Slide # 31August 12, 2006
CSE 7315 - SW Project Management / Module 20 - More Effort Estimation ModelsCopyright © 1995-2006, Dennis J. Frailey,
All Rights ReservedCSE7315M20
Three-Stage Series of Models
1) (prototyping / application composition)Application composition model based on object points
2) (exploration of alternatives, incremental development)Early Design model based on function points and five cost drivers (one for each major category in original Cocomo)
Slide # 32August 12, 2006
CSE 7315 - SW Project Management / Module 20 - More Effort Estimation ModelsCopyright © 1995-2006, Dennis J. Frailey,
All Rights ReservedCSE7315M20
Three-Stage Series of Models (continued)
3) (final development of fielded system)Post-Architecture model, similar to current Cocomo model. Uses SLOC or function points.
Slide # 33August 12, 2006
CSE 7315 - SW Project Management / Module 20 - More Effort Estimation ModelsCopyright © 1995-2006, Dennis J. Frailey,
All Rights ReservedCSE7315M20
Each Stage ProducesThree Values
• Optimistic Estimate• Expected Value• Pessimistic Estimate
These correspond to the two outer curves and the “dots” shown on the next slide
Slide # 34August 12, 2006
CSE 7315 - SW Project Management / Module 20 - More Effort Estimation ModelsCopyright © 1995-2006, Dennis J. Frailey,
All Rights ReservedCSE7315M20
Estimating Accuracy vs. Phase
0
0.5
1
1.5
2
2.5
3
3.5
4
4.5
Feasibility Plans Design Detailed
Design
Code and
Test
Release
Upper Limit
Actual
Lower Limit
• Typical Estimate
• • • • •
•
•
•
Application Composition
Model Early Design Model
Post Architecture
Model
Slide # 35August 12, 2006
CSE 7315 - SW Project Management / Module 20 - More Effort Estimation ModelsCopyright © 1995-2006, Dennis J. Frailey,
All Rights ReservedCSE7315M20
Module Summary• Bottom-up estimating can be costly and
slow, but generates strong “buy-in”• Cocomo II is an emerging approach that
applies Cocomo and other models to newer methods of software development
• Cocomo II also recognizes that estimates must be refined and updated as a project progresses
Slide # 36August 12, 2006
CSE 7315 - SW Project Management / Module 20 - More Effort Estimation ModelsCopyright © 1995-2006, Dennis J. Frailey,
All Rights ReservedCSE7315M20
General References on Estimating Cost
Boehm, Software Engineering Economics (Prentice-Hall, 1981); Software Cost Estimation With COCOMO II (Prentice Hall, July 2000)
Boehm, et. al., Cost Models for Future Software Life Cycle Processes: Cocomo 2.0, Technical Report, USC Center for Software Engineering, Draft 2.0, September 6, 1994.
Brooks, Fred, The Mythical Man-Month, 1975 / 1995.
Tausworthe, R.C. Software Specifications Document, DSN Software Cost Model, Jet Propulsion Laboratory, JPL Publication 81-7 (1981).
Slide # 37August 12, 2006
CSE 7315 - SW Project Management / Module 20 - More Effort Estimation ModelsCopyright © 1995-2006, Dennis J. Frailey,
All Rights ReservedCSE7315M20
END OFMODULE 20