0% found this document useful (0 votes)
198 views4 pages

Estimation of Project Metrics

The document discusses methods for estimating project metrics like size, cost, duration and effort for software projects. It describes the COCOMO model which estimates these parameters in three stages - basic, intermediate and complete COCOMO. The basic model uses project size to estimate effort and time required. The intermediate model considers additional cost drivers or factors. The complete model treats large projects as combinations of subsystems for more accurate estimates.

Uploaded by

Dhanush Reddy
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
198 views4 pages

Estimation of Project Metrics

The document discusses methods for estimating project metrics like size, cost, duration and effort for software projects. It describes the COCOMO model which estimates these parameters in three stages - basic, intermediate and complete COCOMO. The basic model uses project size to estimate effort and time required. The intermediate model considers additional cost drivers or factors. The complete model treats large projects as combinations of subsystems for more accurate estimates.

Uploaded by

Dhanush Reddy
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
You are on page 1/ 4

Estimation of Project Metrics

Project Estimation Techniques


A software project is not just about writing a few hundred lines of source code to achieve a
particular objective. The scope of a software project is comparatively quite large, and such a
project could take several years to complete. However, the phrase "quite large" could only
give some (possibly vague) qualitative information. As in any other science and engineering
discipline, one would be interested to measure how complex a project is. One of the major
activities of the project planning phase, therefore, is to estimate various project parameters
in order to take proper decisions. Some important project parameters that are estimated
include:

Project size: What would be the size of the code written say, in number of lines, files,
modules?
Cost: How much would it cost to develop a software? A software may be just pieces of code,
but one has to pay to the managers, developers, and other project personnel.
Duration: How long would it be before the software is delivered to the clients?
Effort: How much effort from the team members would be required to create the software?
In this experiment we will focus on two methods for estimating project metrics: COCOMO
and Halstead's method.

COCOMO
COCOMO (Constructive Cost Model) was proposed by Boehm. According to him, there could
be three categories of software projects: organic, semidetached, and embedded. The
classification is done considering the characteristics of the software, the development team
and environment. These product classes typically correspond to application, utility and
system programs, respectively. Data processing programs could be considered as
application programs. Compilers, linkers, are examples of utility programs. Operating
systems, real-time system programs are examples of system programs. One could easily
apprehend that it would take much more time and effort to develop an OS than an
attendance management system.

The concept of organic, semidetached, and embedded systems are described below.

Organic: A development project is said to be of organic type, if


The project deals with developing a well understood application
The development team is small
The team members have prior experience in working with similar types of projects
Semidetached: A development project can be categorized as semidetached type, if
The team consists of some experienced as well as inexperienced staff
Team members may have some experience on the type of system to be developed
Embedded: Embedded type of development project are those, which
Aims to develop a software strongly related to machine hardware
Team size is usually large
Boehm suggested that estimation of project parameters should be done through three
stages: Basic COCOMO, Intermediate COCOMO, and Complete COCOMO.

Basic COCOMO Model


The basic COCOMO model helps to obtain a rough estimate of the project parameters. It
estimates effort and time required for development in the following way:
Effort = a * (KDSI)b PM
Tdev = 2.5 * (Effort)c Months
where

KDSI is the estimated size of the software expressed in Kilo Delivered Source Instructions
a, b, c are constants determined by the category of software project
Effort denotes the total effort required for the software development, expressed in person
months (PMs)
Tdev denotes the estimated time required to develop the software (expressed in months)
The value of the constants a, b, c are given below:
Intermediate COCOMO Model
The basic COCOMO model considers that effort and development time depends only on the
size of the software. However, in real life there are many other project parameters that
influence the development process. The intermediate COCOMO take those other factors
into consideration by defining a set of 15 cost drivers (multipliers) as shown in the table
below [i]. Thus, any project that makes use of modern programming practices would have
lower estimates in terms of effort and cost. Each of the 15 such attributes can be rated on a
six-point scale ranging from "very low" to "extra high" in their relative order of importance.
Each attribute has an effort multiplier fixed as per the rating. The product of effort
multipliers of all the 15 attributes gives the Effort Adjustment Factor (EAF).

EAF is used to refine the estimates obtained by basic COCOMO as follows:


Effort|corrected = Effort * EAF
Tdev|corrected = 2.5 * (Effort| corrected) c

Complete COCOMO Model


Both the basic and intermediate COCOMO models consider a software to be a single
homogeneous entity -- an assumption, which is rarely true. In fact, many real life
applications are made up of several smaller sub-systems. (One might not even develop all
the sub-systems -- just use the available services). The complete COCOMO model takes
these factors into account to provide a far more accurate estimate of project metrics.

To illustrate this, consider a very popular distributed application: the ticket booking system
of the Indian Railways. There are computerized ticket counters in most of the railway
stations of our country. Tickets can be booked / cancelled from any such counter.
Reservations for future tickets, cancellation of reserved tickets could also be performed. On
a high level, the ticket booking system has three main components:

Database
Graphical User Interface (GUI)
Networking facilities
Among these, development of the GUI is considered as an organic project type; the
database module could be considered as a semi-detached software. The networking module
can be considered as an embedded software. To obtain a realistic cost, one should estimate
the costs for each component separately, and then add it up.

You might also like