0% found this document useful (0 votes)
3 views9 pages

Lec 22

System Configuration Management (SCM) is essential for managing changes in software systems, ensuring proper identification, version control, change control, and auditing of configuration items. It enhances collaboration, reduces risks, and improves the overall quality and efficiency of software development. However, SCM can introduce complexity and challenges in managing dependencies and integrating changes, particularly in large projects.

Uploaded by

ehsanarts580
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PPTX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
3 views9 pages

Lec 22

System Configuration Management (SCM) is essential for managing changes in software systems, ensuring proper identification, version control, change control, and auditing of configuration items. It enhances collaboration, reduces risks, and improves the overall quality and efficiency of software development. However, SCM can introduce complexity and challenges in managing dependencies and integrating changes, particularly in large projects.

Uploaded by

ehsanarts580
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PPTX, PDF, TXT or read online on Scribd
You are on page 1/ 9

System configuration

management
LEC_22
System Configuration Management (SCM)
SCM is the process of managing changes to a software system. It involves identifying items for
change, establishing relationships between them, creating tools for managing different versions,
controlling the changes being implemented, and monitoring and reporting on the changes made.
Controlling changes is crucial to prevent undermining a well-functioning software system. SCM
is a fundamental part of all project management activities.Processes involved in SCM
Identification and Establishment
Identifying configuration items that compose baselines at given times. Establishing relationships
among items and managing multiple levels of control and procedure for change management.
Version control
Creating versions/specifications of the existing product to build new products with the help of the
SCM system. A description of the version is given below:
Change control
Controlling changes to Configuration items (CI). The change control process is explained in
Figure below:
A change request is evaluated for technical merit, side effects, impact, and cost. The evaluation
results are presented in a change report, which a change control board uses to decide the change's
status and priority. An engineering change request is generated for each approved change. The
change control board notifies the developer if the change is rejected, with a reason. The
engineering change request describes the change, constraints, and review/audit criteria. The object
to be changed is checked out, changed, tested, and checked back in with version control.
Configuration auditing
A software configuration audit complements the formal technical review of the process and
product. It focuses on the technical correctness of the configuration object that has been modified.
The audit confirms the completeness, correctness, and consistency of items in the SCM system
and tracks action items from the audit to closure.
Reporting
Providing accurate status and current configuration data to developers, testers, end users,
customers, and stakeholders through admin guides, user guides, FAQs, Release notes, Memos,
Installation Guide, Configuration guides, etc.
Importance of Software Configuration Management
• Effective Bug Tracking: Linking code modifications to issues that have been reported, makes
bug tracking more effective.
• Continuous Deployment and Integration: SCM combines with continuous processes to
automate deployment and testing, resulting in more dependable and timely software delivery.
• Risk management: SCM lowers the chance of introducing critical flaws by assisting in the
early detection and correction of problems.
• Support for Big Projects: Source Code Control (SCM) offers an orderly method to handle code
modifications for big projects, fostering a well-organized development process.
• Reproducibility: By recording precise versions of code, libraries, and dependencies, source
code versioning (SCM) makes builds repeatable.
• Parallel Development: SCM facilitates parallel development by enabling several developers to
collaborate on various branches at once.
Why need for System configuration management?

• Replicability: Software version control (SCM) makes ensures that a software system can be
replicated at any stage of its development. This is necessary for testing, debugging, and
upholding consistent environments in production, testing, and development.

• Identification of Configuration: Source code, documentation, and executable files are


examples of configuration elements that SCM helps in locating and labeling. The management
of a system’s constituent parts and their interactions depend on this identification.

• Effective Process of Development: By automating monotonous processes like managing


dependencies, merging changes, and resolving disputes, SCM simplifies the development
process. Error risk is decreased and efficiency is increased because of this automation.
Key objectives of SCM
Control the evolution of software systems: SCM helps to ensure that changes to a software
system are properly planned, tested, and integrated into the final product.
Enable collaboration and coordination: SCM helps teams to collaborate and coordinate their
work, ensuring that changes are properly integrated and that everyone is working from the same
version of the software system.
Provide version control: SCM provides version control for software systems, enabling teams to
manage and track different versions of the system and to revert to earlier versions if necessary.
Facilitate replication and distribution: SCM helps to ensure that software systems can be easily
replicated and distributed to other environments, such as test, production, and customer sites.
SCM is a critical component of software development, and effective SCM practices can help to
improve the quality and reliability of software systems, as well as increase efficiency and reduce
the risk of errors.
The main advantages of SCM

1.Improved productivity and efficiency by reducing the time and effort required to manage
software changes.
2.Reduced risk of errors and defects by ensuring that all changes were properly tested and
validated.
3.Increased collaboration and communication among team members by providing a central
repository for software artifacts.
4.Improved quality and stability of software systems by ensuring that all changes are properly
controlled and managed.

The main disadvantages of SCM

5.Increased complexity and overhead, particularly in large software systems.


2.Difficulty in managing dependencies and ensuring that all changes are properly integrated.
3.Potential for conflicts and delays, particularly in large development teams with multiple

You might also like