Practical 12
Practical 12
Title: Estimate the cost of the project using COCOMO/COCOMO II approach for
the assigned project.
Theory:
COCOMO if a regression model based on lOC, that is number of lines of code. It is procedural cost
estimation model for software project and often used as a process of reliably predicting the various
parameters associated with making a project such as size ,effort, cost, time and quality. It was developed
by Barry Boehm.
Different models of COCOMO have been proposed to predict the cost estimation at different levels based
on the amount of accuracy and correctness required. All of these models applied to variety of projects,
Whose characteristics determine the value of constant to be used in subsequent calculations. This
characteristic pertaining to different system types are -
1) Organic –
software project is said to be an organic type if the team size required is adequately small, the
problem is well understood and has been solved in the past and also the team members have a
nominal experience regarding the problem.
2) Semi-detached:
A software project is said to be semi detached type if the vital characteristics such as team size,
experience, knowledge of the various programming environment lie in between that of organic and
embedded. The project classified as semi-detached are comparatively less familiar and difficult to
develop compared to organic ones and require more experience.
3)Embedded :
A software project with requiring the highest level of complexity ,creativity and experience requirement
fall under this category.
Types of models:
COCOMO consist of a hierarchy of three increasingly detailed and accurate forms. Any of the three
forms can be adopted according to our requirements.
Mode a B c d
Organic 2.4 1.05 2.5 0.38
Semi-detached 3.0 1.12 2.5 0.35
Embedded 3.6 1.20 2.5 0.32
Example:-
Suppose that a project was estimated to be 400 KLOC. Calculate the efforts
and time for each of three modes of development.
i) Organic :
Effort = a(KLOC)b person.month
= 2.4(400)1.05 pm
= 1295p.m
iii) Embedded :
Effort = a(KLOC)b person.month
= 3.6(400)1.20 pm
= 4772p.m
Use of cost driver- cost drivers adjust nominal cost of project for actual project environment .ie.
it is used for increasing accuracy of estimation.
15 cost drivers-
1) Product attributes –
a) Required software reliability (RELY)
b) Database size (DATA)
c) Product complexity (CPLX)
2) Computer attributes-
a) Execution time (TIME)
b) Main storage constraint (STOP)
c) Virtual machine volatility (VIRT)
d) Computer Turn Around Time(TURN)
3) Personal attributes-
a) Analyst capability (ACAP)
b) Application experience (AEXP)
c) Programmer capability (PCAP)
d) Virtual machine experience (VEXP)
e) Programming language experience (LEXP)
4) Project attributes –
a) Modern programming practices (MODP)
b) Use of software tools (TOOL)
c) Required development schedule (SCED)
2)Complex Attribute
TIME - - 1.00 1.11 1.3 1.66
STOR - - 1.00 1.06 1.2 1.56
VIRT - 0.87 1.00 1.15 1.30 -
TURN - 0.94 1.00 1.07 1.15 -
3)Personal Attribute
ACAP 1.46 1.19 1.00 0.86 0.71 -
AEXP 1.29 1.13 1.00 0.91 0.82 -
PCAP 1.42 1.17 1.00 0.86 0.70 -
VEXP 1.21 1.1 1.00 0.9 - -
LEXP 1.14 1.07 1.00 0.95 - -
4)Project Attribute
MODP 1.24 1.10 1.00 0.91 0.82 -
TOOL 1.24 1.10 1.00 0.91 0.83 -
SCED 1.23 1.08 1.00 1.04 1.10 -
Mode a b c D
Organic 3.2 1.05 2.5 0.38
Semi-detached 3.0 1.12 2.5 0.35
Embedded 2.8 1.20 2.5 0.32
Example: A new project with estimated 400 KLOC embedded system has to be developed.
Project manager has a choice of hiring from two pools of developer. With Very high Application
experience and with very little experience in programming language OR Developers of low
application experience but having lot of programming experience. Which is a better choice in
terms of two pools.?
case 1 :
LEXP = 1.4
AEXP= 0. 82
EAF= 0.82 *1.14= 0.984
Effort= 2.8(400)1.2 * 0.984
=3470
Development time= 2.5(3470)0.32
= 33 month
Case 2 :
LEXP=0.95
AEXP=1.13
EAF = 1.13* 0.95 =1.0735
Effort = 2.8(400)1.20 * 1.0735
=3985 pm
Mode and Code size Plan & System Detail Code & Integration
requirement Design Design Test Test
Life Cycle Phase value of µP(effort multiplier)
Organic Small S=2 0.06 0.16 0.26 0.42 0.16
Mode and Code size Plan & System Detail Code & Integration
requirement Design Design Test Test
Development time multiplier τp
Organic Small s=2 0.10 0.19 0.24 0.39 0.18
Effort = µP *Effort
Development Time = τp *development time
Example
Consider a project with following components –
1) Screen edit
3) File I/O
4) Cursor movement
5) Screen movement
The sizes for this are estimated to be 4K, 2K, 1K, 2K, 3K LOC.
1) Overall cost and scheduled estimate (assume values for cost drivers with
atleast three different form 1.0)
2) Cost and schedule estimates for different phases.