Configuration Management helps organizations to systematically manage, organize, and control the changes in the documents, codes, and other entities during the Software Development Life Cycle. It is abbreviated as the SCM process. It aims to control cost and work effort involved in making changes to the software system. The primary goal is to increase productivity with minimal mistakes.
Why do we need Configuration management?
The primary reasons for Implementing Software Configuration Management System are:
- There are multiple people working on software which is continually updating
- It may be a case where multiple version, branches, authors are involved in a software project, and the team is geographically distributed and works concurrently
- Changes in user requirement, policy, budget, schedule need to be accommodated.
- Software should able to run on various machines and Operating Systems
- Helps to develop coordination among stakeholders
- SCM process is also beneficial to control the costs involved in making changes to a system
Any change in the software configuration Items will affect the final product. Therefore, changes to configuration items need to be controlled and managed.
The SCM system has the following advantages:
- Reduced redundant work.
- Effective management of simultaneous updates.
- Avoids configuration-related problems.
- Facilitates team coordination.
- Helps in building management; managing tools used in builds.
- Defect tracking: It ensures that every defect has traceability back to its source
