You
are here: Freetutes.com
> Systems
Analysis and Design
COCOMO, COnstructive COst MOdel
COCOMO, COnstructive COst MOdel is static single-variable model. Barry Boehm introduced
COCOMO models. There is a hierarchy of these models.
Model 1:
Basic COCOMO model is static single-valued model that computes software development
effort (and cost) as a function of program size expressed in estimated lines of
code.
Model 2:
Intermediate COCOMO model computes software development effort as a function
of program size and a set of "cost drivers" that include subjective
assessments of product, hardware, personnel, and project attributes.
Model 3:
Advanced COCOMO model incorporates all characteristics of the intermediate
version with an assessment of the cost driver's impact on each step, like analysis,
design, etc.
COCOMO can be applied to the following software project's categories.
Organic mode:
These projects are very simple and have small team size. The team has a good
application experience work to a set of less than rigid requirements. A thermal
analysis program developed for a heat transfer group is an example of this.
Semi-detached mode:
These are intermediate in size and complexity. Here the team has mixed experience
to meet a mix of rigid and less than rigid requirements. A transaction processing
system with fixed requirements for terminal hardware and database software is
an example of this.
Embedded mode:
Software projects that must be developed within a set of tight hardware, software,
and operational constraints. For example, flight control software for aircraft.
The basic COCOMO model takes the form

where,
E is the effort applied in person-month,
D is the development time in chronological month,
KLOC is the estimated number of delivered lines ( expressed
in thousands ) of code for project,
The ab and cb and the exponents
bb and db are given in the
table below.

Basic COCOMO
The basic model is extended to consider a set of "cost drivers attributes".
These attributes can be grouped together into four categories.
-
Product attributes
a) Required software reliability.
b) Complexity of the project.
c) Size of application database.
-
Hardware attributes
a) Run-time performance constraints.
b) Volatility of the virtual machine environment.
c) Required turnaround time.
d) Memory constraints.
-
Personnel attributes
a) Analyst capability.
b) Software engineer capability.
c) Virtual machine experience.
d) Application experience.
e) Programming language experience.
-
Project attributes
a) Application of software engineering methods.
b) Use of software tools.
c) Required development schedule.
Each of the 15 attributes is rated on a 6-point scale that ranges from "very
low" to "very high" in importance or value. Based on the rating,
an effort multiplier is determined from the tables given by Boehm. The product
of all multipliers results in an effort adjustment factor (EAF). Typical values
of EAF range from 0.9 to 1.4.
Example : Problem Statement same as LOC problem refer section 3.2.1
KLOC = 10.9
E = ab (KLOC)exp(bb)
= 2.4(10.9)exp(1.05)
= 29.5 person-month
D = Cb(E)exp(db)
= 2.5(29.5)exp(.38)
= 9.04 months
The intermediate COCOMO model takes the following form.
E = ai(LOC)exp(bi) X EAF
Where,
E is the effort applied in person-months,
LOC is the estimated number of delivered lines of code
for the project.
The coefficient ai and the exponent bi
are given in the table below.

Intermediate COCOMO
<< Previous
Page | Contents
| Next Page >>
|