Ch 13: Configuration Management & Change
Software change management, baselines, codeflows, and change approval factors.
Ch 13: Configuration Management & Change
Chapter 13 — Configuration Management & Change
(Sommerville Ch. 25)
Why Software Change is Inevitable
- Business environment changes (new regulations, markets)
- Errors discovered after delivery
- New platforms and technologies require adaptation
- Organizational changes affect requirements
- New stakeholders have new needs
Key Definitions
| Term | Definition |
|---|---|
| Baseline | A reviewed and agreed-upon specification or product that serves as the basis for further development and can only be changed through formal change control |
| Codeline | A sequence of versions of source code with later versions derived from earlier versions |
| Mainline | A sequence of baselines representing different versions of a system |
Configuration Management Activities
- Version management — track versions of components; prevent conflicts
- System building — assembling component versions into an executable system
- Change management — process for assessing and implementing changes
- Release management — preparing software for external release
Approving a Change — Significant Factors
- Business impact — does this change address a real business need?
- Cost of change — development effort, testing, documentation
- Risk — could this break existing functionality?
- Dependencies — does this change affect other components or teams?
- Urgency — is this a critical bug fix or a nice-to-have?
- Stakeholder impact — who is affected if the change is or isn’t made?
This post is licensed under CC BY 4.0 by the author.