software configuration management
TRANSCRIPT
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
VersionSpecific 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 andagreed to by responsible management, that thereafter serves as thebasis for further development, and can be changed only throughformal 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
ReleaseFormal 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