Professional Documents
Culture Documents
The Cocomo Model
The Cocomo Model
The Cocomo Model
Tom Rethard
based on a presentation by Jim Paulson of Novatel
Wireless
COCOMO
Outline
Introduction
The Basic Model
Equations
When You Should Use It
Limitations
Intermediate Model
Detailed Model
CSE 4310/5392 2
COCOMO
COCOMO is one of the most widely
used software estimation models in
the world
It was developed by Barry Boehm in
1981
COCOMO predicts the effort and
schedule for a software product
development based on inputs relating
to the size of the software and a
number of cost drivers that affect
CSE 4310/5392 3
COCOMO: Three Models
CSE 4310/5392 4
The Development Modes:
Project Characteristics
Organic Mode
developed in a familiar, stable environment,
similar to the previously developed projects
relatively small and requires little innovation
Semidetached Mode
intermediate between Organic and Embedded
Embedded Mode
tight, inflexible constraints and interface requirements
The product requires great innovation
CSE 4310/5392 5
COCOMO:
Some Assumptions
Primary cost driver is the number of
Delivered Source Instructions (DSI)
developed by the project
COCOMO estimates assume that the
project will enjoy good management
by both the developer and the customer
Assumes the requirements specification
is not substantially changed after the
plans and requirements phase
CSE 4310/5392 6
Basic COCOMO Model
CSE 4310/5392 7
Basic COCOMO Model:
Equations
Mode Effort Schedule
1.05 0.38
Organic E=2.4*(KDSI) TDEV=2.5*(E)
1.12 0.35
Semidetached E=3.0*(KDSI) TDEV=2.5*(E)
1.20 0.32
Embedded E=3.6*(KDSI) TDEV=2.5*(E)
CSE 4310/5392 8
Basic COCOMO Model:
When Should You Use It
CSE 4310/5392 9
Basic COCOMO Model:
Limitations
Its accuracy is necessarily
limited because of its lack of
factors which have a significant
influence on software costs
The Basic COCOMO estimates
are within a factor of 1.3 only
29% of the time, and within a
factor of 2 only 60% of the time
CSE 4310/5392 10
Basic COCOMO Model:
An Example
We have determined our project fits the
characteristics of Semi-Detached mode
We estimate our project will have 32,000 Delivered
Source Instructions. Using the formulas, we can
estimate:
Effort = 3.0*(32) 1.12 = 146 man-months
Schedule = 2.5*(146) 0.35 = 14 months
Productivity = 32,000 DSI / 146
MM
= 219 DSI/MM
Average Staffing = 146 MM /14 months
CSE 4310/5392
= 10 FSP 11
Intermediate
COCOMO Model
CSE 4310/5392 12
Intermediate
COCOMO Model
Four areas for drivers
Product itself
Computer
Personnel
Project itself
CSE 4310/5392 13
Intermediate Model:
Cost Driver Categories
Product Attributes
RELY --- Required Software
Reliability
DATA --- Data Base Size
CPLX --- Software Product
Complexity
CSE 4310/5392 14
Intermediate Model:
Cost Driver Categories
Computer Attributes
TIME --- Execution Time Constraint
STOR --- Main Storage Constraint
VIRT --- Virtual Machine Volatility
TURN --- Computer Turnaround
Time
CSE 4310/5392 15
Intermediate Model:
Cost Driver Categories
Personnel Attributes
ACAP --- Analyst Capability
AEXP --- Applications Experience
PCAP --- Programmer Capability
VEXP --- Virtual Machine Experience
LEXP --- Programming Language
Experience
CSE 4310/5392 16
Intermediate Model:
Cost Driver Categories
Project Attributes
MODP --- Modern Programming
Practices
TOOL --- Use of Software Tools
SCED --- Required Development
Schedule
CSE 4310/5392 17
Intermediate Model:
Effort Multipliers
Table of Effort Multipliers for
each of the Cost Drivers is
provided with ranges depending
on the ratings
Very Very Extra
Cost Driver Low Low Nom High High High
CPLX
Product
Complexity 0.70 0.85 1.00 1.15 1.30 1.65
CSE 4310/5392 18
Intermediate Model:
Equations
Mode Effort Schedule
1.05 0.38
Organic E=EAF*3.2*(KDSI) TDEV=2.5*(E)
1.12 0.35
Semi- E=EAF*3.0*(KDSI) TDEV=2.5*(E)
detached
1.20 0.32
Embedded E=EAF*2.8*(KDSI) TDEV=2.5*(E)
CSE 4310/5392 19
Intermediate Model:
When Should You Use It
The Intermediate Model can be
applied across the entire
software product for easily
and rough cost estimation during
the early stage
or it can be applied at the
CSE 4310/5392 23
Detailed COCOMO Model:
Module-Subsystem-System
Module level
cost drivers tend to vary at the lowest level
CPLX, PCAP, VEXP, LEXP
Subsystem Level
cost drivers tend to vary from subsystem to
subsystem, but are the same for modules in a sub-
system
RELY, DATA, TIME, STOR, VIRT
System Level
overall project relations such as nominal effort and
schedule equations
CSE 4310/5392 24
Detailed COCOMO Model:
Equations
Detailed Model uses the same
equations for estimations as the
Intermediate Model
Detailed Model uses a very complex
procedure to calculate estimation.
The procedure uses the DSIs for
subsystems and modules, and
module level and subsystem level
effort multipliers as inputs
CSE 4310/5392 25
Detailed COCOMO Model:
When Should You Use It?
The Detailed Model can estimate the
staffing, cost, and duration of
each of the development phases,
subsystems, modules
It allows you to experiment with
different development strategies, to
find the plan that best suits your
needs and resources
CSE 4310/5392 26
Detailed COCOMO Model:
Limitations
Requires substantially more time
and effort to calculate estimates
than previous models
Detailed Model estimates are within
20% of the actuals 70% of the time
CSE 4310/5392 27
Summary
Cost estimation models are not a
substitute for a detailed estimate by
task by project management
Cost estimation models highly depend on
the user’s knowledge of application
domain, analysis ability and the
understanding of the cost model itself
The process of meeting the estimate is
equally critical to the process of making the
estimate
CSE 4310/5392 28
Links
CSE 4310/5392 29
Questions / Discussion
Issues to discuss:
Do you think cost multipliers are
project phase dependent like
COCOMO’s detailed model
suggests?
Is cost estimation only suitable for
the Waterfall lifecycle, or can it be
used with other life cycles, such as
incremental?
CSE 4310/5392 30
Questions / Discussion
Issues to discuss:
Your cost estimate uses three
methods which return widely
varying results? How do you
determine which method is right?
What methods or models have you
seen used in the workplace? How
successful were they?
CSE 4310/5392 31
Questions / Discussion
Issues to discuss:
Is it possible to estimate the size
using soft requirements?
CSE 4310/5392 32