Software Configuration Management Goodies:)

The purpose of Software Configuration Management is to establish and maintain the integrity of the products of the software project throughout the project’s software life cycle. Software Configuration Management involves identifying configuration items for the software project, controlling these configuration items and changes to them, and recording and reporting status and change activity for these configuration items.
img8
The first SCM was used in 1950 and was made by hand on cards or tapes. Now there are a lot of SCM implementations like Plan Change Documentation, Source Safe, Vertical Sky and Git.

PROCESS:

Identification of object in a software configuration
Version control
Change control
Configuration Auditing
Reporting
14182078_703019349845848_2043562261_n

ADVANTAGES

Reduced redundant work
Effective management of simultaneous updates
Avoids configuration-related problems
Facilitates team coordination
Helps in building management; managing tools used in builds
Defect tracking: It ensures that every defect has traceability back to its source
DISADVANTAGES

A file that has changed many times is going to consume a lot of unnecessary space because all the changes are going to be stored.

EXAMPLES:

Git
Trac
Visual Source Safe
Microsoft visual studio 2010
ALM
Harvest
AccurRev
ClearCase
Set-Liber
14151778_10154603056470864_510703679_o

José Manuel Nuño Salazar
José Carlos Peñuelas Armenta
Frida A. Díaz Medina
Ekaterina Chumakova

THE Ws of the SOFTWARE CONFIGURATION MANAGEMENT

SCM had its origins around the time of 1950s when configuration management, which was being implemented in hardware development, started being applied to software, being first applied manually into the cards and tapes that were used at the time. It was a very crucial implementation due to having to keep a budget and a schedule. Eventually the tools used evolved into more practical systems and were used in a broader scope with company´s growing use of computers.

tumblr_mab7irwes41rol1w1

Having different versions of software can bring a lot of confusion and errors. That’s why “software configuration management” intends to establish policies and standards for evaluating, coordinating, approving or disapproving, and implementing changes. This is mainly done through design, implementation, testing, baselining, building, release, and maintenance.

Software configuration is quite important right now in order to keep track of all the creation, changes, and keeping together a correct visualization of what’s being done or how are the files used in a project. Metadata such as dates that a file was modified, date it was create, author, people that have modified it, is important in order to have a clear and transparent representation of the work that is being done in certain projects. The CM also helps to have less confusion that can be caused by having different versions of the same file. It also helps in keeping a correct order of things when working in a project.

Several practices (which you can find here https://www.pearsonhighered.com/samplechapter/0321200195.pdf) are commonly considered best for CM. Let’s try explaining them…

1: identifying and storing artifacts in a secure repository, so that it’s easy to keep track of and identify artifact versions. This repository should be able to accept faults in the code, as in this stage interaction between artifacts is not expected to be

working-hard
mind_blown
Continue reading "THE Ws of the SOFTWARE CONFIGURATION MANAGEMENT"