Documenti di Didattica
Documenti di Professioni
Documenti di Cultura
PROJECT
MANAGEMENT
International Journal of Project Management 23 (2005) 297–307
www.elsevier.com/locate/ijproman
Received 25 May 2004; received in revised form 25 June 2004; accepted 10 November 2004
Abstract
This paper discusses the estimation cost in terms of effort spent on a software product (project). COCOMO II.2000 Model has
been employed for estimating the effort of an embedded system project. This study has been made in a software services company,
which is involved in software development for an embedded system, client-server and Internet environment. The embedded systems
group is involved in developing software for major car manufacturers. This study is based on a sample of ten projects, of which eight
are development projects and two are porting projects. The actual effort on the projects has been collected from the metrics database
of the company. The Lines of code for the various projects have been enumerated using ‘‘Code Count’’ tool to achieve the logical
source lines of code for each project. The standard questionnaire has been used to collect the required data to arrive at the various
scale factors and effort multipliers. The calibration of the COCOMO (Constructive Cost Model) has been done through Natural
Log approach and curve fitting approach. Statistical tools like MS-EXCEL 2000, SPSSv10, Curve Expert 1.3 and data fit have been
used for this purpose. The study shows that the curve fitting approach yields better estimates of the model parameters. The calibra-
tion of COCOMO Model helps the company estimate the effort that is to be spent on the software development projects.
Ó 2004 Elsevier Ltd and IPMA. All rights reserved.
*
Corresponding author. Tel.: +91 44 22203187. As software industry is very competitive, it is indis-
E-mail address: prdillibabu@rediffmail.com (R. Dillibabu). pensable, to establish the market with the right pricing.
This makes software cost estimation as one of the very Based on these observations, the following objectives
important issues in the software development process. are listed:
For a software project, estimation comprises size, effort,
and schedule estimate. Size estimate is the measure of 1. To study the COCOMO model and its increments.
the size of the final work product. It gives a measure 2. To come up with suitable estimates for the scale driv-
of the ground to be covered in order to achieve the ers and effort multipliers for the COCMO II.2000
end result. Effort estimate is the effort, in person- model using data from industries.
months, to produce the work product. Schedule estimate 3. To fit COCOMO II.2000 Model for practical data in
is the calendar time it would take to accomplish the ef- a software company.
fort, taking into account the resource constraints of an 4. To evaluate the model using ConteÕs criteria [5].
organization and the extent of parallelism that can be
derived. Eventually, both the customer and the organi-
sation are interested in the cost of the project in its dol-
lar value. Cost estimate [18] in dollar value is given by 2. Literature
Cost estimate ¼ No: of person months
From literature it was found that the following pa-
Cost per person-months of effortð$Þ: pers are more relevant for software cost estimation.
‘‘Software cost estimation’’ by Danfeng Hang [6] and
The size, effort and schedule estimates get translated ‘‘Estimating software cost’’ by Lawrence H Putnam
into cost estimates. The purpose of going through the and Ann Fitzsimmons [17]. The authors have reviewed
size, effort and schedule estimates is to analyse factors the literature and presented the major software cost esti-
that contribute to the overall software development cost mation models with their strengths and weaknesses. The
in the final dollar value of the estimate. abstract from these two papers has been presented in
Table 1.
1.2. Software cost estimation in embedded system The following conclusions can be drawn from the re-
view of literature:
This paper discusses the software cost estimation in
terms of effort spent for the embedded systems group (i) None of the alternatives is better than the others in
of a company. Initially the existing system for software all aspects.
cost estimation has been studied and the following (ii) The Parkinson and Price-to-win methods are not
observations are made: widely accepted and do not produce satisfactory
cost estimates.
(i) The projects in the embedded system group are of (iii) The strength and weakness of other techniques are
short duration. complementary (particularly the algorithmic model
(ii) The projects are up to 4K in size. versus expert judgment and top-down versus bot-
(iii) More number of completed projects is available for tom-up).
the study.
(iv) The waterfall model has been used in these projects. Since most of the researchers have used the algorith-
(v) The present effort (cost) estimation procedure lacks mic model, it has been selected for applying in this
scientific approach. study. Algorithmic models are the most formal amongst
Table 1
Abstract from review papers on software cost estimation models
Models and authors Strengths Weakness
1. Algorithmic Model, Putnam [23] Objective, repeatable, analogy formula, Subjective inputs, calibrated to past, not the future &
efficient, good for sensitivity analysis & assessment of exceptional circumstances
objectively calibrated to experience
2. Expert Judgment Delphi Techniques [12] Assessment of representativeness, No better than participants, biases & incomplete recall
interactions, exceptional circumstances
3. Analogy Norden, Peter [16] Based on representative experience Representativeness of experience
4. Parkinson, Parkinson [17] Correlates to some experience Reinforces poor practice
5. Price-to-win, Boehm [4] Often gets the contract Generally produces large overruns
6. Top-down, Albrecht and Gaffney [1] System level focus and efficient Less detailed basis. Fewer stables
7. Bottom-up, Albrecht and Gaffney [1] More detailed basis and more stable May overlook system level cost & requires more effort
8. Dynamic Modeling, Putnam [23] More detailed basis More time and data required for validating &
developing a model
R. Dillibabu, K. Krishnaiah / International Journal of Project Management 23 (2005) 297–307 299
the various techniques. Fenton and Pfleeger [8] describes (i) System Software Sizing (SSS).
two types of algorithmic model: (ii) Business Application Software Sizing (BASS).
(a) Cost Models: These models provide direct estimates Depending on the nature of the project, i.e., a sys-
of effort. Most cost models are based on empirical tems project or a business application project, the rel-
data reflecting factors that contribute to the overall evant model is chosen for the purpose of estimation.
cost. Often, they have a primary cost factor such as The function points are counted based on the stan-
size and a number of secondary adjustment factors dardized template for SSS/BASS. The factors that
or cost drivers. influence the general system characteristics are consid-
(b) Constraint Models: Constraint models demonstrate ered to arrive at adjusted function points. This forms
the relationship over time between two or more the basis for arriving at the suitable effort estimate.
parameters of effort, duration or staffing levels. The process adopted is as proposed by the Interna-
The Rayleigh curve [14] is used as a constraint in tional Function Point Users Group (IFPUG [10])
several commercial proprietary models like Put- for BASS and is a variant of the IFPUG process
namÕs SLIM [17] and RCA Price-S [13]. Sufficient for SSS. The WBS for the project is designed simul-
material is not available for evaluating these taneously once the RFPÕs and scope change docu-
models. ments are finalized. An estimate of effort based on
the WBS is made, which is then crosschecked with
the function point [7] based estimate. The estimation
2.1. Function points group does this review, which also gives correction
factors to the assumptions made. The estimate is
(i) Function point [7] counts do not depend on the finalized once the corrections are made to the
source languages used. It can be obtained early in assumptions, in which a revised WBS is designed.
the development cycle. This revised WBS forms the basis for the scheduling
(ii) Function Point counts are oriented toward the cus- and phase wise breakdown of effort. These details
tomerÕs view rather than the producerÕs view, this go into schedule document and the project proposal.
emphasis the focus on value received, rather than Once the proposal is accepted, the project managerÕs
on the particular design that is employed. workbook and the SQA workbook become active.
(iii) Function point counts are not equally applicable to These are updated as and when each phase or module
all kinds of software. Although effective in business is completed.
environments, they have not enjoyed widespread
success in embedded systems or heavily computa-
tional applications. 3.1. Weakness in the current estimation process
4. The COCOMO II.2000 model tent measures across different programming languages.
In COCOMO II, the logical source statement has been
The model is defined in terms of scale factors (SFj) chosen as standard line of code.
and effort multipliers (EMi), which are used for estimat-
ing effort (cost) that is required to develop software pro-
ject. The response obtained from Project Managers 4.3. Effort estimation
through a standard questionnaire is made use of for esti-
mating the parameters of the model. The COCOMO II effort estimation model is shown in
Eq. (1). This model is used for both the Early Design
4.1. Overview of the COCOMO II.2000 model and Post-Architecture cost models to estimate effort
for the Waterfall lifecycle models. The inputs are the
The Constructive Cost Model (COCOMO II [2]) for Size of software development, a constant ÔAÕ, an expo-
cost estimation is based on three major stages of any nent ÔEÕ, and a number of values called effort multipliers
development project. It acknowledges the fact that the (EM). The number of effort multipliers depends on the
lines of code are impossible to know early in the devel- model
opment cycle. In stage I, the project usually builds pro-
totypes to resolve high-risk issues that involve user PMns ¼ A SizeE Pni¼1 EMi ;
interfaces, software and system interaction, perfor- where ns ¼ nominal schedule & A ¼ 2:94
mance, or technical maturity. In this stage, COCOMO
II estimates size using object points. This technique cap- ðfor COCOMO II:2000Þ: ð1Þ
tures size in terms of high-level effort, generates such as
number of server data tables, number of client data ta- The constant, ÔAÕ, approximates a productivity constant
bles and the percentage of screens and reports reused in PM/KSLOC for the case where PM = Person Months
from previous projects. & E = 1.0 Productivity changes as ÔEÕ increases because
In stage 2, COCOMO II employs function points as a of the non-linear efforts on size. The constant ÔAÕ is ini-
size measure. Function Points estimate the functionality tially set when the model is calibrated to the project
captured in the requirements, thereby offering a richer database reflecting a global productivity average. The
system description than object points. By stage 3, devel- COCOMO model should be calibrated to local data,
opment would have begun and more information would which then reflects the local productivity and improves
be made available. Sizing is done in terms of lines of the modelÕs accuracy.
code and many cost factors can be estimated with some
degree of comfort.
4.4. Scale drivers
4.2. Sizing and counting source lines of code (SLOC)
The scale drivers in the exponent, E, are used only at
A good size estimate is very important for any good the project level. The exponent E in Eq. (2) is an aggre-
model estimation. COCOMO II model uses size data gation of five scale drivers that account for the relative
that influences effort, i.e., new code and code that is re- economies or diseconomies of scale encountered for
used and modified. All the projects analyzed in this software projects of different sizes. Software projects
study are considered to have new code, since the projects generally exhibit diseconomies of scale because of two
have very negligible or no reused code. main factors:
For new and reused code, a method is used to
make them equivalent so that they can be rolled up 1. Growth of interpersonal communication overhead.
into an aggregate size estimate. The baseline size in 2. Growth of large-system integration overhead.
COCOMO II is a count of new lines of code. The
adjustment takes into account the amount of design, Eq. (2) defines the exponent, E, used in Eq. (1).
code and testing that has to be changed. It also con- Each scale driver has a range of rating levels, from
siders the understandability of the code and the pro- very low to extra high. Each rating level has a weight.
grammer familiarity with the code. Code size is The specific value of the weight is called a scale factor
expressed in thousands of source lines of code (SF). The projectÕs scale factors, the selected scale dri-
(KSLOC). The goal is to measure the amount of intel- ver ratings, are summed and used to determine a scale
lectual work that is put into program development. exponent, E
Defining a line of code is difficult because of concep-
tual differences involved in accounting for executable X
E ¼ B þ 0:01 SFj ;
statements and data declarations in different lan-
guages. Difficulties arise while trying to define consis- where B ¼ 0:91 ðfor COCOMO II:2000Þ: ð2Þ
R. Dillibabu, K. Krishnaiah / International Journal of Project Management 23 (2005) 297–307 301
5. Methodology, fitting and calibration to the local ibrated and uncalibrated model. This will be achieved
environment using Eqs. (7)–(11).
5.1. Methodology
5.5. ConteÕs criteria
To achieve the objectives proposed, the following
methodology is proposed. The COCOMO II software Here the Magnitude of Relative Error (MRE) is com-
cost and schedule model will be used to estimate the effort puted (degree of estimating error in an individual esti-
of projects. These estimates will then be compared with mate) for each data point. This step is a precedent to
actual values of effort. The results will be analysed to the next step and is also used to calculate PRED (e).
determine the overall effectiveness of the model. To aid An MRE of 25% or less indicates satisfactory results
in understanding the process, the step-by-step description MRE ¼ jðEstimate ActualÞ=Actualj: ð7Þ
of the proposed calibration of the model is described.
Calculate the mean magnitude of relative error (average
5.2. Model calibration by natural log approach degree of estimating error in a data set) for each data
set. According to Conte, the MMRE should also have
COCOMO II will be calibrated using the COCOMO a value of 25% or less
Equation (Eq. (3)). The number of data points consid- MMRE ¼ ðRMREÞ=n; ð8Þ
ered is ten. In this approach, only the multiplicative cal-
ibration variable ‘‘A’’ will be calibrated where n = total number of estimates.
Calculate the root mean square (ModelÕs ability to
PMns ¼ A SizeE Pni¼1 Emi accurately forecast the individual actual effort) for each
X
s
data set. This step is a precedent to the next step only.
where E ¼ B þ 0:01 SFj : ð3Þ
Again, satisfactory results are indicated by a value of
j¼1
25% or less
2 0:5
5.3. Analysis by curve fitting RMS ¼ ½1=n RðEstimate ActualÞ : ð9Þ
Calculate the relative root mean square (modelÕs abil-
Most software cost models can be abstracted into a ity to accurately forecast the average actual effort) for
function of five basic parameters: size, process, person- each data set. According to Conte, the RRMS should
nel, environment and required quality [19]. The relation have a value of 25% or less
among these parameters and the estimate effort can be
RRMS ¼ RMS=½RðActualÞ=n: ð10Þ
written as follows:
A model should also be within 25% accuracy, 75% of the
Effort ¼ ðPersonnelÞðEnvironmentÞðQualityÞSizeðprocessÞ : time. To find this accuracy rate PRED (e), divide the to-
ð4Þ tal number of points within a data set that has an
Eq. (4) describes a power equation of the form MRE = 0.25 or less (represented by n). The equation
then is
Y ¼ L XM; ð5Þ
PRED ðeÞ ¼ k=n; ð11Þ
where Y = effort, X = size and L and M are constants.
where e equals 0.25.
When compared with the COCOMO II.2000 model
This methodology seems to be sound since it is based
equation (Eq. (3)), we arrive at the following:
on proven and accepted mathematical and statistical
X X
L¼A EMi and M ¼ B þ 0:01 SFj : ð6Þ analysis.
By fitting a power curve between the Logical SLOC 5.6. Fitting of the COCOMO model
and the Actual Effort, by using Eqs. (5) and (6), a bet-
ter calibrated COCOMO II model can be arrived at. The following steps are used in fitting the model to
These values of ÔAÕ and ÔBÕ will help in analysing the the practical data applicable for a software service
software development process in the company in a company:
better manner.
1. Mining and normalizing of project data from the pro-
5.4. Validation of methodology ject database.
2. Counting the lines of code.
The validation of the above analysis is done using 3. Arriving at values for scale factors and effort
ConteÕs Criteria [5], to determine the accuracy of the cal- multipliers.
302 R. Dillibabu, K. Krishnaiah / International Journal of Project Management 23 (2005) 297–307
Table 3
Scale factors
Project name Project type PRECa FLEXb RESLc TEAMd PMATe
PROJ1 Development 2.48 4.05 5.65 3.29 1.56
PROJ2 Development 2.48 4.05 2.83 1.10 3.12
PROJ3 Development 2.48 4.05 5.65 3.29 1.56
PROJ4 Development 2.48 4.05 5.65 3.29 1.56
PROJ5 Development 2.48 4.05 5.65 3.29 1.56
PROJ6 Development 2.48 4.05 5.65 3.29 1.56
PROJ7 Development 2.48 4.05 5.65 3.29 1.56
PROJ8 Development 2.48 4.05 2.83 2.19 1.56
PROJ9 Porting 4.96 5.07 2.83 0.00 3.12
PROJ10 Porting 0.00 5.07 2.83 2.19 7.8
a
Precedentedness.
b
Development flexibility.
c
Architecture/risk resolution.
d
Team.
e
SW-CMM level 1–5.
Table 4
Effort multipliers (product and platform factors)
RELYa DATAb CPLXc RUSEd DOCUe TIMEf STORg PVOLh
0.82 0.90 0.87 1.00 1.00 1.11 1.00 0.87
1.00 0.90 0.87 1.00 1.00 1.11 1.05 0.87
0.82 0.90 0.87 1.00 1.00 1.11 1.00 0.87
0.82 0.90 0.87 1.00 1.00 1.11 1.00 0.87
0.82 0.90 0.87 1.00 1.00 1.11 1.00 0.87
0.82 0.90 0.87 1.00 1.00 1.11 1.00 0.87
0.82 0.90 0.87 1.00 1.00 1.11 1.00 0.87
1.00 1.00 0.87 1.15 1.00 1.63 1.00 0.87
0.92 0.90 1.74 1.24 1.00 1.63 1.00 0.87
0.82 0.90 1.74 0.95 1.00 1.00 1.00 0.87
a
Required software reliability.
b
Database size.
c
Product complexity.
d
Developed for reusability.
e
Documentation match to life-cycle needs.
f
Execution time constraint.
g
Major storage constraint.
h
Platform volatility.
son-hours. But the company evaluates one person- 5.11.2. Curve fitting approach
month as 176 person-hours (8 h/day * 22 days/month). Another approach adopted for the calibration of the
The simplest way to account for these variations is to constants is the curve fitting method. Power curves are
calibrate the multiplicative constants, A and B. fitted with the help of the following statistical tools using
First, the calibration is done using the Natural Log Eqs. (13) and (14):
Approach as described by Boehm et al. [4]. This is done
on the multiplicative constant ÔAÕ using data from com- Excel 2000 from Microsoft.
pleted projects. The authors of the model have recom- SPSS v10 from SPSS Corporation.
mended at least 5 data point for the calibration of the Datafit 8.0 from Oakdale Engineering.
constant ÔAÕ where as here data from 8 projects have Curve Expert 1.3.
been used (Table 7). Shows the outcome of this exercise.
The value of the multiplicative constant ÔAÕ is obtained It is found that the curve fit given by Excel and SPSS
from Table 7. Its value is 2.79. The estimated effort for explains the dependency of actual effort on the LOC to
the 8 projects is shown in Table 8. the extent of 43%. The other statistical tools have given
304 R. Dillibabu, K. Krishnaiah / International Journal of Project Management 23 (2005) 297–307
Table 5
Effort multipliers (personnel and product factors)
ACAPa PCAPb PCONc APEXd LTEXe PLEXf TOOLg SITEh SCEDi
0.85 0.88 1.29 1.00 1.00 1.09 1.17 0.86 1.00
0.71 0.76 1.00 0.88 0.91 1.00 0.90 1.00 1.43
0.85 0.88 1.29 1.00 1.00 1.09 1.17 0.86 1.00
0.85 0.88 1.29 1.00 1.00 1.09 1.17 0.86 1.00
0.85 0.88 1.29 1.00 1.00 1.09 1.17 0.86 1.00
0.85 0.88 1.29 1.00 1.00 1.09 1.17 0.86 1.00
0.85 0.88 1.29 1.00 1.00 1.09 1.17 0.86 1.00
0.85 0.88 1.00 1.00 1.00 1.00 0.90 1.00 1.00
0.71 0.76 1.00 0.88 0.84 0.91 0.78 1.09 1.43
1.00 0.88 1.00 1.00 1.00 1.00 1.17 0.86 1.14
a
Analyst capability.
b
Programmer capability.
c
Personnel continuity.
d
Applications experience.
e
Language and tool experience.
f
Platform experience.
g
Use of software tools.
h
Multi-site development.
i
Required development schedule.
Table 6
Effort estimation with original COCOMO Equation
Project name Project type KLOC Actual effort Actual effort (PM) COCOMO effort (PM)
PROJ1 Development 12.58 249.56 11.34375 12.37
PROJ2 Development 13.324 324.03 14.728693 33.79
PROJ3 Development 5.286 144.50 6.5713636 13.12
PROJ4 Development 31.03 466.50 21.204545 5.11
PROJ5 Development 10.902 466.22 21.191761 31.07
PROJ6 Development 7.749 476.15 21.643239 10.69
PROJ7 Development 5.58 45.00 2.0454545 7.55
PROJ8 Development 7.223 77.94 3.5426136 5.18
PROJ9 Porting 33.568 762.73 34.669318 7.29
PROJ10 Porting 38.861 208.63 9.4829545 36.19
Table 7
Calibration using the natural log approach
Project name Project type PMActual KSLOC Unadjusted estimate Ln(PMActual) Ln(UE) Ln(Diff)
PROJ1 Development 249.56 12.58 757.37 5.52 6.63 1.11
PROJ2 Development 324.03 13.32 805.87 5.78 6.69 0.91
PROJ3 Development 144.57 5.286 296.84 4.97 5.70 0.72
PROJ4 Development 466.50 31.03 2008.61 6.15 7.61 1.46
PROJ5 Development 466.22 10.902 648.85 6.14 6.48 0.33
PROJ6 Development 476.15 7.749 448.72 6.17 6.11 0.06
PROJ7 Development 45.00 5.58 314.71 3.81 5.75 1.94
PROJ8 Development 77.94 7.223 415.91 4.36 6.03 1.67
Average = 1.03
Effort = 2.79
an equation with the coefficient of determination as ware development activity shows diseconomy of
36%. And the error between the estimated effort and scale, when a relation is considered between the soft-
the actual effort is same for both the equations. Table ware size and development effort [19]. The equation
9. Shows the resulted equations. arrived at by the tools Data fit and Curve Expert
shows economies of scale, whereas the equation given
5.12. Validation of the calibrated models by Excel and SPSS shows diseconomies of scale.
Hence, the equation given by Excel and SPSS (Eq.
Tables 10 and 11 shows the effort estimation using (12)) is taken as the outcome of the curve fitting
the Eqs. (13) and (14). Studies have shown that soft- approach.
R. Dillibabu, K. Krishnaiah / International Journal of Project Management 23 (2005) 297–307 305
Table 8
Effort estimation using the natural log approach
Project name Actual effort COCOMO effort MRE MMRE RMS RRMS Pred(0.25)
PROJ1 249.56 834.65 2.34 2.34 585.09 2.34 0
PROJ2 324.03 888.10 1.74 2.04 574.63 2.00 0
PROJ3 144.57 327.13 1.26 1.78 480.91 2.00 0
PROJ4 466.50 2213.57 3.75 2.27 967.74 3.27 0
PROJ5 466.22 715.05 0.53 1.92 872.70 2.64 0
PROJ6 476.15 494.51 0.04 1.61 796.70 2.25 0.10
PROJ7 45.00 346.82 6.71 2.34 746.37 2.41 0.10
PROJ8 77.94 458.35 4.88 2.66 711.00 2.53 0.10
Table 10
Effort estimation using the curve fitted equation (Eq. (13))
Project name Actual effort PM COCOMO effort MRE Eq. (13) MMRE RMS RRMS Pred(0.25) Pred(0.5)
PROJ1 11.34 12.37 0.09 0.09 1.03 0.09 0.13 0.13
PROJ2 14.73 13.12 0.11 0.10 0.41 0.03 0.30 0.30
PROJ3 6.57 5.11 0.22 0.14 1.18 0.11 0.38 0.38
PROJ4 21.20 31.07 0.47 0.22 3.92 0.29 0.38 0.50
PROJ5 21.19 10.69 0.50 0.28 1.19 0.08 0.38 0.63
PROJ6 21.64 7.55 0.65 0.34 6.84 0.42 0.38 0.63
PROJ7 2.05 5.18 1.53 0.51 5.15 0.36 0.38 0.63
PROJ8 3.54 7.03 0.98 0.57 3.58 0.20 0.38 0.63
Table 11
Effort estimation using the curve fitted equation (Eq. (14))
Project name Actual effort PM COCOMO effort MRE Eq. (14) MMRE RMS RRMS Pred(0.25) Pred(0.5)
PROJ1 11.34 14.01 0.23 0.23 2.67 0.24 0.13 0.13
PROJ2 14.73 14.45 0.02 0.13 1.69 0.13 0.30 0.30
PROJ3 6.57 8.74 0.33 0.19 2.63 0.24 0.38 0.38
PROJ4 21.20 22.88 0.08 0.17 3.12 0.23 0.38 0.50
PROJ5 21.19 12.96 0.39 0.21 0.89 0.06 0.38 0.63
PROJ6 21.64 10.76 0.50 0.26 5.17 0.32 0.38 0.63
PROJ7 2.05 8.64 3.22 0.68 2.30 0.16 0.38 0.63
PROJ8 3.54 10.36 1.92 0.84 0.30 0.03 0.38 0.63
306 R. Dillibabu, K. Krishnaiah / International Journal of Project Management 23 (2005) 297–307
and for various types of projects like porting projects, is recommended that the company may apply the pop-
maintenance projects, etc. ular and well-known model, COCOMO II.2000, for
the purpose of effort estimation. It would be particu-
larly helpful to the company to have a better idea
6. Conclusions and recommendations about the actual effort spent in developing software.
This would, in turn, form the basis for further process
6.1. Conclusions improvement initiatives in the organization. The fol-
lowing initiatives have been recommended to the
The project data from the project database in the company:
company are studied and the COCOMO Model applied
to the past data. It is then calibrated using two 1. Recording of the actual effort spent on the software
approaches: development should be done in a systematic manner,
where, even if a programmer works overtime and/or
Natural log approach. weekends, it would be duly recorded.
Curve fitting approach. 2. The use of Code Count tool for the purpose of count-
ing the Logical SLOC is recommended if the organi-
Calibrating with these approaches and analyzing the zation uses COCOMO II.2000 model.
outcome has resulted the following conclusions: 3. The scale factors and effort multipliers that form a
part of the COCOMO Equation should be used as
1. The calibrated COCOMO Equation for which the a benchmark or baseline for process improvement
error is the least is obtained by the curve fitting initiatives.
approach (Eq. (13)). The equation is 4. The present method of arriving at Scale Factors and
Effort Multipliers through the process of question-
Effort ¼ 0:933Size1:0197 : ð14Þ naire should be done away with and the rating scales
This equation has a coefficient of determination (R2) va- for the various scale and cost drivers must be equated
lue of 43%. to the similar metrics that are in use. This will reduce
2. The scale factors, effort multipliers and the multipli- the bias in the evaluation of the various factors by the
cative constants ÔAÕ and ÔBÕ, are estimated using curve project managers. For example, the existing processes
fitting approach, based on the average of the for employee evaluation can be linked to the rating
responses from the Project Managers. These are: scale of Analyst Capability and ProgrammerÕs
X X Capability.
I SFj ¼ 16:27 I EMi ¼ 16:893
IA ¼ 0:056 IB ¼ 0:857:
6.3. Scope for future work
3. The value of the multiplicative constant ÔAÕ arrived at
by Eq. (4) is 0.056, which is very low. This implies 1. This case study is based on a database of 10
that there might be some other factors that have an projects only. Even though these projects represent
impact on the actual software development effort. the nature of the software being developed, the accu-
This aspect requires more study. racy of the multiplicative constant ÔAÕ can be
4. The model has been validated using ConteÕs Criteria increased by considering all the projects in the com-
and observed the following: panyÕs database.
(a) Of the three criteria, this model satisfies only one 2. The factors, which affect the development effort and
criterion, viz., the RRMS for which the error is less cost apart from the factors listed by the COCOMO
than 0.25. model, can be studied and accounted for to arrive
(b) It fails on the other two criteria. at more accurate estimates.
This is to be expected for a company going in for such a
model-based approach for the first time. The project met-
rics data being collected presently is not sufficient for the
purpose of effort estimation. Fine-tuning of the project
References
metrics data should be carried out so as to make the CO-
COMO effort equation satisfy the ConteÕs Criteria. [1] Albrecht AJ, Gaffney JE. Software function, source lines of codes,
and development effort prediction: a software science validation.
IEEE Trans Software Eng 1983;SE-9:639–48.
6.2. Recommendations
[2] Bernheisel Wayne A. Calibration and validation of the
COCOMO II cost/schedule estimating model to the space and
The company is presently not using any model- missile systems centre database. Master thesis, Ohio, Air Force
based approach for arriving at an effort estimate. It Institute of Technology; 1997.
R. Dillibabu, K. Krishnaiah / International Journal of Project Management 23 (2005) 297–307 307
[3] Boehm BW, Abts C, Clark B, Devnani-Chulani S. COCOMO II [12] Parkinson GN. ParkinsonÕs law and other studies in administra-
model definition manual, The University of Southern California; tion. Boston: Haughton-Miffin; 1957.
1997. [13] Park R. The Central Equations of the PRICE software cost
[4] Boehm BW et al.. Software cost estimation using COCOMO II. model. 4th COCOMO UsersÕ Group Meeting, November;
1st ed. Englewood Cliffs, NJ: Prentice-Hall; 2000. 1988.
[5] Conte SD, Dunsmore HE, Shen VY. Software engineering metrics [14] Parr NA. An alternative to the raleigh curve model for software
and models. California: Benjamin Cummings; 1986. development effort. IEEE Software Eng 1980(May).
[6] Danfeng Hong. Software cost estimation. Department of Com- [15] Peeters David, Dewey Gerorge. Reducing bias in software project
puter Science, University of Calgary. Available from: http:// estimates. Crosstalk – J Defense Software Eng 2000.
pages.cpsc.ucalgary.ca/~hangd/SENG/621/report.html. [16] Putnam LH. A general empirical solution to the macro software
[7] David Longstreet. Function Point Analysis Training Course; sizing and solution to the macro software sizing and estimating
2002. Available from: http://www.softwaremetrics.com/fpafund. problem. IEEE Trans Software Eng 1978;4(4):345–61.
htm. [17] Putnam LH, Ann Fitzsimmons. Estimating software cost, Dat-
[8] Fenton NE, Pfleeger SL. Software metrics: a rigorous and amation; 1979.
practical approach. PWS Publishing Company; 1997. [18] Ramesh Gopalaswamy. Managing global software projects. 1st
[9] Hughes RT. Expert judgement as an estimating method. Inform ed. New Delhi: Tata McGraw Hill; 2001. p. 226-7.
Software Technol 1996;38(2):67–75. [19] Royce W. Software project mangement: a unified frame-
[10] IFPUG Counting Practices Committee, Function Point Counting work. Reading, MA: Addison Wesley; 1998.
Practices Manual. Release 4.1; 1999. Available from: http:// [20] Terdiman R, Datar R, Chohan S. Emerging offshore trends: a
www.carfield.com.hk/document/software.engine/fpa.pdt. view from India. Markets – Gartner Report M-15-1087; 2001.
[11] Norden Peter V. Curve fitting for a model of applied research and [21] Available from: http://sunset.usc.edu/reserch/CODECOUNT/
development scheduling. IBM J Res Develop 1958;2(3). instructions.html.