Page 269 -
P. 269

240           PART TWO  MANAGING SOFTWARE PROJECTS


                       9.4. Design a project database system that would enable a software engineer to
                       store, cross reference, trace, update, change, and so forth all important software con-
                       figuration items. How would the database handle different versions of the same pro-
                       gram? Would source code be handled differently than documentation? How will two
                       developers be precluded from making different changes to the same SCI at the same
                       time?
                       9.5. Do some research on object-oriented databases and write a paper that describes
                       how they can be used in the context of SCM.

                       9.6. Use an E-R model (Chapter 12) to describe the interrelationships among the
                       SCIs (objects) listed in Section 9.1.2.

                       9.7. Research an existing SCM tool and describe how it implements control for ver-
                       sions, variants, and configuration objects in general.

                       9.8. The relations <part-of> and <interrelated> represent simple relationships between
                       configuration objects. Describe five additional relationships that might be useful in
                       the context of a project database.
                       9.9. Research an existing SCM tool and describe how it implements the mechanics
                       of version control. Alternatively, read two or three of the papers on SCM and describe
                       the different data structures and referencing mechanisms that are used for version
                       control.
                       9.10. Using Figure 9.5 as a guide, develop an even more detailed work breakdown
                       for change control. Describe the role of the CCA and suggest formats for the change
                       request, the change report, and the ECO.
                       9.11. Develop a checklist for use during configuration audits.

                       9.12. What is the difference between an SCM audit and a formal technical review?
                       Can their function be folded into one review? What are the pros and cons?


                       FURTHER READINGS AND INFORMATION SOURCES

                       One of the few books that have been written about SCM in recent years is by Brown,
                       et al. (AntiPatterns and Patterns in Software Configuration Management, Wiley, 1999).
                       The authors discuss the things not to do (antipatterns) when implementing an SCM
                       process and then consider their remedies.
                          Lyon (Practical CM: Best Configuration Management Practices for the 21st Century,
                       Raven Publishing, 1999) and Mikkelsen and Pherigo (Practical Software Configuration
                       Management: The Latenight Developer's Handbook, Allyn & Bacon, 1997) provide prag-
                       matic tutorials on important SCM practices. Ben-Menachem (Software Configuration
                       Management Guidebook, McGraw-Hill, 1994), Vacca (Implementing a Successful Con-
                       figuration Change Management Program, I. S. Management Group, 1993), and Ayer
                       and Patrinnostro (Software Configuration Management, McGraw-Hill, 1992) present
                       good overviews for those who need further introduction to the subject.  Berlack (Soft-
   264   265   266   267   268   269   270   271   272   273   274