1
11.10.2004 Software Engineering 2004 Jyrki Nummenmaa 1
CONFIGURATION MANAGEMENT
- Today we talk about Software Configuration
Management (SCM for short):
- What?
- Why?
- How?
11.10.2004 Software Engineering 2004 Jyrki Nummenmaa 2
WHY CM?
- Multiple people are working on changing software
- More than one version of the software needs to be
supported:
– Different releases – Different installations with different functionalities – Development versions
- Software needs to run on different operating
systems and different hardware
11.10.2004 Software Engineering 2004 Jyrki Nummenmaa 3
WHAT IS SCM?
- Configuration management is a way to manage
evolving software
- Configuration management is a set of disciplines
and techniques for initiating, evaluating, and controlling change to software products.
- Configuration management covers the lifecycle of
software development
11.10.2004 Software Engineering 2004 Jyrki Nummenmaa 4
SCM Activities
- CM data management
- Version management
- Release versions
- Development versions
- Concurrent development management
- Change management
11.10.2004 Software Engineering 2004 Jyrki Nummenmaa 5
SCM Items
- Design documents
- Code files
- Test data
- Test drivers
- Manuals
- System configuration data
- Etc.
- A meaningful combination of above, meant to be
treated as a single entity
- Also hardware items can be considered CM Items
11.10.2004 Software Engineering 2004 Jyrki Nummenmaa 6
Managing SCM Items
- There may easily be thousands of SCM items
- A naming scheme should be introduced to identify
these
- The hierarchical arrangement of software project
items should be supported
- Should all CM items be managed
- When to start management for an item?
– If you start too early, you get bureaucracy. – If you start too late, you get chaos.