SOFTWARE IN PRACTICE
(Aliases: change control, change management)
It is not the strongest of the species that survive, nor the most intelligent, but the ones most responsive to change. Charles Darwin
Configuration control is an important function of the configuration management discipline. Its purpose is to ensure that all changes to a complex system are performed with the knowledge and consent of management. The scope creep that results from ineffective or nonexistent configuration control is a frequent cause of project failure.
Configuration control tasks include initiating, preparing, analysing, evaluating and authorising proposals for change to a system (often referred to as "the configuration"). Configuration control has four main processes:
1. Identification and documentation of the need for a change in a change request
2. Analysis and evaluation of a change request and production of a change proposal
3. Approval or disapproval of a change proposal
4. Verification, implementation and release of a change.
The Configuration Control Process
Why Configuration Control is Important
Configuration control is an essential component of a project's risk management strategy. For example, uncontrolled changes to software requirements introduce the risk of cost and schedule overruns.
Scenario - Curse of the Feature Creep
A project misses several key milestones and shows no sign of delivering anything.
Solution: Implement configuration control. Document all requests for change and have them considered by a Configuration Control Board.