Skip to main content
SOFTWARE CONFIGURATION
MANAGEMENT
1
Arunnima B S
Contents
2
 What is SCM
 Why SCM
 SCM Process
 Role of Configuration Manager
 SCM Tools
Software Configuration Management
3
Set of activities that have been developed to manage
change throughout the life cycle of computer software
Why SCM?
4
 Multiple people working in a given project
 Different versions of documents/Software
 Different releases to customers
Need for coordination
&
Streamlined processes
SCM
Set of activities designed to manage change
 by identifying the work products that are likely to
change
 establishing relationship among them
 defining mechanisms for managing different
versions of these work products
 controlling the changes
 auditing and reporting the changes made
5
Terminologies
6
 Configuration Item
 Baseline
 Version
 Release
 SCM Directories
Terminologies
 Configuration Items
Set of software and hardware items that needs
configuration control
7
 Requirement Documents
 Design Documents
 Test Documents
 Source Code
 Executables
 Databases
 Test Data
 Bug reports
 Build
 Servers
Terminologies
 Version
Specific version of a configuration item
ECR_BRD V0.1.doc
ECR_BRD V0.2.doc
 Baseline
A specification or product that has been formally reviewed and
agreed to by responsible management, that thereafter serves as the
basis for further development, and can be changed only through
formal change control procedures
ECR_BRD V1.0.doc
ECR_BRD V2.0.doc
As systems are developed, there could be different baselines
• Developmental baseline
• Functional baseline
• Product baseline
8
Terminologies
 Release
Formal distribution of an approved version
May be to testing team, implementation team or to customer
 SCM Directories or SCM Repository
Set of mechanisms and data structures that allow a team to
manage change in an effective manner.
9
Contents of SCM Repository
10
SCM Process
11
SCM Process
 Identification of CI
 Identify and name each item separately
 Categorize
 Change Control
 Change request
 Approval/Rejection by change control board
 Checkout CI
 Make Changes
 Review and Check in changes
 Version Control
 Procedures to manage different versions of CI
12Note : CI : Configuration Item
SCM Process
 Configuration audit
 Ensure configuration plan is adhered to
 Any non compliance identified
 Any corrective measures
 Reporting
 Status of configuration audit – Who did what, when and what
else is affected
13
Administering SCM
14
 Organization wide
 Project wise
 Distributed amongst project members
CM Plan
 At project level
 Defines
 The type of CI to be managed
 The naming scheme of the items
 Policies for change control, versioning, release management
 Roles and responsibilities of Configuration Manager, Project
Manager and other team members
 Tools to be used for CM
 Audit processes
15
Sample CM Plan Contents
16
Change Management
 Change requests
 From customers
 From market forces
 From developers
 Change Management deals with
 Managing the changes
 Keeping track of the changes
 Implementing in a cost effective manner
17
Change Management Process
 Request change by completing a change request
form
 Analyze the change request
 Access how the change may be implemented
 Access change cost
 Submit change to Change Control Board (CCB)
 If change is accepted by CCB, implement change
 Reject change
 If change incurs huge cost/effort  Move to next release
/enhancement
18
Version & Release Management
 Identification of versioning process & numbering
mechanism
 Major Release
 Minor Release
 Maintenance Release
 Patches
 Releases
 To team outside development team
 To Testing Team
 To Customers
19
Role of Configuration Manager
 Identify configuration items
 Define policies and procedures for change
management
 Define versioning, baselining , build and release
procedures
 Prepare configuration management plan
 Configuration control
 Configuration audit
 Configuration reporting
20
SCM Tools
 Microsoft Visual Source Safe (VSS)
 Concurrent version system (CVS)
 Subversion (SVN)
 ClearCase
 SourceForge
 Rational Team Connect (RTC)
 Microsoft Team Foundation Server (TFS)
21
VSS
22
CVS
23
TFS
24
25