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.
   139   140   141   142   143   144   145   146   147   148   149