You are on page 1of 47

Software Configuration Management

Induction – Sep 2007

Protection notice / Copyright notice


Contents
• Overview to Software Configuration Management
• Why SCM: Main Classes of Problems
• Definitions
• Scope of Software Configuration Management
• Configuration Management Planning
• Software Configuration Management Tasks
• Change Control
• Software Configuration Management Tools

Protection notice / Copyright notice


Page 2 Sep-07 P&Q For Internal Use Only
Overview: Software Configuration
Management

• Art of identifying, organizing and controlling


modifications to the software and its work product
being built

• Software Configuration Management is one of the


foundations of Software Engineering

• It identifies and controls the configuration of


software, hardware, systems and the tools that are
used throughout the development lifecycle

Identify Change, Control Change, Implement


Change and Track Change

Protection notice / Copyright notice


Page 3 Sep-07 P&Q For Internal Use Only
Why SCM:
Main Classes of Problems

Protection notice / Copyright notice


Page 4 Sep-07 P&Q For Internal Use Only
Some Typical Problems
• Program does not work

• Works in Delhi, misbehaves in Bombay

• I had fixed this bug last month. How did it reappear?

• I haven’t changed the program. Why is it now


blowing up?

• Which is the latest source? I need to put a patch

Protection notice / Copyright notice


Page 5 Sep-07 P&Q For Internal Use Only
Main Classes of Problems

• Double maintenance problem


• Shared data
• Simultaneous update
• Missing/unknown version problem

Protection notice / Copyright notice


Page 6 Sep-07 P&Q For Internal Use Only
Main Classes Of Problem:
Missing/Unknown Version Problem

• Consciously decide which version to keep, which to


destroy

• Use a systematic method to identify versions and


changes across versions

• Use consistent back-up procedures

Protection notice / Copyright notice


Page 7 Sep-07 P&Q For Internal Use Only
Definitions

Protection notice / Copyright notice


Page 8 Sep-07 P&Q For Internal Use Only
Definitions
Configuration Item:
• An aggregation of software, documentation and data that is treated as a
single entity in the configuration management process.
Example: Project Plan, Code objects, Test Specification
Baselined Configuration Item:
• An item that is formally reviewed and agreed upon that thereafter serves
as the basis for further development, and that can be changed only
through formal change control procedures.
Example: Approved Requirement Specification
Configuration Control Board
• A board composed of technical and administrative representatives who
recommend the approval or disapproval of proposed requirement
changes to a baselined config item.
Example: Systems Manager, Customer, Project Manager

Protection notice / Copyright notice


Page 9 Sep-07 P&Q For Internal Use Only
Scope of SCM

Protection notice / Copyright notice


Page 10 Sep-07 P&Q For Internal Use Only
Scope of SCM

• Software entities that SCM is expected to manage include


Plans, Specifications (SRS, Design), User Documentation,
Test data, Support Software, Tools, Source Code,
Executables, and Libraries, Third-Party Software Products
& all DAR artifacts.

• When every work product can be accounted for, tracked


and controlled, when every change can be tracked and
controlled, SCM is said to effective.

Protection notice / Copyright notice


Page 11 Sep-07 P&Q For Internal Use Only
Configuration Management
Planning

Protection notice / Copyright notice


Page 12 Sep-07 P&Q For Internal Use Only
Configuration Management Planning

• Organization of SCM activities


• Defining Roles and Responsibilities
• Setting up of Change Control Board (CCB)
• Monitoring implementation of CM activities,
schedules and audits
• Review of CM activities

Protection notice / Copyright notice


Page 13 Sep-07 P&Q For Internal Use Only
Configuration Management Planning

Configuration Management Plan


• Introduction, Purpose & Scope
• Organization of SCM activities
• Defining Roles and Responsibilities
• Configuration Identification
• Configuration Control
• Access Control
• Backup procedures CM Plan template

• CM Schedule
• Change Control Board
• Configuration Status Accounting
• Configuration Audits
• Release Management
Protection notice / Copyright notice
Page 14 Sep-07 P&Q For Internal Use Only
Quiz

Q1 The Config Management Plan includes the following:


b) Resource Plan, review details, schedule
c) Baselines, release plan, backup plan, Change Mgmnt plan
d) None of the above

Q2 Configuration Management is
 The art of identifying, organizing and controlling modifications to
software
 Is one of the foundations of software engineering
 Both the above

Protection notice / Copyright notice


Page 15 Sep-07 P&Q For Internal Use Only
S/W Configuration Management
Tasks

Protection notice / Copyright notice


Page 16 Sep-07 P&Q For Internal Use Only
SCM Tasks
• Version Control
• Baselines
• Configurable item identification
• Process for Check-in and Check-out of any object
from the Project library
• Configuration Control
• Configuration Status Reporting
• Backup Process
• Configuration Audit
• Release Management

Protection notice / Copyright notice


Page 17 Sep-07 P&Q For Internal Use Only
SCM Tasks –Version Control
• Version Control combines procedures and tools to
manage different versions of configuration objects that
are created during the software process
• Keeping track of the software work product as it changes
• Version Identification Rules and Version numbering
Systems
• Version Traceability (Author, Date, Baseline,Status and
record of Change History and Approvals)
• Release Identification and Storage Management of
multiple versions

Protection notice / Copyright notice


Page 18 Sep-07 P&Q For Internal Use Only
SCM Tasks – Baselines
• ‘A specification or product that has been formally
reviewed and agreed upon, that thereafter serves as the
basis for further development, and that can be changed
only through formal Change Control Procedures’
• Changes to the Baselined work product - approval
required from CCB (Change Control Board) – Approval
from CCB is taken on pre-defined category of changes.
These categories are defined in Configuration Plan.
For e.g. CRs where effort is more than 10 days.
• The items of the next baseline are updated, reviewed and
verified before they become baselines themselves

Protection notice / Copyright notice


Page 19 Sep-07 P&Q For Internal Use Only
SCM Tasks – Configuration Items
• Configuration Item
- An aggregation of software, documents and data
that is treated as a single entity in the
configuration management process. A set of
configuration items form a “product”
CI Identification CIs

• Current Configuration
- Baselines plus approved changes from those
baselines constitute the current configuration

Protection notice / Copyright notice


Page 20 Sep-07 P&Q For Internal Use Only
SCM Tasks – Baseline Repositories
• Initial Repository-
Comprises items available at the start of the project
• Existing S/W source code (if available)
• Existing Technical documentation (e.g.
Requirements, Design, etc)
• Existing Plans
• Contract /Proposal

• As the project progresses, the subsequent baselines


and repositories are created as per project
requirements

Protection notice / Copyright notice


Page 21 Sep-07 P&Q For Internal Use Only
SCM Tasks – Baseline Repositories
• Definition Repository- Created at the end of Requirement
Specifications
• Requirement Specifications
• Project Plan, Quality Plan, Configuration Management
plan
• Acceptance Test Plan
• Design standards/Guidelines

• Design Repository- Created during Design


• DFS, GIS & DIS (Design documents – Detailed
Functional Specs, Global Implementation Specs,
Detailed Implementation Specs)
• Coding standards
• Testing standards

Protection notice / Copyright notice


Page 22 Sep-07 P&Q For Internal Use Only
SCM Tasks – Baseline Repositories

• Construction Repository- Created at the end of coding


and Unit Testing
• Source Code
• Object Code
• Unit test data/ Scripts
• Testing Repository- Created at the end of System
Testing
• System Test data and system test scripts
• Operation manual
• User Manual
• Installation Manual

Protection notice / Copyright notice


Page 23 Sep-07 P&Q For Internal Use Only
SCM Tasks – Check-out/Check-in

Check-out Check-in process


• The CIs available in the CM system will be in the read-only
mode by default
• Check out is a process that creates a new version of an object
from an existing version stored in the database. Developers
check out objects so they can work on them.
• Check in an operation used to make a developer’s object
version available to other users.

Protection notice / Copyright notice


Page 24 Sep-07 P&Q For Internal Use Only
SCM Tasks – Configuration Control

Configuration Control - Definition

An element of configuration management, consisting of


the evaluation, coordination, approval or disapproval and
implementation of changes to configuration items after the
formal establishment of their configuration identification

Protection notice / Copyright notice


Page 25 Sep-07 P&Q For Internal Use Only
SCM Tasks – Configuration Control
Problems that arise from lack of control, and they can
waste an enormous amount of time:
•What is my current software configuration?
•What is its status?
•How do I control changes to my configuration?
•How do I inform everyone else of my changes?
•What changes have been made to my software?
•Do anyone else's changes affect my software?

The key role of Software Configuration Management


(SCM) is to control change activity.
--Watts Humphrey
Managing the Software Process
Addison-Wesley, 1989
Protection notice / Copyright notice
Page 26 Sep-07 P&Q For Internal Use Only
SCM Tasks – Configuration Control
• Documentation of Change Request
• Impact Analysis & Approval of Change Request
• Making Changes
• Check out of configuration items from baseline
repositories
• Making change and maintaining the traceability
between the change request and the physical
change
• Reviewing and testing as required
• Check-in of changed configuration item with new
version no.

Protection notice / Copyright notice


Page 27 Sep-07 P&Q For Internal Use Only
SCM Tasks – Configuration Control

A Change is approved by CCB (Change Control Board)


Changes are generated and tracked using change requests - what was
done, by whom, when, what remains to be done, special conditions,
current status etc...
Establish a change control process that specifies:
Who can initiate the change request
The individuals, group, or groups who are responsible for
evaluating, accepting, and tracking the change proposals for the
various baselined products
The “change impact” analysis required for each requested change
How the change history should be kept

Protection notice / Copyright notice


Page 28 Sep-07 P&Q For Internal Use Only
Incorporating a Change into the
Current Configuration Baseline

Change Requests

Impact New Version of


Analysis System Baseline

Approval of Change No Rejected


Request from CCB
Regression Tested
Yes Components

Approved
Change

Design &
Regression
Implement
Testing
Changes

Protection notice / Copyright notice


Page 29 Sep-07 P&Q For Internal Use Only
Configuration Status Reporting
• Generating configuration status report in the form of
system log by configuration management tool
• Maintaining a continuous record of the status and history
of all baselined items and proposed changes to them
• Reporting on the traceability of all changes to the
baseline throughout the software lifecycle
• Answers the questions
• What changes have been made to the system?
• What changes remain to be implemented?

Protection notice / Copyright notice


Page 30 Sep-07 P&Q For Internal Use Only
Configuration Status Reporting
Information required for comprehensive status accounting includes:
• The time at which each baseline was established
• When each software configuration item is changed and change was
included in the baseline
• A description of each configuration item
• All change requests
• The description of each software change
• The status of each software change request
• The changes planned for each identified future baseline
• A configuration item index that lists each configuration item along with its
creation date and current released version
• Change logs that show the history of the changes made to the source files
Protection notice / Copyright notice
as well asSep-07
Page 31 their release histories
P&Q For Internal Use Only
SCM Tasks – Backup Process

Backup Management
• define the frequency of backup, medium of backup,
responsibility of backup
• Identification of medium, storage location (fire proof
cabinet), access control
• System resources (disc space, memory etc...)
• Course of action for disaster recovery
• Restoration of Data on sample basis for checking the
integrity of backup

Protection notice / Copyright notice


Page 32 Sep-07 P&Q For Internal Use Only
Quiz

Q1 Changes in baseline work product is done if:


b) PM approves
c) CCB approves
d) TC approves

Q2 What is the next step after receiving a Change Request


 Update CM Plan
 Make changes to the software
 Conduct an impact analysis

Protection notice / Copyright notice


Page 33 Sep-07 P&Q For Internal Use Only
S/W Configuration Audit

Protection notice / Copyright notice


Page 34 Sep-07 P&Q For Internal Use Only
What is Configuration Audit

Definition
Verification of compliance to the configuration
management process defined by the project

Verification that
• what has been built is in conformance with what
was required
• change control procedures are followed and
records are available
• traceability is maintained between specification,
product and change requests

Protection notice / Copyright notice


Page 35 Sep-07 P&Q For Internal Use Only
Configuration Audit- Why?

• Prevent the wrong product from being delivered


• Trap any incomplete implementation (of original
specifications and change requests)
• Identify any mismatches (incompatibilities) between
different configuration items
• Confirm that configuration items are baselined
• Confirm that the records and documentation maintain
the traceability

Protection notice / Copyright notice


Page 36 Sep-07 P&Q For Internal Use Only
Configuration Audit- When?

• When a software is being delivered or a major release


is being made
• End of every phase
• Periodically (monthly or alternate months)

Protection notice / Copyright notice


Page 37 Sep-07 P&Q For Internal Use Only
Configuration Audit- Who?

• Auditee
Configuration Manager/ Team
• Auditor
• PQM or
• Internal/External auditor or
• TC

Protection notice / Copyright notice


Page 38 Sep-07 P&Q For Internal Use Only
Configuration Audit- How?

• Identify when the configuration audits will be done


• Assign the auditor
• Define the scope of the audit
• Prepare the SCM audit checklist
• Identify Non Conformances [Auditor]
• Close Non Conformances [PM/CM]
• Verify closure of Non Conformances [Auditor]

Protection notice / Copyright notice


Page 39 Sep-07 P&Q For Internal Use Only
Configuration Audit Checklist
Sl no CheckList Item Evidence Remarks
1. A reviewed and approved Configuration  CM Plan
management plan exists  Review protocols
2. All configurable items are identified along with
 CM plan
owner for each one of them.
3. Compliance with applicable SCM standards and CM plan
procedures is verified.
4. Software baselines are identified.  Baseline document
5. Baseline library contents are complete and  Baseline document
correct.
6. Changes to baselines, if any are approved by  the
Approved baseline changes
approval authority (mentioned in CM plan)
7. Change Request Logs are maintained.  Change request logs
8. All Change Requests can be tracked.  Change requests
 Comments in source code
9. Changes are approved by CCB before accepting  Approved change requests
the same
10. All Changes are documented & tracked to closure.
 Change requests
11. Changes are reviewed and tested before closure.
 Closed change requests
12. Items can be traced back to their parents.  Tracebility
13. Latest items/documents are in use.  Latest baseline
14. Configuration Status Reports are available.(either
Status reports
through tool or logged manually)
15. All check-ins to the elements in the VOB (like
 Comments
source code )are commented
16. Back-up/ archiving done as per plan  Back up records
17. Metrics pertaining to configuration management
 Metrics data
are collected as per QMS requirement
18. Senior management reviews the SCM activities  MOM/ mails
periodically
19. Appropriate Access Control and  CM Plan
automation is implemented for the
configuration objects
Ex. Use of triggers in Clear Case to
prohibit remove operation to ordinary
users
- to automatically broadcast mails when baseline Protection notice / Copyright notice
Page 40 documents
Sep-07 are released P&Q For Internal Use Only
Release Management

• Review and Approval of Baselines for Release


• Release numbering and Release instructions
• Release Media
• Release Back-up and Archives
• Release of Installation Instructions and other
deliverables (identified in quality plan)

Protection notice / Copyright notice


Page 41 Sep-07 P&Q For Internal Use Only
Release Management

For releases to customer the following are required:

• "Release Notification" is prepared and sent for review


and approval to stakeholders.

• PES meeting may be scheduled, if required

• Release to be baselined, verified and approved, as per


Release Notification

• Any deviations/concessions taken are documented in


the release notification
Protection notice / Copyright notice
Release Notes
Page 42 Sep-07 P&Q For Internal Use Only
Software Configuration
Management Tools

Protection notice / Copyright notice


Page 43 Sep-07 P&Q For Internal Use Only
SCM Tools

There are different SCM Tools available in the market


The common tools are VSS,CVS,PVCS,Sub Version
The tools like :
CM Synergy, ClearCase,Perforce,Serena,StarTeam
etc are efficient SCM tools which give support for
multi site development.

Protection notice / Copyright notice


Page 44 Sep-07 P&Q For Internal Use Only
Summary

• Overview to Software Configuration Management


• Scope of Software Configuration Management
• Why SCM: Main Classes of Problems
• Software Configuration Management Tasks
• Change Control
• Configuration Management Planning

Protection notice / Copyright notice


Page 45 Sep-07 P&Q For Internal Use Only
Any Questions?

Protection notice / Copyright notice


Page 46 Sep-07 P&Q For Internal Use Only
Thank you for your attention!

Protection notice / Copyright notice


Page 47 Sep-07 P&Q For Internal Use Only

You might also like