School of Engineering.
School of Engineering.
Abstract— the term “economics” can be
broadly associated with efficient consumption & transfer of wealth in
resource-limited scenarios. Software economics is the branch of software
engineering that is mainly linked with economics of a software during its
complete life cycle. A software goes through many different phases during its
life cycle. In current competitive times, the financial resources and time is
usually limited in every phase of software’s life cycle. With the limited
resources the cost estimation models provide us with efficient methods of
software’s resource utilization. Software
cost estimation technique is an imperative part of software development
process. Software cost estimation models varies in types and are used based
upon their adaptability and utility on a certain project. This paper
summarizers the basic concepts and key points of Cost Constructive Model also
known as COCOMO.
SLOC(Source line of code); cost drivers ; style; styling; insert (key words)
One of the most important requirements for planning is
accurate estimate of resource required for completion of a project. In software
engineering, the two principles need to be estimated; labor input in man months
and development time for a project in months. Software cost estimations are
done prior to software developmental process. The software cost estimation
models is done so as to analyze and calculate the financial aspects of software
such as developmental costs, efforts, testing and maintenance. It is critical
for an organization not just to develop a software efficiently but also to sustain
it during its life cycle. These cost estimates are further used to forecast
other financial factors such as return on investment, maintenance costs and
thus inception and life-cycle of a software. The factors affecting software
cost can widely range from choice of software architecture to human factors.
COst MOdeling) is a procedural cost estimation model which was first
developed by Dr. Barry Boehm in 1981 and is put in practice to the date. COCOMO
presently has two iterative models. COCOMO-I describes the concepts for
scheduling and cost implications on a software solution. COCOMO-II is the
re-engineered model of the first one. It was a joint effort of University of
California and the COCOMO-II project affiliate organization. This model was developed
to remove all the deficiencies. COCOMO-II
can be altered to project’s particular process. Thus, giving us detailed
software cost estimation models. In brief, COCOMO models basically used input
from lines of codes (LOCs) as its inputs to calculate the output of effort
(persons’ programming hour) and duration. The effort and duration being direct
function of cost will in result give the final cost value.
COCOMO is a very famous software cost estimation model. Boehm
further classified this model into three sub categories. These categories are
selected on software length and complexity. There are three COCOMO models,
which are given as followed:
Organic level of design is used for small sized
developmental projects. The software requirements needs to be less rigid. This
model is a static single-valued calculation which helps us in computing the
cost and developmental effort from the input data of thousand lines of codes (KLOC).
This model consists of mathematical equations that calculate the software
development time, the effort and cost involved in the development plan. The two
basic equations used in COCOMO model are
Effort Applied (E) = ab(KLOC)bb Man Months;
Where KLOC= Kilo lines of code
Development Time (D) =
cb(Effort Applied)db Months
In the above given equations ab, bb, cb and db are
constant co-efficient. The values for these constants are given in Table 1. The
Organic model calculations are good for early and rough magnitude of cost
estimations. On the flipside, the accuracy of the calculations is limited as it
ignores some essential factors such as hardware constraints and personal
Coefficients value of three models
Intermediate or Semi-Detached model is used
for medium sized software developmental projects. The projects may have rigid
or less than rigid requirements. This model calculates the developmental effort
from the input of program size in thousands lines of codes (KLOC) and a set of
cost drivers. The cost drivers includes the subjective assessment of project, hardware,
personnel and project attributes. These cost drivers have a total of 15
attributes, which are mentioned in Table 2. The values of ai and bi for this
model are given in Table 3. The basic equations
used in this model is given as:
Effort Applied (E) = ai (KLOC) bi
* EAF Man
EAF stands for effort adjustment factor.
Development Time (D) = cb (E) Exp db
Size of application software
Complexity of product
Required software reliability
Runtime performance constraints
Required turnaround time
Volatility of virtual machine
Software engineer capabilities
Programming language experience
Virtual machine experience
Use of software tools
Required development schedule
Application of software Engineering methods
Table 2. Cost driving attributes
Table 3. Coefficient values of three models.
This model gives more accurate cost
estimations and can be almost applied to any software development project. On
the flipside, the estimation is difficult for a project with many components.
Advanced or Embedded is used in
large scale software development projects. This models mainly comes into role
when a project needs to be developed with very rigid software and hardware requirements.
For example, air traffic control system. This model calculates the
developmental effort from input of KLOC and all cost drivers with assessment of
impact of cost driver on each developmental step. This method implements cost
estimation techniques from embedded model at each component level and then at a
phase level, thus integrating the cost estimations from each level.
Transparency is a highly appreciated point for
COCOMO models. Unlike other software cost estimation techniques such as SLIM, the
functioning is visible and calculations easily understandable.
Inculcation of cost drivers helps in getting
better understanding of different factors that affects the project costs, thus
COCOMO is also used as industrial standard.
This models also supports various extensions.
Which increases its utility for many available purposes.
Finally, complete content and organizational editing
before formatting. Please take note of the following items when proofreading
spelling and grammar:
It is hard to measure KLOC at early phases of
Duration costing for small projects may not be
Most of the extensions are still experimental
and still needs to be calibrated.
product with many components can be difficult and tedious to calculate.
N. Merlo, “COCOMO (Constructive Cost Model)
Seminar on Software Cost Estimation”, 2002.
A. F. and S. Aljahdali, “Software Effort
Estimation Inspired by COCOMO and FP Models: A Fuzzy Logic
Approach”, International Journal of Advanced Computer Science and
Applications, vol. 4, no. 11, 2013.
B. Boehm, Software cost estimation with COCOMO
II. Upper Saddle River (N.J.): Prentice Hall, 2000.
R. Dillibabu and K. Krishnaiah, “Cost estimation
of a software product using COCOMO II.2000 model – a case study”, International
Journal of Project Management, vol. 23, no. 4, pp. 297-307, 2005.