What is configuration management?
The term configuration management originates from the software industry, where it was used to keep control of the various versions of programs and other files of data that were created during the course of a software development initiative.
Project briefs, project initiation documents, business cases, checkpoint and highlight reports are examples of project documentation that usually require some form of configuration management.
Purpose of configuration management
Within a project, the purpose of configuration management is to identify, track and protect the project’s deliverables or products from unauthorised change. Configuration management is a discipline that gives precise control over the project’s assets allowing managers to:
- specify the versions of products in use and in existence and hold information on their status, who owns them and relationships between them
- maintain an up-to-date record containing these pieces of information
- control changes to the products ensuring that changes are made only with the agreement of appropriate named authorities
- audit the records to ensure that they contain the authorised products and only these products
Within a project the job of configuration management is to provide:
- mechanisms for managing, tracking and keeping control of all the project's products; it keeps files and libraries of all the products of a project once they have been quality controlled, controlling access to them and maintaining records of their status
- safe and secure storage of each product in a way that is most appropriate for that product; this will include controlling access to the product in such a way as to avoid damage to the product and to protect against inappropriate access
- the ability to select and package the various components that comprise the final working product
- a system for logging, tracking and filing all project issues
Configuration management may be applied to all version-controlled deliverables including:
- objects, code modules
- specification documents
- configuration settings
- client operating system builds
- user procedures and documentation
The main rule is that only one person should have the ability to update a controlled item at any one time. A library system could be used to check out an item for update, and check in the item when the work has been completed.
Various access and authorisation rules can be applied to ensure people follow the procedures. The controls can be enforced physically, for example with password systems, but allowance must be made for those times when operational emergencies occur.
Configuration management roles and responsibilities
The configuration management plan will outline the detail of the roles and responsibilities of configuration management but, typically, the main roles are:
- senior responsible owner - responsible for ensuring that the programme or project meets its objectives, delivers the projected benefits and manages and monitors changes
- programme manager or project manager - responsible for applying standard programme and project management approaches to the specific requirements of the programme or project and for reporting progress and changes through highlight reports and end stage assessments
- configuration manager - appointed to oversee the whole process and ensure that adequate records are maintained
- programme or project management office - providing monitoring, control and good records keeping practices for the programme or project