Page 31 - DCAP304_DCAP515_SOFTWARE_PROJECT_MANAGEMENT
P. 31
Unit 1: Introduction to Software Project Management
Disadvantages Notes
PMBOK is only a framework; the definite needs of the project in question should be
determined by a knowledgeable managerial team.
PMBOK provides nominal coverage of various project management methodologies and
techniques. One definitely needs to consult specialized texts on these subjects in order to
learn the ins and outs.
PMBOK only incorporates those features of the project management process that are
profession independent.
Notes PMBOK actually is a collection of usually accepted project management techniques,
these techniques can easily be integrated in other methodologies when applicable.
Constructive Cost Model (COCOMO)
COCOMO is an experiential, algorithmic model for estimating the effort, schedule and costs of
a software project. It was derived by collecting relevant data from a large number of software
projects, then analyzing the data to discover the formulae that were the best-fit to the observations.
The first version of the COCOMO model (now known as COCOMO 81) was a three-level model
where the levels imitated the detail of the analysis of the cost estimate. The first level (basic)
provided an initial, rough estimate; the second level modified this using a number of project
and process multipliers and the most detailed level produced estimates for different phases of
the project.
COCOMO 81 makes a variety of assumptions about the software development process in order to
produce its estimates. The latter will only be somewhat accurate when the project uses the waterfall
process model and every line of code is produced from scratch. It also fails to take into account that
nowadays higher-level programming languages are employed, supported by various automated
tools. We will not elaborate on this version, since it has been obsolete by COCOMO 2.
COCOMO 2 comprises support for various development methodologies such as component-
based development and prototyping, fourth generation programming languages and CASE
support tools. COCOMO 2 still consists of three levels, but these have been given somewhat
different interpretations:
The early prototyping level: Size estimates are based on object points. These object points
are a simple way of quantifying the perceived complexity of requirements that need to be
implemented. The required effort is then computed by applying a simple extrapolation
from the object points and programmer productivity. Object points are based on the
number of screens, reports and modules in third generation programming languages, and
can be weighed by the perceived complexity of the screen, report or module in question.
The post-architecture level: Once the system architecture has been designed a reasonably
accurate estimate of the software size can be made. The estimate as this level uses a more
extensive set of multipliers reflecting personnel capabilities, product and project
characteristics.
The early design level: This level corresponds to the completion of the system requirements
with (perhaps) some initial design. Estimates are based on function points, which are
obtained by working out the object points in detail. More specifically, the total number of
points is computed by measuring or estimating the following program features: external
LOVELY PROFESSIONAL UNIVERSITY 25