An effective software estimate provides
the information needed to design a workable software
development plan. How well the project is estimated
is ultimately the key to the project’s (and
product’s) success. An effective software estimate
provides important information for making project
decisions, projecting performance, and defining objectives
and plans. Without the proper guidance in a project,
the results could be disastrous.
The focus of this
session is how to make software projects
more successful by properly estimating and planning
costs, schedules, risks, and resources.
It begins by covering the fundamental problems of
unreasonable software estimation: not planning up
front; failure to use viable estimates as the bases
of an achievable project plan, not updating the plan
and estimates when a project changes, and failing
to consider the uncertainties inherent in estimates.
Most estimates are prepared early on in the life cycle
of a project, when there are typically a large number
of undefined areas related to the project. The
steps presented provide a complete method for developing
estimates and plans.
This presentation
proposes a 10-step estimation process that begins
by addressing the need for project metrics and the
fundamental software estimation concepts.
It shows how to build a viable project estimate, which
includes the work involved in the actual generation
of an estimate, including sizing the software, generating
the actual software project estimate, and performing
risk/uncertainty analysis. Finally the process rounds
out with a discussion on validation of the estimate,
obtaining lessons learned, and use of the estimate
throughout the project. Based on the book, Software
Sizing, Estimation, and Risk Management: When Performance
is Measured Performance Improves, by Daniel D. Galorath
and Michael W. Evans (Auerbach Publications, February
2006, ISBN: 0849335930)