CPSC 544: Software Configuration Management (Part II)
Software Configuration Management (SCM) Overview
Ensures software design integrity throughout its lifecycle by managing changes to design, code, and project artifacts.
Requires design documentation updates when code changes occur, ensuring accuracy.
Software Configuration Management Plan
Initial step: develop an SCM Plan detailing objectives, responsibilities, and control methods.
Includes baseline contents and a checklist for SCM procedures.
SCM Questions
Addresses key phases: requirements, design, implementation, and testing.
Essential for tracking changes and maintaining consistent documentation across all project artifacts.
SCM Support Functions
Provides comprehensive support for software engineering activities through standardized version and change management.
Includes protected baselines, change tracking systems, and centralized data dictionaries.
The Requirements Phase
Ensures user needs are understood and captured before design.
Manages requirement changes formally and establishes baselines for tracking approved requirements.
Design Control
Changes to design are managed by a Change Control Board (CCB) which reviews and approves modifications.
Documentation of all changes (reasons, approvals, details) is crucial for consistency and future reference.
The Implementation Phase
Develops code based on controlled design and approved specifications.
Updates design documentation with implementation changes to reflect the 'as-built' system.
Operational Data
Management of operational data is essential in SCM for software systems to ensure integrity, availability, and consistency.
The Test Phase
Controls changes post-baseline to ensure software stability during testing.
Records test runs, results, environment details, and defects found for quality assurance.
Configuration Accounting
Maintains accurate historical records of all baselined items and their statuses, including versions, authors, and change history.
The Software Configuration Audit
Regular audits ensure adherence to SCM practices by verifying documentation and code against approved baselines.
Audit frequency is recommended for ongoing compliance with organizational and regulatory requirements.