Configuration management is essential when a team of people are cooperating to develop software. This is because it is the process of managing changes to the evolving software system. The main goal of configuration management is to support the system integration process so that all developers can access the project code and documents in a controlled way, find out what changes have been made, and compile and link components to create a system. some of activities involved may include the likes of Version management, System integration and Problem tracking.
An example is when something goes wrong with a new version of a system, it may be able to go back to a working version of the system or component. If a new version of software is created, there is a significant change in functionality, technology, or the hardware is runs on, etc. On the other hand a new revision of software refers to minor bug fix in that software.