Page 157 -
P. 157

128           PART TWO  MANAGING SOFTWARE PROJECTS


                          Once the expected value for the estimation variable has been determined, histor-
                       ical LOC or FP productivity data are applied. Are the estimates correct? The only rea-
                       sonable answer to this question is: "We can't be sure." Any estimation technique, no
                       matter how sophisticated, must be cross-checked with another approach. Even then,
                       common sense and experience must prevail.

                       5.6.3  An Example of LOC-Based Estimation

                       As an example of LOC and FP problem-based estimation techniques, let us consider
                       a software package to be developed for a computer-aided design application for
                       mechanical components. A review of the System Specification indicates that the soft-
                       ware is to execute on an engineering workstation and must interface with various
                       computer graphics peripherals including a mouse, digitizer, high resolution color dis-
                       play and laser printer.
                          Using the System Specification as a guide, a preliminary statement of software scope
                       can be developed:

                          The CAD software will accept two- and three-dimensional geometric data from an
                       engineer. The engineer will interact and control the CAD system through a user interface
                       that will exhibit characteristics of good human/machine interface design. All geometric
                       data and other supporting information will be maintained in a CAD database. Design analy-
                       sis modules will be developed to produce the required output, which will be displayed on
                       a variety of graphics devices. The software will be designed to control and interact with
                       peripheral devices that include a mouse, digitizer, laser printer, and plotter.

                       This statement of scope is preliminary—it is not bounded. Every sentence would have
                       to be expanded to provide concrete detail and quantitative bounding. For example,
                       before estimation can begin the planner must determine what "characteristics of good
                       human/machine interface design" means or what the size and sophistication of the
         Many modern
         applications reside on  "CAD database" are to be.
         a network or are part  For our purposes, we assume that further refinement has occurred and that the
         of a client/server  following major software functions are identified:
         architecture. Therefore,
         be sure that your  • User interface and control facilities (UICF)
         estimates include the  • Two-dimensional geometric analysis (2DGA)
         effort required for the
         development of   • Three-dimensional geometric analysis (3DGA)
         “infrastructure”  • Database management (DBM)
         software.
                          • Computer graphics display facilities (CGDF)
                          • Peripheral control function (PCF)
                          • Design analysis modules (DAM)

                       Following the decomposition technique for LOC, an estimation table, shown in Fig-
                       ure 5.3, is developed.  A range of LOC estimates is developed for each function. For
                       example, the range of LOC estimates for the 3D geometric analysis function is opti-
                       mistic—4600 LOC, most likely—6900 LOC, and pessimistic—8600 LOC.
   152   153   154   155   156   157   158   159   160   161   162