Software Configuration Management (SCM) is defined as the task of tracking and controlling changes in the software. It includes revision control and the establishment of baselines. SCM deals with the control of a software project. SCM manages software codes, hardware, documents and design models including directory structure.

It is a set of activities designed to control change by identifying the work products that might transform, establishing relationships among them, defining mechanisms for managing different versions of these works products, controlling the alterations imposed, auditing and reporting the changes made.

SCM helps in

  • Configuration identification
  • Configuration control
  • Configuration status accounting
  • Configuration auditing
  • Build management
  • Process management
  • Environment management
  • Team work and
  • Defect tracking