Download as docx, pdf, or txt
Download as docx, pdf, or txt
You are on page 1of 3

SOFTWARE EFFORT ESTIMATION :

Introduction
Software maintenance is an important activity in software engineering. Software cost
estimation plays an important role in software engineering practice, often determining the
success or failure of contract negotiation and project execution. Cost estimations deliverables,
such as effort, schedule, and staff requirements are valuable pieces of information for project
formation and execution. They are used as key inputs for project bidding and proposal, budget
and staff allocation, project planning, progress monitoring and control, etc. Unreasonable and
unreliable estimates are a major cause of project failure. Recognizing the importance of software
estimation, the software engineering community has put tremendous effort into developing
models in order to help estimators 2 generate accurate cost estimates for software projects. In the
last three decades, many software estimation models and methods have been proposed and used,
such as COCOMO, SLIM, SEER-SEM, and COSMIC-FP.
The COSMIC method is used for measuring the functional points in the software. The
COSMIC method is an internationally standardized method (ISO 19761) for measuring a
size of the functional requirements of most software domains, including business
application software, real-time software, infrastructure software and some types of
scientific/engineering software.
The COSMIC method is now very widely used around the world, in all the domains for
which it was designed, for purposes such as the measurement of sizes in software contracts, and
is successfully applied for project performance measurement, benchmarking and estimating.
Hence COSMIC FP is used to measure the size of the software. The effort and manpower
needed for the project are calculated based on the size of the project.
Literature Review:
COSMIC-FPM:
The COSMIC measurement method is based on the principle that the functional user
requirements are formed from a collection of functional processes. Every functional process is
triggered either by a user or initiated by an actor (a functional user or an external component)
that occurs outside the boundary of the software that is measured. This request initiates data
group movement which can consist of one or more attributes that belong to that group. The
process is complete when the software has done all that is needed in order to respond to the event
COSMIC method recognizes four types of data movements: Entry, Exit, Read and Write.

Entry moves data from functional users to functional process.


Exit moves data from functional process, across boundary to functional users.
Read moves data from persistent storage to functional process.

Write moves data from functional process to persistent storage.

Each of these data movements is viewed as one COSMIC function point (CFP). After all
functional processes have been finished. Measurer needs to sum all CFP and then identify the
size of the software that has been measured.
For a functional process i, total functional size is calculated as the sum of all data
movements that occurs in that process:

The size of the software in terms of COSMIC is then sum of the sizes of all functional
processes that occur in the measured software application:

COCOMO:
This model was proposed by Barry Boehm (Boehm, 1981), is the most popular method
which is categorized in algorithmic methods. This method uses some equations and parameters,
which have been derived from previous experiences about software projects for estimation.
The models have been widely accepted in practice. In the COCOMOs, the code-size S is given in
thousand LOC (KLOC) and Effort is in person month. COCOMO was the first model suggested
by Barry Boehm, which follows following formula:
Effort = a (K LOC) ^b
Where S is the code-size, and a, b are complexity factors. This model uses three sets
of a, b depending on the complexity of the software only as given in table IX. The basic
COCOMO model is simple and easy to use. As many cost factors are not considered, it can only
be used as a rough estimate.
COCOMO-II:
Among the large number of different cost estimation models been proposed over the last 20+
years, COCOMO II [4] is a well know and widely used one. The COCOMO II is a deterministic model,
which takes deterministic values as input and estimates the most likely software development effort.

COCOMO II takes the estimated project size and cost driver values as input, and estimates the
amount of effort in person-months for a project by the formula:

In the above formulas, Size is the estimated size of software project measured in terms of
KSLOC, A and B are constants that can be calibrated to existing project data; SFs are scale factors count
for the relative economies or diseconomies of scale encountered for software projects of different sizes,
and EMs are effort multipliers to adjust the PM.

You might also like