Professional Documents
Culture Documents
Software Metrics Using Constructive Cost Model: Prepared by Kondam Gopal Reddy
Software Metrics Using Constructive Cost Model: Prepared by Kondam Gopal Reddy
USING
CONSTRUCTIVE COST MODEL
Prepared By
KONDAM GOPAL REDDY
TABLE OF CONTENTS
1. ABSTRACT 1
2. INTRODUTION 1
3. CONSTRUCTIVE COST MODEL 2
4. COCOMO MODELS 2
Basic COCOMO 2
CLASSES OF COCOMO 3
INTERMEDIATE COCOMO 4
ADVANCED COCOMO 4
5. LIMITATIONS OF COCOMO 4
6. COST ESTIMATION ACCURACY 5
7. COCOMO II 5
8. COCOMO II CALCULATION 6
9. COCOMO II USES 6
10.CONCLUSION 6
11.REFERENCES 7
ABSTRACT:
Software products are said to be feasible if they are developed within the
budget constraints. The cost estimation models are used to predict the effort and
cost required to develop a project .These models give a base to predict the cost for
developing a software project. The cost estimation can be used to develop a
product utilizing optimum resources. In this paper we will be discussing
Constructive Cost Model as the cost estimation model.
INTODUCTION:
Software cost estimation model is an indirect measure, which is used by
software personnel to predict the cost of a project. The development of software
product varies depending upon the environment in which it is being developed. For
projects with familiar environment it is easy to predict the cost of the project. The
estimation model is useful for trade off between the developer and customer.
Organization can realize of what is achievable and deliverable to the customer.[1]
Cost drivers are those critical features which have an impact on the
project. The cost drivers may vary the cost of building a project. The most
important cost driver is size of the project. Size of the project is measured in Kilo
lines of code (KLOC). Function points are the empirical measurement to measure
size of the project. Function points may vary the size of the project due to the
variation in
Number of inputs
Number of outputs
Number of inquires
Number of files
Number of interfaces[1]
Cocomo is based on size of the project. The size of the project may vary
depending upon the function points. [1]
COCOMO MODELS:
BASIC COCOMO
It is used for relatively small project.
Only a few cost drivers are associated.
Cost drivers depend upon project size mainly.
Useful when the team size is small, i.e. small staff.
The effort (E) and schedule (S) of the project are calculated as follows
Project modes a b c d
Table 1 [3]
The above table 1 shows typical constant values that have been calculated
from various projects.
The basic cocomo gives the magnitude of cost of the project. It varies
depending upon size of the project. The various classes of software projects are
Intermediate COCOMO
It is used for medium sized projects.
The cost drivers are intermediate to basic and advanced cocomo.
Cost drivers depend upon product reliability, database size,
execution and storage.[2]
Team size is medium.
Advanced COCOMO
It is used for large sized projects.
The cost drivers depend upon requirements, analysis, design,
testing and maintenance.
Team size is large.
LIMITATIONS OF COCOMO
COCOMO is used to estimate the cost and schedule of the project, starting
from the design phase and till the end of integration phase. For the
remaining phases a separate estimation model should be used.
COCOMO is not a perfect realistic model. Assumptions made at the
beginning may vary as time progresses in developing the project.
When need arises to revise the cost of the project. A new estimate may
show over budget or under budget for the project. This may lead to a partial
development of the system, excluding certain requirements.
COCOMO assumes that the requirements are constant throughout the
development of the project; any changes in the requirements are not
accommodated for calculation of cost of the project.
There is not much difference between basic and intermediate COCOMO,
except during the maintenance and development of the software project.[1]
COCOMO is not suitable for non-sequential ,rapid development,
reengineering ,reuse cases models.[3]
The above results give a more accurate estimation of costs for future
projects.[3] The cost estimation model now becomes more realistic .
COCOMO II
COCOMOII was developed in 1995
It could overcome the limitations of calculating the costs for non-
sequential, rapid development, reengineering and reuse models of
software.
It has 3 modules
Application composition: - good for projects with GUI
interface for rapid development of project.
Early design: - Prepare a rough picture of what is to be
designed. Done before the architecture is designed.
Post architecture: - Prepared after the architecture has been
designed. [3]
COCOMO II calculation
In COCOMO II the constant value b is replaced by 5 scale factors. [3]
E = a * (KDSI) sf * π (EM)
COCOMO II USES
Helps in making decisions based on business and financial calculations of
the project.
Establishes the cost and schedule of the project under development, this
provides a plan for the project.
Provides a more reliable cost and schedule, hence the risk mitigation is easy
to accomplish.
It overcomes the problem of reengineering and reuse of software modules.
Develops a process at each level . Hence takes care of the capability
maturity model.[5]
CONCLUSION:
Constructive Cost Model developed by Barry W Boehm, is the most
common and widely used cost estimation models for most software projects. The
effort and schedule calculated by the model is based on two things, historical
information and experience. Thus the reliability on cocomo has been increased.
The website provided by NASA on cocomo, provides a cocomo calculator with
cost drivers for a complex project. Cost drivers directly have an impact on the
development of the project.
References:
[1] Farshad Faghih,” Software Effort and Schedule Estimation”,
http://www2.enel.ucalgary.ca/People/Smith/619.94/prev689/1997.94/reports/fa
rshad.htm
[2]IAN SOMMERVILLE,” Software Engineering”, published by addision wesley, pg 514-
521.