Goals of Configuration Management
This includes various types of information depending on the activities involved such as version development, updates to previously installed software, and includes network addresses of hardware as well. Basically, configuration management is the keeping of extensive records of the changes involved in development, in order to facilitate decision making during the development cycle and to ensure smooth deployment in a cost effective and efficient manner.
These major goals then break down into a number of sub-goals. Sub-goals for software development include keeping track of source code by using a source code management system such as GIT, and other types of documentation, handling change requests and keeping track of changes made. All of these operations require specialized software to be successful.
Configuration management also includes the following:
1. Schedule control and the ability to keep track of the entire lifecycle of a project.
2. Verification and validation that keeps the development cycle from becoming stuck by ensuring that each step, change or process is successful before handoff.
3. Well managed communication that keeps the various subgroups operating as a single team.
4. Controlling configuration item changes to to prevent incompatibilities and introduced errors.
5. Making software builds as reliable and rapid as possible by creating software packages that can be easily deployed and undeployed.
The achievement of theses goals requires the use of configuration management applications so that the array of systems and software involved can be monitored to make certain that changes made do not cause unforeseen problems. Consequently, modern configuration management is an almost completely automated process, that will continue to evolve and improve into the foreseeable future.