Page 117 -
P. 117

88            PART TWO  MANAGING SOFTWARE PROJECTS


                       individual are often combined to develop project metrics that are public to a software
                       team. Project metrics are then consolidated to create process metrics that are public
                       to the software organization as a whole. But how does an organization combine met-
                       rics that come from different individuals or projects?
                          To illustrate, we consider a simple example. Individuals on two different project
                       teams record and categorize all errors that they find during the software process. Indi-
         Because many factors  vidual measures are then combined to develop team measures. Team A found 342
         influence software  errors during the software process prior to release. Team B found 184 errors. All other
         work, don’t use
         metrics to compare  things being equal, which team is more effective in uncovering errors throughout the
         individuals or teams.  process? Because we do not know the size or complexity of the projects, we cannot
                       answer this question. However, if the measures are normalized, it is possible to cre-
                       ate software metrics that enable comparison to broader organizational averages.

                       4.3.1  Size-Oriented Metrics
                       Size-oriented software metrics are derived by normalizing quality and/or productiv-
                       ity measures by considering the size of the software that has been produced.  If a soft-
                       ware organization maintains simple records, a table of size-oriented measures, such
          ?  What data  as the one shown in Figure 4.4, can be created. The table lists each software devel-
            should we
         collect to derive  opment project that has been completed over the past few years and corresponding
         size-oriented  measures for that project. Referring to the table entry (Figure 4.4) for project alpha:
         metrics?      12,100 lines of code were developed with 24 person-months of effort at a cost of
                       $168,000. It should be noted that the effort and cost recorded in the table represent
                       all software engineering activities (analysis, design, code, and test), not just coding.
                       Further information for project alpha indicates that 365 pages of documentation were
                       developed, 134 errors were recorded before the software was released, and 29 defects



                         Project    LOC     Effort  $(000) Pp. doc.  Errors  Defects  People


                         alpha     12,100    24     168      365     134      29       3
                         beta      27,200    62     440     1224     321      86       5
                         gamma     20,200    43     314     1050     256      64       6

                            •        •        •      •        •       •
                            •        •        •      •        •       •
                            •        •        •       •        •       •








         FIGURE 4.4
         Size-oriented
         metrics
   112   113   114   115   116   117   118   119   120   121   122