1
Software Engineering – http://www.cs.uta.fi/se University of Tampere, CS Department Jyrki Nummenmaa
Configuration management
Software Engineering – http://www.cs.uta.fi/se University of Tampere, CS Department Jyrki Nummenmaa
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
Software Engineering – http://www.cs.uta.fi/se University of Tampere, CS Department Jyrki Nummenmaa
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
Software Engineering – http://www.cs.uta.fi/se University of Tampere, CS Department Jyrki Nummenmaa
SCM Activities
- CM data management
- Version management
- Release versions
- Development versions
- Concurrent development management
- Change management
Software Engineering – http://www.cs.uta.fi/se University of Tampere, CS Department Jyrki Nummenmaa
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
Software Engineering – http://www.cs.uta.fi/se University of Tampere, CS Department Jyrki Nummenmaa
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.