Professional Documents
Culture Documents
no 4
Date SOFTWARE COST ESTIMATION USING COSTAR
AIM:
To study software cost estimation using costar and estimate cost of a sample project
using the same.
The ability to accurately estimate the time and/or cost taken for a project to come in to
its successful conclusion is a serious problem for software engineers. The use of a repeatable,
clearly defined and well understood software development process has, in recent years,
shown itself to be the most effective method of gaining useful historical data that can be used
for statistical estimation. In particular, the act of sampling more frequently, coupled with the
loosening of constraints between parts of a project, has allowed more accurate estimation and
more rapid development times.
Basic COCOMO
1. Organic projects - "small" teams with "good" experience working with "less than
rigid" requirements
2. Semi-detached projects - "medium" teams with mixed experience working with a mix
of rigid and less than rigid requirements
3. Embedded projects - developed within a set of "tight" constraints (hardware, software,
operational, ......)
where, SLOC is the estimated number of delivered lines (expressed in thousands ) of code for
project, The coefficients ab, bb, cb and db are given in the following table.
Software project ab bb cb db
Intermediate COCOMO
1. Product attributes
2. Required software reliability
3. Size of application database
4. Complexity of the product
5. Hardware attributes
6. Run-time performance constraints
7. Memory constraints
8. Volatility of the virtual machine environment
9. Required turnabout time
10. Personnel attributes
11. Analyst capability
12. Software engineering capability
13. Applications experience
14. Virtual machine experience
15. Programming language experience
16. Project attributes
17. Use of software tools
18. Application of software engineering methods
19. Required development schedule
Each of the 15 attributes receives a rating on a six-point scale that ranges from "very low"
to "extra high" (in importance or value). An effort multiplier from the table below applies to
the rating. The product of all effort multipliers results in an effort adjustment factor (EAF).
Typical values for EAF range from 0.9 to 1.4.
Product attributes
Hardware attributes
Personnel attributes
Project attributes
E=ai(SLoC)(bi).EAF
The Development time D calculation uses E in the same way as in the Basic COCOMO.
Using Costar
Most of the interactions with Costar will involve creating and modifying components. We
define subcomponents, assign cost driver values, estimate the size of each component, etc.
One component is always distinguished as "the current component". The name of the
current component, the cost drivers you've assigned to it, and other data describing the
current component are shown in the main Costar window.
Costar makes it easy to perform "what-if" analyses, and to compare different project plans.
You may develop a new estimate based upon an older one, and then use Costar to compare
the two.
1. A name
2. An ID
3. A one line comment
4. 5 Scale Drivers (COCOMO II models) or a Development Mode (COCOMO 81
models)
5. An associated database (e.g. COCOMO II.2000)
6. APM settings
7. Names & costs of labor classes
8. One or more components
One estimate is always distinguished as "the current estimate". All of the Costar
commands operate on the current estimate.
When there is only a single component in an estimate, the SLOC value for the component
is identical to the total SLOC value for the estimate. But when a component has
subcomponents, the SLOC value is derived from the SLOC values of its subcomponents.