Trending October 2023 # Software Configuration Management In Software Engineering # Suggested November 2023 # Top 10 Popular | Cersearch.com

Trending October 2023 # Software Configuration Management In Software Engineering # Suggested November 2023 # Top 10 Popular

You are reading the article Software Configuration Management In Software Engineering updated in October 2023 on the website Cersearch.com. We hope that the information we have shared is helpful to you. If you find the content interesting and meaningful, please share it with your friends and continue to follow and support us for the latest updates. Suggested November 2023 Software Configuration Management In Software Engineering

What is Software Configuration Management?

In Software Engineering, Software Configuration Management(SCM) is a process to systematically manage, organize, and control the changes in the documents, codes, and other entities during the Software Development Life Cycle. The primary goal is to increase productivity with minimal mistakes. SCM is part of cross-disciplinary field of configuration management and it can accurately determine who made which revision.

Why do we need Configuration management?

The primary reasons for Implementing Technical 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 config 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.

1

Monday

Learn More

On Monday’s Website

Time Tracking

Yes

Drag & Drop

Yes

Free Trial

Forever Free Plan

2

Teamwork

Learn More

On Teamwork’s Website

Time Tracking

Yes

Drag & Drop

Yes

Free Trial

Forever Free Plan

3

JIRA Software

Learn More

On Jira Software Website

Time Tracking

Yes

Drag & Drop

Yes

Free Trial

Forever Free Plan

Tasks in SCM process

Configuration Identification

Baselines

Change Control

Configuration Status Accounting

Configuration Audits and Reviews

Configuration Identification:

Configuration identification is a method of determining the scope of the software system. With the help of this step, you can manage or control something even if you don’t know what it is. It is a description that contains the CSCI type (Computer Software Configuration Item), a project identifier and version information.

Activities during this process:

Identification of configuration Items like source code modules, test case, and requirements specification.

Identification of each CSCI in the SCM repository, by using an object-oriented approach

The process starts with basic objects which are grouped into aggregate objects. Details of what, why, when and by whom changes in the test are made

Every object has its own features that identify its name that is explicit to all other objects

List of resources required such as the document, the file, tools, etc.

Example:

Instead of naming a File chúng tôi its should be named login_v1.2.php where v1.2 stands for the version number of the file

Instead of naming folder “Code” it should be named “Code_D” where D represents code should be backed up daily.

A baseline is a formally accepted version of a software configuration item. It is designated and fixed at a specific time while conducting the SCM process. It can only be changed through formal change control procedures.

Activities during this process:

Facilitate construction of various versions of an application

Defining and determining mechanisms for managing various versions of these work products

The functional baseline corresponds to the reviewed system requirements

Widely used baselines include functional, developmental, and product baselines

In simple words, baseline means ready for release.

Change Control:

Change control is a procedural method which ensures quality and consistency when changes are made in the configuration object. In this step, the change request is submitted to software configuration manager.

Activities during this process:

Control ad-hoc change to build stable software development environment. Changes are committed to the repository

The request will be checked based on the technical merit, possible side effects and overall impact on other configuration objects.

It manages changes and making configuration items available during the software lifecycle

Configuration Status Accounting:

Configuration status accounting tracks each release during the SCM process. This stage involves tracking what each version has and the changes that lead to this version.

Activities during this process:

Keeps a record of all the changes made to the previous baseline to reach a new baseline

Identify all items to define the software configuration

Monitor status of change requests

Complete listing of all changes since the last baseline

Allows tracking of progress to next baseline

Allows to check previous releases/versions to be extracted for testing

Configuration Audits and Reviews:

Software Configuration audits verify that all the software product satisfies the baseline needs. It ensures that what is built is what is delivered.

Activities during this process:

Configuration auditing is conducted by auditors by checking that defined processes are being followed and ensuring that the SCM goals are satisfied.

To verify compliance with configuration control standards. auditing and reporting the changes made

SCM audits also ensure that traceability is maintained during the process.

Ensures that changes made to a baseline comply with the configuration status reports

Validation of completeness and consistency

Participant of SCM process:

Following are the key participants in SCM

1. Configuration Manager

Configuration Manager is the head who is Responsible for identifying configuration items.

CM ensures team follows the SCM process

He/She needs to approve or reject change requests

2. Developer

The developer needs to change the code as per standard development activities or change requests. He is responsible for maintaining configuration of code.

The developer should check the changes and resolves conflicts

3. Auditor

The auditor is responsible for SCM audits and reviews.

Need to ensure the consistency and completeness of release.

4. Project Manager:

Ensure that the product is developed within a certain time frame

Monitors the progress of development and recognizes issues in the SCM process

Generate reports about the status of the software system

Make sure that processes and policies are followed for creating, changing, and testing

5. User

The end user should understand the key SCM terms to ensure he has the latest version of the software

Software Configuration Management Plan

The SCMP (Software Configuration management planning) process planning begins at the early coding phases of a project. The outcome of the planning phase is the SCM plan which might be stretched or revised during the project.

The SCMP can follow a public standard like the IEEE 828 or organization specific standard

It defines the types of documents to be management and a document naming. Example Test_v1

SCMP defines the person who will be responsible for the entire SCM process and creation of baselines.

Fix policies for version management & change control

Define tools which can be used during the SCM process

Configuration management database for recording configuration information.

Software Configuration Management Tools

Any Change management software should have the following 3 Key features:

Concurrency Management:

When two or more tasks are happening at the same time, it is known as concurrent operation. Concurrency in context to SCM means that the same file being edited by multiple persons at the same time.

If concurrency is not managed correctly with SCM tools, then it may create many pressing issues.

Version Control:

SCM uses archiving method or saves every change made to file. With the help of archiving or save feature, it is possible to roll back to the previous version in case of issues.

Synchronization:

Users can checkout more than one files or an entire copy of the repository. The user then works on the needed file and checks in the changes back to the chúng tôi can synchronize their local copy to stay updated with the changes made by other team members.

Following are popular tools

1. Git: Git is a free and open source tool which helps version control. It is designed to handle all types of projects with speed and efficiency.

2. Team Foundation Server: Team Foundation is a group of tools and technologies that enable the team to collaborate and coordinate for building a product.

3. Ansible: It is an open source Software configuration management tool. Apart from configuration management it also offers application deployment & task automation.

Conclusion:

Configuration Management best practices helps organizations to systematically manage, organize, and control the changes in the documents, codes, and other entities during the Software Development Life Cycle.

The primary goal of the SCM process is to increase productivity with minimal mistakes

The main reason behind configuration management process is that there are multiple people working on software which is continually updating. SCM helps establish concurrency, synchronization, and version control.

A baseline is a formally accepted version of a software configuration item

Change control is a procedural method which ensures quality and consistency when changes are made in the configuration object.

Configuration status accounting tracks each release during the SCM process

Software Configuration audits verify that all the software product satisfies the baseline needs

Project manager, Configuration manager, Developer, Auditor, and user are participants in SCM process

The SCM process planning begins at the early phases of a project.

Git, Team foundation Sever and Ansible are few popular SCM tools.

You're reading Software Configuration Management In Software Engineering

Update the detailed information about Software Configuration Management In Software Engineering on the Cersearch.com website. We hope the article's content will meet your needs, and we will regularly update the information to provide you with the fastest and most accurate information. Have a great day!