Page 144 -
P. 144
CHAPTER 5 SOFTWARE PROJECT PLANNING 115
The availability of historical information has a strong influence on estimation risk.
By looking back, we can emulate things that worked and improve areas where prob-
lems arose. When comprehensive software metrics (Chapter 4) are available for past
“It is the mark of an
projects, estimates can be made with greater assurance, schedules can be established
instructed mind to
rest satisfied with the to avoid past difficulties, and overall risk is reduced.
degree of precision Risk is measured by the degree of uncertainty in the quantitative estimates estab-
which the nature of a lished for resources, cost, and schedule. If project scope is poorly understood or proj-
subject admits, and
ect requirements are subject to change, uncertainty and risk become dangerously
not to seek exactness
high. The software planner should demand completeness of function, performance,
when only an
approximation of the and interface definitions (contained in a System Specification). The planner, and more
truth is possible.” important, the customer should recognize that variability in software requirements
Aristotle means instability in cost and schedule.
However, a project manager should not become obsessive about estimation. Mod-
ern software engineering approaches (e.g., evolutionary process models) take an iter-
3
ative view of development. In such approaches, it is possible to revisit the estimate
(as more information is known) and revise it when the customer makes changes to
requirements.
5.2 PROJECT PLANNING OBJECTIVES
The objective of software project planning is to provide a framework that enables the
manager to make reasonable estimates of resources, cost, and schedule. These esti-
The more you know, mates are made within a limited time frame at the beginning of a software project
the better you and should be updated regularly as the project progresses. In addition, estimates
estimate. Therefore, should attempt to define best case and worst case scenarios so that project outcomes
update your estimates can be bounded.
as the project
progresses. The planning objective is achieved through a process of information discovery that
leads to reasonable estimates. In the following sections, each of the activities asso-
ciated with software project planning is discussed.
5.3 SOFTWARE SCOPE
The first activity in software project planning is the determination of software scope.
Function and performance allocated to software during system engineering (Chap-
ter 10) should be assessed to establish a project scope that is unambiguous and under-
standable at the management and technical levels. A statement of software scope
must be bounded.
Software scope describes the data and control to be processed, function, perfor-
mance, constraints, interfaces, and reliability. Functions described in the statement
3 This is not meant to imply that it is always politically acceptable to modify initial estimates. A
mature software organization and its managers recognize that change is not free. And yet, many
customers demand (incorrectly) that an estimate once made must be maintained regardless of
changing circumstances.