Page 267 -
P. 267

238           PART TWO  MANAGING SOFTWARE PROJECTS


                       as part of the CSR task. Output from CSR may be placed in an on-line database [TAY85],
                       so that software developers or maintainers can access change information by key-
                       word category. In addition, a CSR report is generated on a regular basis and is intended
                       to keep management and practitioners appraised of important changes.
                          Configuration status reporting plays a vital role in the success of a large software
                       development project. When many people are involved, it is likely that "the left hand
         Develop a “need to
         know list” for every  not knowing what the right hand is doing" syndrome will occur. Two developers may
         SCI and keep it up-to-  attempt to modify the same SCI with different and conflicting intents. A software engi-
         date.  When a change  neering team may spend months of effort building software to an obsolete hardware
         is made, be sure that  specification. The person who would recognize serious side effects for a proposed
         everyone on the list is  change is not aware that the change is being made. CSR helps to eliminate these
         informed.     problems by improving communication among all people involved.



                 9.8   SCM STANDARDS
                       Over the past two decades a number of software configuration management stan-
                       dards have been proposed. Many early SCM standards, such as MIL-STD-483, DOD-
                       STD-480A and MIL-STD-1521A, focused on software developed for military
                       applications. However, more recent ANSI/IEEE standards, such as ANSI/IEEE Stds.
                       No. 828-1983, No. 1042-1987, and Std. No. 1028-1988 [IEE94], are applicable for non-
                       military software and are recommended for both large and small software engineering
                       organizations.


                 9.9   SUMMARY
                       Software configuration management is an umbrella activity that is applied through-
                       out the software process. SCM identifies, controls, audits, and reports modifications
                       that invariably occur while software is being developed and after it has been released
                       to a customer. All information produced as part of software engineering becomes
                       part of a software configuration. The configuration is organized in a manner that
                       enables orderly control of change.
                          The software configuration is composed of a set of interrelated objects, also called
                       software configuration items, that are produced as a result of some software engi-
                       neering activity. In addition to documents, programs, and data, the development envi-
                       ronment that is used to create software can also be placed under configuration control.
                          Once a configuration object has been developed and reviewed, it becomes a base-
                       line. Changes to a baselined object result in the creation of a new version of that
                       object. The evolution of a program can be tracked by examining the revision history
                       of all configuration objects. Basic and composite objects form an object pool from
                       which variants and versions are created. Version control is the set of procedures and
                       tools for managing the use of these objects.
                          Change control is a procedural activity that ensures quality and consistency as
                       changes are made to a configuration object. The change control process begins with
                       a change request, leads to a decision to make or reject the request for change, and
                       culminates with a controlled update of the SCI that is to be changed.
   262   263   264   265   266   267   268   269   270   271   272