Post

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

TermDefinition
BaselineA reviewed and agreed-upon specification or product that serves as the basis for further development and can only be changed through formal change control
CodelineA sequence of versions of source code with later versions derived from earlier versions
MainlineA sequence of baselines representing different versions of a system

Configuration Management Activities

  1. Version management — track versions of components; prevent conflicts
  2. System building — assembling component versions into an executable system
  3. Change management — process for assessing and implementing changes
  4. Release management — preparing software for external release

Approving a Change — Significant Factors

  1. Business impact — does this change address a real business need?
  2. Cost of change — development effort, testing, documentation
  3. Risk — could this break existing functionality?
  4. Dependencies — does this change affect other components or teams?
  5. Urgency — is this a critical bug fix or a nice-to-have?
  6. 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.