Software Project Management: Lecture # 6
Software Project Management: Lecture # 6
Lecture # 6
Outline
Each of the above will yield a different result for the same values
of LOC or FP. The implication is clear – estimation models must
be calibrated for local needs.
The COCOMO Model
In his classic book “Software Engineering
Economics”, Barry Boehm suggested the
COnstructive COst MOdel (COCOMO).
COCOMO is a software cost estimation
method for estimating effort, cost, and
schedule for software projects.
It is based on a set of empirically derived
equations.
These equations incorporate variables
considered to be the major cost drivers of
software development and maintenance.
The COCOMO Model (Contd.)
PROD 4 7 13 25 50
COCOMO II Model (Contd.)
For component-based development or when
software reuse is applied, the %reuse is estimated
and object point count is adjusted:
NOP = (object points) x [(100 - %reuse)/100]
NOP is new object points
Chart of accounts
It describes coding structure used by performing
organization to report financial information in its
general ledger.
Risks
The project team considers the extent to which the
effect of risk is included in the cost estimates for
each activity.
Tools and Techniques for Cost
Estimating
Analogous estimating
It is also called top-down estimating, as actual
cost of similar previous project is used as basis
for current estimating cost of current project.
It is a less costly than other techniques but
generally less accurate.
It is most reliable when
previous projects are similar in fact not just in
appearance and
people making the estimates have the required
expertise.
Tools and Techniques for Cost
Estimating (Contd.)
Parametric modeling
It involves using project parameters in a
mathematical model to predict project costs.
Cost and accuracy of this technique varies.
It is reliable when
the historical info used to develop model was
accurate,
the parameters used are quantifiable and
the model is scalable (works for both very small
and very large projects).
Tools and Techniques for Cost
Estimating (Contd.)
Bottom-up estimating
It involves cost estimation of individual activities or
work packages, then summarizing and rolling up
the individual estimates to get a project total.
The cost and accuracy of this technique is driven
by size and complexity of individual activity or work
package.
Smaller activities increase the cost and accuracy of the
estimating process.
Computerized tools
These include project management software
spreadsheets and simulation/statistical tools.
Other cost estimating methods
For example, vendor bid analysis.
Outputs from Cost Estimating
Cost estimates
These are quantitative assessments of likely costs of
resources (e.g., labor, material, supplies, etc.) required
to complete project activities.
They are expressed in units of currency.
Supporting detail
Description of scope of work estimated (by reference to
WBS)
Documentation about how estimate was developed.
Documentation of any assumptions made.
An indication of range of possible results, e.g., $10,000
+ $1,000 to indicate cost between $9,000 and $11,000
Outputs from Cost Estimating
(Contd.)
$450,000
difficult (0.70)
build
$275,000
minor changes
((0.40)
reuse
system X $310,000
simple (0.20)
major
changes
buy (0.60) $490,000
complex (0.80)
$400,000
major changes (0.30)
$500,000
with changes (0.40)
Decision Tree
Expected value of cost computed along each
branch of the decision tree is:
expected cost =
Σ (path probability)i x (estimated path cost)i