Page 130 -
P. 130

CHAPTER 4  SOFTWARE PROCESS AND PROJECT METRICS                    101

               FIGURE 4.7
               Software
               metrics            Software
               collection        engineering
               process             process


                                  Software           Data
                                   project         collection    Measures



                                  Software                   Metrics
                                   product                 computation   Metrics




                                                                     Metrics
                                                                    evaluation  Indicators


                                Since the same process metrics will vary from project to project, how can we tell if
                              improved (or degraded) metrics values that occur as consequence of improvement activ-
                              ities are having a quantitative impact? How do we know whether we’re looking at a sta-
                “If I had to reduce
                my message for  tistically valid trend or whether the “trend” is simply a result of statistical noise? When
                management to just  are changes (either positive or negative) to a particular software metric meaningful?
                a few words, I’d say  A graphical technique is available for determining whether changes and varia-
                it all had to do with  tion in metrics data are meaningful. Called the control chart and developed by Wal-
                reducing variation.”
                              ter Shewart in the 1920s, 10  this technique enables individuals interested in software
                W. Edwards    process improvement to determine whether the dispersion (variability) and “location”
                Deming
                              (moving average) of process metrics are stable (i.e., the process exhibits only natural
                              or controlled changes) or unstable (i.e., the process exhibits out-of-control changes
                              and metrics cannot be used to predict performance). Two different types of control
                              charts are used in the assessment of metrics data [ZUL99]: (1) the moving range con-
                              trol chart and (2) the individual control chart.
                                To illustrate the control chart approach, consider a software organization that col-
                              lects the process metric, errors uncovered per review hour, E . Over the past 15 months,
                                                                              r
                ?  How can we  the organization has collected E for 20 small projects in the same general software
                                                         r
                   be sure that
                the metrics we  development domain. The resultant values for E are represented in Figure 4.8. In the
                                                                     r
                collect are   figure, E varies from a low of 1.2 for project 3 to a high of 5.9 for project 17. In an
                                     r
                statistically valid?  effort to improve the effectiveness of reviews, the software organization provided
                              training and mentoring to all project team members beginning with project 11.
                              10 It should be noted that, although the control chart was originally developed for manufacturing
                                processes, it is equally applicable for software processes.
   125   126   127   128   129   130   131   132   133   134   135