Page 254 -
P. 254

CHAPTER

                           9             SOFTWARE CONFIGURATION
                                         MANAGEMENT





               KEY                       hange is inevitable when computer software is built. And change
               CONCEPTS                  increases the level of confusion among software engineers who are
               access control . . . 234  Cworking on a project. Confusion arises when changes are not analyzed
               baselines. . . . . . . 227  before they are made, recorded before they are implemented, reported to those
               change control . . 234  with a need to know, or controlled in a manner that will improve quality and
               configuration        reduce error. Babich [BAB86] discusses this when he states:
               audit . . . . . . . . . . 237
                                   The art of coordinating software development to minimize . . . confusion is called
               configuration's      configuration management. Configuration management is the art of identifying, orga-
               objects. . . . . . . . . 229
                                   nizing, and controlling modifications to the software being built by a programming
               identification . . . 230
                                   team. The goal is to maximize productivity by minimizing mistakes.
               SCIs . . . . . . . . . . . 228
                                     Software configuration management (SCM) is an umbrella activity that is
               SCM process. . . . 230
                                   applied throughout the software process. Because change can occur at any
               status reporting. 237
                                   time, SCM activities are developed to (1) identify change, (2) control change,
               synchronization     (3) ensure that change is being properly implemented, and (4) report changes
               control. . . . . . . . . 234
                                   to others who may have an interest.
               version control. . 232
                                     It is important to make a clear distinction between software support and
                                   software configuration management. Support is a set of software engineering
                                   activities that occur after software has been delivered to the customer and put



                  QUICK         What is it? When you build com-  Why is it important? If you don’t control change, it
                   LOOK         puter software, change happens.  controls you. And that’s never good. It’s very easy
                                And because it happens, you  for a stream of uncontrolled changes to turn a
                    need to control it effectively. Software configura-  well-run software project into chaos. For that rea-
                    tion management (SCM) is a set of activities  son, SCM is an essential part of good project man-
                    designed to control change by identifying the  agement and solid software engineering
                    work products that are likely to change, estab-  practice.
                    lishing relationships among them, defining mech-  What are the steps? Because many work products
                    anisms for managing different versions of these  are produced when software is built, each must
                    work products, controlling the changes imposed,  be uniquely identified. Once this is accomplished,
                    and auditing and reporting on the changes  mechanisms for version and change control can
                    made.                                    be established. To ensure that quality is main-
                  Who does it? Everyone involved in the software engi-  tained as changes are made, the process is
                    neering process is involved with SCM to some  audited; and to ensure that those with a need to
                    extent, but specialized support positions are some-  know are informed about changes, reporting is
                    times created to manage the SCM process.  conducted.


                                                                                                 225
   249   250   251   252   253   254   255   256   257   258   259