Software Configuration Management
The process of Software Configuration Management contains operations such as controlling, managing, and organizing the source-code, documents, and other essential components during the Software Development Life Cycle.SCM is essential for all project management activities. The goal of the SCM is to increase productivity with fewer mistakes.
The need for Configuration Management
Software development is a process in which many people and branches are involved, and work is given to the individuals according to their team.
- SCM requires changes in user requirements, policy, budget, and schedule.
- The software should be platform-independent.
- SCM helps to maintain communication among stakeholders.
Members of the SCM Process
Following are the participants of SCM:
- Configuration Manager
- Project Manager
Configuration Manager - Configuration Manager, is the head of the software project who identifies the configuration item. The configuration manager ensures that whether the team is following the SCM process or not.
Developer - The developer writes the code and makes changes in it according to the requirements of the client. It is the responsibility of the developer to maintain the configuration of code. The developer also monitors the changes and resolves the error.
Auditor - The auditor is the person who is responsible for SCM audits and reviews. An auditor ensures the consistency and completeness of the software before release.
Project Manager – The project manager monitors the progress of the software when it is in the development phase and observe issues in the SCM process. The project manager creates a report on the progress of the software. He ensures that all the processes are followed by the team members while developing and testing the software. The project manager makes sure that the software is developed within the given time.
User - The user has to understand the SCM terms to know that he has the latest version software.
Software Configuration Management Process
The processes of SCM are as follows:-
Configuration identification - Configuration Identification helps to make guidelines which are useful in the software development process, and guidelines needed to check the documentation and design of the software.
Software Configuration Control - Software configuration control is responsible for the management of changes during the software development life cycle. The decisions about change or modification, which are necessary for the project, are taken by the Configuration Control Board (CCB). Most of the time, CCB takes advice from the members of the software development process.
Software Configuration Status Accounting - Software Configuration Status Accounting (SCSA) consists of recording and reporting of information, and it is necessary for configuration management.
Software Configuration Auditing - Software configuration auditing is a process in which work products are analyzed for determining the performance with the proper specification, including certain standards, contracted agreements, and other factors. It determines the degree to which an element satisfies the necessary physical and functional characteristics. The items involved in the process of auditing are
- All the operations are properly performed by the software.
- The documentation process is completed or not.
Reporting - It gives information about the current status and configuration data to the developers, testers, end-user, customers, and stakeholders with the help of the admin guides, user guides, installation guide, configuration guide, etc.