Page 154 -
P. 154

CHAPTER 5  SOFTWARE PROJECT PLANNING                               125

                                In this section, we consider the software sizing problem. Because a project esti-
                              mate is only as good as the estimate of the size of the work to be accomplished, siz-
                              ing represents the project planner’s first major challenge. In the context of project
                              planning, size refers to a quantifiable outcome of the software project. If a direct
                              approach is taken, size can be measured in LOC. If an indirect approach is chosen,
                              size is represented as FP.
                                Putnam and Myers [PUT92] suggest four different approaches to the sizing problem:
                                   “Fuzzy logic” sizing. This approach uses the approximate reasoning tech-
                                   niques that are the cornerstone of fuzzy logic. To apply this approach, the
                ?  How do we       planner must identify the type of application, establish its magnitude on a
                   size the
                software that      qualitative scale, and then refine the magnitude within the original range.
                we’re planning to  Although personal experience can be used, the planner should also have
                build?                                               8
                                   access to a historical database of projects so that estimates can be com-
                                   pared to actual experience.
                                   Function point sizing. The planner develops estimates of the information
                                   domain characteristics discussed in Chapter 4.
                                   Standard component sizing. Software is composed of a number of differ-
                                   ent “standard components” that are generic to a particular application area.
                                   For example, the standard components for an information system are subsys-
                                   tems, modules, screens, reports, interactive programs, batch programs, files,
                                   LOC, and object-level instructions. The project planner estimates the number
                                   of occurrences of each standard component and then uses historical project
                                   data to determine the delivered size per standard component. To illustrate,
                                   consider an information systems application. The planner estimates that 18
                                   reports will be generated. Historical data indicates that 967 lines of COBOL
                                   [PUT92] are required per report. This enables the planner to estimate that
                                   17,000 LOC will be required for the reports component. Similar estimates and
                                   computation are made for other standard components, and a combined size
                                   value (adjusted statistically) results.
                                   Change sizing. This approach is used when a project encompasses the use
                                   of existing software that must be modified in some way as part of a project.
                                   The planner estimates the number and type (e.g., reuse, adding code, chang-
                                   ing code, deleting code) of modifications that must be accomplished. Using
                                   an “effort ratio” [PUT92] for each type of change, the size of the change may
                                   be estimated.
                              Putnam and Myers suggest that the results of each of these sizing approaches be
                              combined statistically to create a three-point or expected value estimate. This is accom-
                              plished by developing optimistic (low), most likely, and pessimistic (high) values for
                              size and combining them using Equations (5-1) described in the next section.

                              8  See Section 5.9 for a discussion of estimating tools that make use of a historical database and the
                                other sizing techniques discussed in this section..
   149   150   151   152   153   154   155   156   157   158   159