SlideShare a Scribd company logo
© 2003 IBM
Corporation
Why did the Tower of Babel
fail?
Siva Prasanth Rentala
GM-WWP, Pune
Configuration Management
© 2003 IBM Corporation
Why did the Tower of Babel fail?
The Tower of Babel project failed because of lack
of communication and organization.
Configuration Management
© 2003 IBM Corporation
"Now the whole earth had one language and few
words. And as men migrated from the east, they
found a plain in the land of Shinar and settled there.
And they said to one another, 'Come, let us make
bricks, and burn them thoroughly.' And they had
brick for stone, and bitumen for mortar. Then they
said, 'Come, let us build ourselves a city, and a tower
with its top in the heavens, and let us make a name
for ourselves, lest we be scattered abroad upon the
face of the whole earth.'
And the LORD came down to see the city and the
tower, which the sons of men had built. And the
LORD said, 'Behold, they are one people, and they
have all one language; and this is only the beginning
of what they will do; and nothing that they propose
to do will now be impossible for them. Come, let us
go down, and there confuse their language, that they
may not understand one another's speech.' So the
LORD scattered them abroad from there over the
face of all the earth, and they left off building the
city.' Therefore its name was called Babel, because
there the LORD confused the language of all the
earth; and from there the LORD scattered them
abroad over the face of all the earth."
Configuration Management
© 2003 IBM Corporation
Contents
Characteristics of Today’s Software industry
SCM Concepts and terminology
Why Software configuration management?
Requirements of Configuration management
Standard reports
Typical Uses of SCM
Configuration Management
© 2003 IBM Corporation
The Fundamental Law of Configuration
Management
Configuration Management is the
foundation of a software project.
Without it, no matter how talented the
staff, how large the budget, how robust
the development and test processes, or
how technically superior the
development tools, project discipline
will collapse and success will be left to
chance. Do Configuration Management
right, or forget about improving your
development process.
© 2003 IBM
Corporation
Today's Software industry
characteristics are..
© 2003 IBM
Corporation
Characteristic 1 -
Coordination & Communication
Men and months cannot be interchanged
Fred Brooks
• Number of communication channels
increase exponentially with number of
team members - the number of
coordination problems also increase
exponentially with the project size.
Configuration Management
© 2003 IBM Corporation
Communication Channels
Configuration Management
© 2003 IBM Corporation
# Team Members #Communication Channels
1 0
2 1
3 3
4 6
5 10
….. …..
n n*(n-1)/2
Configuration Management
© 2003 IBM Corporation
Characteristic 2 -
Software is Easy to Copy








Configuration Management
© 2003 IBM Corporation
Characteristic 3 -
Changes
• Different users / customers have different
requirements
• Get clarified / known at a later date
• Changes to business environment
• Technology change
• Personnel whims
Configuration Management
© 2003 IBM Corporation
Characteristic 4 -
Personnel Turnover
• Developers leave
• Users change
Further Adds to the Coordination problem
Configuration Management
© 2003 IBM Corporation
Resulting Problems
• Listing seems OK; program does not work
• Works in Pune, misbehaves in Detroit.
• We had customized for this client, how do we
install the upgrade now?
• I had fixed this bug last month. How did it re-
appear?
• I haven’t changed the program. Why is it now
blowing up?
• Which is the latest source? I need to put a
patch.
• In the last month, the user asked for this change
and now she does not want it
• Where did Gates leave the programs he was
working on?
Configuration Management
© 2003 IBM Corporation
Main Classes of Problems
• Double maintenance problems
• Shared data
• Simultaneous update
• Missing / unknown version problem
Configuration Management
© 2003 IBM Corporation
Double Maintenance
• Multiple copies of same software in use
• Fix in one
- SHOULD FIX IN OTHERS
• Example
- Same set of common routines in two systems
- Same system - multiple sites
• forget to inform
• sites detect bug at same time and “fix”
differently
• = = > > DIVERGENCE
• Should do
- Bug fixed in all copies
- Fix same bug in identical manner in all copies
Configuration Management
© 2003 IBM Corporation
Shared Data
• Changes made in one program interfere with proper
functioning of other program
- Example : subroutines, MW objects
• Need
- Control of modifications
- Good communications
Configuration Management
© 2003 IBM Corporation
Simultaneous Update
• One module being worked on by more than one
programmer
- Changes made by one programmer disappear
• Need
- Better division into modules
- Ensure simultaneous working
Configuration Management
© 2003 IBM Corporation
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
?
Configuration Management
© 2003 IBM Corporation
Why Software Configuration
Management
• SCM addresses all these issues!!
AbracadabraAbracadabra
Configuration Management
© 2003 IBM Corporation
SCM provides visibility into the status of the
evolving software product.
SCM answers the following: Who, What, When,
and Why.
 Who made the changes?
 What changes were made to the software?
 When were the changes made?
 Why were the changes made?
Who will benefit from SCM(Importance in
descending order) :
 Software developers
 Project managers
 Quality Assurance (QA) personnel
 Testers
 Customer
Configuration Management
© 2003 IBM Corporation
Program Families &
Configurations
A
D
E
B
C
F
A
CLIENT-1
D
G
B
W
E
F
CLIENT-2
Applications
Applications
Configuration Management
© 2003 IBM Corporation
A
D
E
B C
F
G
W
CLIENT-A
A
B
C
D
E
F
CLIENT-B
A
B
D
E
F
G
W
Applications
Configuration Management
© 2003 IBM Corporation
SCM
Concepts & Terminology
Configuration Management
© 2003 IBM Corporation
Definitions
The arrangement of a computer system or
component as defined by the number,
nature, and interconnections of its
constituent parts
Configuration
The art of identifying, organizing and
controlling modifications to the software
being built by a programming team. The
goal is to maximize productivity by
minimizing mistakes.
Configuration Management
Configuration Management
© 2003 IBM Corporation
Configuration Management
Configuration Management
© 2003 IBM Corporation
Configuration Identification
The approved documentation or description
that identifies and defines a configuration
item's (CI) functional and physical
characteristics in the form of a specification
or standard, algorithm or code, and interface
control description.
A
B
C
D
Configuration Management
© 2003 IBM Corporation
Configuration Control
• Evaluation, coordination, approval or disapproval,
and implementation of changes to configuration
items after formal establishment of their
configuration identification
Configuration Management
© 2003 IBM Corporation
Configuration Status Accounting
• Recording and reporting of information needed to
manage a configuration effectively. Includes a
listing of the approved configuration
identification, the status of the proposed changes
to the configuration identification, and the
implementation status of approved changes.
CI = 30
CR = 2
PR = 1
Configuration Management
© 2003 IBM Corporation
Configuration Audit
• Verifying the following:
•All required configuration items have been
produced
•The current version agrees with the specified
requirements
•The technical documentation completely and
accurately describes that configuration items
•All change requests have been resolved
Configuration Management
© 2003 IBM Corporation
Requirements of Configuration Management
Configuration Management
© 2003 IBM Corporation
CM Requirements
• Identification of Configuration Items
• Establishment of Baselines
• Document control
• Version control
• Management of Workspaces
• Creation of Builds
• Backup & Archival
• Management of Changes to Baselined
Configuration Items
• Status Accounting
• Configuration Audits
Configuration Management
© 2003 IBM Corporation
Configuration Items and Baselines
• Configuration Item
- An aggregation of software, documents
and data that is treated as a single entity
in the configuration management process
There are 3 types of CIs:
Baselined – Formally reviewed and agreed
document/source code, which is basis
for, further development. E.g.
Requirement specification document,
design document etc.
Controlled and Managed – Documents
describing the admin and project
Management activities. E.g. Project
management plan, task allocation and
project schedule documents, coding or
GUI guidelines
Controlled – Documents obtained from
the customer which are not managed by
us. E.g. reference technical material.
Configuration Management
© 2003 IBM Corporation
 What is Baseline?
- A item 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
procedures
Configuration Management
© 2003 IBM Corporation
Configuration Items & Baselines -
Typical Scenario
• Definition Baseline - Created at the end of
Requirement Specifications. Typical
configuration items (CI) -
- Requirement Specifications
- Project Plan
- Design Standards / Guidelines
- Acceptance Test Plan
• Design Baseline - Created at the end of
Design. Typical CIs -
- System Design Specification
- Program Specification
- Data Base Design
- Coding Standards
- System Test Plan
- User Manual
- User Interface Standards
- Testing Standards
Configuration Management
© 2003 IBM Corporation
• Code / Unit Test Baseline - Created at the
end of coding and unit. Typical
configuration items (CI) -
- source code
- object code
- unit test data / scripts
• Testing Baseline - Created at the end of
system testing . Typical CIs -
- System test data
- system test scripts
- operations manual
- installation manual
Configuration Management
© 2003 IBM Corporation
Definition Baseline Creation - A
schematic
Individual workspaces
Internal review changes
Definition Baseline
Internal review Workspace
Customer Review Workspace
Formal change management
procedures become applicable
Configuration
Audit
Review
Log
Review
Log
Configuration Management
© 2003 IBM Corporation
Document control
 Document Control procedure ensures the
traceability of all the documents.
It involves the following tasks:
• Defining the naming scheme.
• Updating Document Record List (DCR) of
the documents to reflect the changes and
assigning of version and release nos.
• Provides usage of the documents by
giving access rights to different folders.
MyName is
Mr.Unique
Configuration Management
© 2003 IBM Corporation
Version
 A variant of some artifact; later versions
of an artifact typically expand on earlier
versions.
Version Control
 Version Control ensures the ability to
reproduce any version of the software at
any given time. It controls versions of
source code, executables and
documents .It provides version change
history to ensure trace-ability.
A1
A2
A3A4
Configuration Management
© 2003 IBM Corporation
An operational version of a system or part of
a system that demonstrates a subset of
the capabilities to be provided in the final
product.
Configuration Management
© 2003 IBM Corporation
Work space management
 Workspaces refer to ‘private’ areas where
developers can implement and test code
in accordance with the project’s adopted
standards in relative isolation from other
developers.
Configuration Management
© 2003 IBM Corporation
 Uncertainty is the only certain in this
world.
Why Backup?
Configuration Management
© 2003 IBM Corporation
Change Control
Configuration Management
© 2003 IBM Corporation
I can make the change directly in the
baseline copy. Its just a one line
change, so I don’t want to fool
around with Change Request, check-
out, check-in, etc
Configuration Management
© 2003 IBM Corporation
Change Control
• Record of changes
• Approval of change requests after analysing
impacts (impact on retest & review, think it
as another proposed)
• Maintaining of baselines
• Traceability between changes and change
requests and vice versa
IEEE Definition
An element of configuration management,
consisting of the evaluation, coordination,
approval or disapproval, and implementation of
changes to configuration items after formal
establishment of their configuration
identification
Configuration Management
© 2003 IBM Corporation
Change Management Process
Change request documented
Change request Evaluated
Change request reviewed for approval CCB
approved
Change order prepared
Configuration items, tasks, QC required is
documented
Configuration items checked out
Change made; QC activities carried out
Configuration audit carried out
Changed items carried out
New product release made
Pending rejected
Configuration Management
© 2003 IBM Corporation
Change Request
XYZ Software Corp. Change Request
Project: Initiated By: Date:
Description of Change Requested:
Benefits Expected:
Signature of Initiator: Attachments:
Evaluated by: Change Request No.
Technical Impacts:
Estimates for costs and schedule
Signature of evaluator: Attachments
Date:
Approving Auth Signature Date
Recommendations
Change Order Number
Configuration Management
© 2003 IBM Corporation
Configuration Management
© 2003 IBM Corporation
Change Control Board (CCB)
• Also called Configuration Control Board
• A group of people responsible for evaluating
and approving and disapproving proposed
changes to configuration items, and for
implementation of approved changes.
• Typical CCB members
- Project Manager
- User Representative
- Quality Controller
- Configuration Controller
Configuration Management
© 2003 IBM Corporation
Some Good Practices
• Keep version history in the configuration
item.
• Item to contain exact item name, version
number, date
• Identify configuration items to be tracked
• Code should have history in the comment
• Highlight the changes in the document
atleast for two versions.
Configuration Management
© 2003 IBM Corporation
Configuration Audit
Configuration Management
© 2003 IBM Corporation
Configuration Audits
• To ensure that what has been built is in
conformance with what was required
(original specifications and change requests)
by analysing :
- Test reports
- review reports
- change logs
Definition
Verification of a configuration item’s
compliance with its configuration identification
Configuration Management
© 2003 IBM Corporation
Status Accounting
An ounce of derivation is
worth a pound of analysis
- Wayne Babich
Configuration Management
© 2003 IBM Corporation
Configuration Status Accounting & Reporting
• Keep track of
- Current identification of items
- Configuration of delivered software
- Status of change requests / problem
reports
- Status of approved changes
IEEE Definition
An element of configuration management,
consisting of the recording and reporting of
information needed to manage a configuration
effectively
Configuration Management
© 2003 IBM Corporation
Typical Information
Baseline Library
Items /
Units
Baseline
Units
Release
Release
Units
Change OrderBackup
Backup
Units
Check-in /
Check-out
Change Request/
Problem Log
Configuration Management
© 2003 IBM Corporation
Standard Reports
• Summary list Change Requests / Problem
Reports
• List of CR / PR pending approval
• Summary list of Change Orders
• List of Change Orders pending completion
• Items and versions of a Baseline
• Current set of units in the library
• List of changes since Baseline
• List of checked-out items
• History of backups
• History of releases
• List of items / versions in a baseline
• List of items / version in a release
Configuration Management
© 2003 IBM Corporation
Typical Uses of the Configuration Accounting
Data
• In which backup is version 1.6 of P13?
• What are the program level changes between
release 5.1 and 5.2?
• Which programs were replaced in release
5.2?
• Which items were changed for Change Order
671? What were the versions of the units
before and after the change? Have all the
changes been incorporated and checked-in?
Configuration Management
© 2003 IBM Corporation
© 2003 IBM
Corporation
Can we make SCM happen?
Configuration Management
© 2003 IBM Corporation
Thank You

More Related Content

PPT
Ibm software configuration management 24-6-2010
PPT
Ibmsoftwareconfigurationmanagement 24-6-2010-101119015120-phpapp02
PDF
Modernizing Your IMS Environment Without Rewriting Your Applications
PDF
Flexible DevOps Deployment of Enterprise Test Environments in the Cloud
ODP
How to reinvent process portal
PDF
Social Conndections VI -- Debugging IBM Connections During Install And Operation
PDF
Elevating Application Performance with the latest IBM COBOL offerings
PDF
Impact 2013 2963 - IBM Business Process Manager Top Practices
Ibm software configuration management 24-6-2010
Ibmsoftwareconfigurationmanagement 24-6-2010-101119015120-phpapp02
Modernizing Your IMS Environment Without Rewriting Your Applications
Flexible DevOps Deployment of Enterprise Test Environments in the Cloud
How to reinvent process portal
Social Conndections VI -- Debugging IBM Connections During Install And Operation
Elevating Application Performance with the latest IBM COBOL offerings
Impact 2013 2963 - IBM Business Process Manager Top Practices

What's hot (16)

PDF
Think2018 2314-Microservices and BPM-can they coexist?
PDF
Clm Deployment Options - Scaling the Collaborative Lifecycle Management (CLM)...
PDF
Microservicessai 141024145932-conversion-gate01 (1)
PDF
SAP PLM BOM (Bill of Material) Redlining
PPTX
Bpms ecu2014
PDF
IBM Server Makeover. Your first step towards lower costs, lower risks
PDF
How to Transform Enterprise Applications to On-premise Clouds with Wipro and ...
PDF
Lotusphere 2012: BP117 Server Colsolidations Done Right
PPTX
CRM Desktop Typical Implementation Project by InvisibleCRM
PDF
Follow the Flow - Essentials of User Interaction Design
PPTX
BMC Control-M for SAP, BPI, and AFT - VPMA - Secret Weapons for a Successful...
PPTX
Control m customers using big data
PDF
IOD 2012_ADP_092912
PDF
3 hang on_a_minute-ankur_goyal
 
PPTX
4515 Modernize your CICS applications for Mobile and Cloud
PPT
Control M Plug-in for Databases
Think2018 2314-Microservices and BPM-can they coexist?
Clm Deployment Options - Scaling the Collaborative Lifecycle Management (CLM)...
Microservicessai 141024145932-conversion-gate01 (1)
SAP PLM BOM (Bill of Material) Redlining
Bpms ecu2014
IBM Server Makeover. Your first step towards lower costs, lower risks
How to Transform Enterprise Applications to On-premise Clouds with Wipro and ...
Lotusphere 2012: BP117 Server Colsolidations Done Right
CRM Desktop Typical Implementation Project by InvisibleCRM
Follow the Flow - Essentials of User Interaction Design
BMC Control-M for SAP, BPI, and AFT - VPMA - Secret Weapons for a Successful...
Control m customers using big data
IOD 2012_ADP_092912
3 hang on_a_minute-ankur_goyal
 
4515 Modernize your CICS applications for Mobile and Cloud
Control M Plug-in for Databases
Ad

Similar to Scm (20)

PPT
PPT
PDF
DBD 2414 - Iterative Web-Based Designer for Software Defined Environments (In...
PDF
UrbanCode Deploy DevOps Best Practices
DOC
Resume Kelly Db
PDF
New Continuous Release and Deployment Capabilities for CICS Customers v4
PPTX
From Continuous Integration to DevOps - Japan Innovate 2013
PPTX
TheTricky Bits of Deployment Automation
PDF
What’s New and Coming in IBM Connections
PDF
Changing application demands: What developers need to know
DOCX
Resume Shirley 2015
PDF
Resume_Arindom-March-3rd
PDF
software configuration management
PDF
Agile and continuous delivery – How IBM Watson Workspace is built
DOC
Resume_Arindom_Updated
PDF
Making the Dinosaur Dance - RDz, RTC and UrbanCode Lunch and Learn slides
PDF
The Future of DevOps and UrbanCode
DOC
Syam Prasad Ramineni_MF_Resume
DOC
Sivaprasanth Rentala_Kedar profile
DOC
Asha Jacob_Resume
DBD 2414 - Iterative Web-Based Designer for Software Defined Environments (In...
UrbanCode Deploy DevOps Best Practices
Resume Kelly Db
New Continuous Release and Deployment Capabilities for CICS Customers v4
From Continuous Integration to DevOps - Japan Innovate 2013
TheTricky Bits of Deployment Automation
What’s New and Coming in IBM Connections
Changing application demands: What developers need to know
Resume Shirley 2015
Resume_Arindom-March-3rd
software configuration management
Agile and continuous delivery – How IBM Watson Workspace is built
Resume_Arindom_Updated
Making the Dinosaur Dance - RDz, RTC and UrbanCode Lunch and Learn slides
The Future of DevOps and UrbanCode
Syam Prasad Ramineni_MF_Resume
Sivaprasanth Rentala_Kedar profile
Asha Jacob_Resume
Ad

More from SivaprasanthRentala1975 (20)

PPT
Testing using load runner performance testing
PPT
Why contract savings are missing
PPT
The new mainframe
PPT
Test execution may_04_2006
PPT
Telecom testing
PPT
PPT
Pt presentation1
PPT
Pp employee learnnig initiative-iss-220-g tle 2007
PPT
Performance testing and rpt
PPT
Xpediter kanbay
PPS
Copy of good quotes.ppt
PPT
Contract savings new
PPT
Contract savings schema
PPT
Contract savings may 10th 2004 by gm euro
PPT
Contract savings job overview
PPT
Contract savings
Testing using load runner performance testing
Why contract savings are missing
The new mainframe
Test execution may_04_2006
Telecom testing
Pt presentation1
Pp employee learnnig initiative-iss-220-g tle 2007
Performance testing and rpt
Xpediter kanbay
Copy of good quotes.ppt
Contract savings new
Contract savings schema
Contract savings may 10th 2004 by gm euro
Contract savings job overview
Contract savings

Recently uploaded (20)

PPTX
A powerpoint presentation on the Revised K-10 Science Shaping Paper
PPTX
Unit 4 Skeletal System.ppt.pptxopresentatiom
PDF
Classroom Observation Tools for Teachers
PDF
A GUIDE TO GENETICS FOR UNDERGRADUATE MEDICAL STUDENTS
PDF
advance database management system book.pdf
PDF
Chinmaya Tiranga quiz Grand Finale.pdf
PDF
medical_surgical_nursing_10th_edition_ignatavicius_TEST_BANK_pdf.pdf
PDF
Trump Administration's workforce development strategy
PPTX
Cell Types and Its function , kingdom of life
PPTX
History, Philosophy and sociology of education (1).pptx
PDF
RMMM.pdf make it easy to upload and study
PDF
Paper A Mock Exam 9_ Attempt review.pdf.
PDF
Black Hat USA 2025 - Micro ICS Summit - ICS/OT Threat Landscape
PDF
What if we spent less time fighting change, and more time building what’s rig...
PDF
IGGE1 Understanding the Self1234567891011
PDF
LDMMIA Reiki Yoga Finals Review Spring Summer
PDF
Hazard Identification & Risk Assessment .pdf
PPTX
1st Inaugural Professorial Lecture held on 19th February 2020 (Governance and...
PDF
ChatGPT for Dummies - Pam Baker Ccesa007.pdf
PDF
RTP_AR_KS1_Tutor's Guide_English [FOR REPRODUCTION].pdf
A powerpoint presentation on the Revised K-10 Science Shaping Paper
Unit 4 Skeletal System.ppt.pptxopresentatiom
Classroom Observation Tools for Teachers
A GUIDE TO GENETICS FOR UNDERGRADUATE MEDICAL STUDENTS
advance database management system book.pdf
Chinmaya Tiranga quiz Grand Finale.pdf
medical_surgical_nursing_10th_edition_ignatavicius_TEST_BANK_pdf.pdf
Trump Administration's workforce development strategy
Cell Types and Its function , kingdom of life
History, Philosophy and sociology of education (1).pptx
RMMM.pdf make it easy to upload and study
Paper A Mock Exam 9_ Attempt review.pdf.
Black Hat USA 2025 - Micro ICS Summit - ICS/OT Threat Landscape
What if we spent less time fighting change, and more time building what’s rig...
IGGE1 Understanding the Self1234567891011
LDMMIA Reiki Yoga Finals Review Spring Summer
Hazard Identification & Risk Assessment .pdf
1st Inaugural Professorial Lecture held on 19th February 2020 (Governance and...
ChatGPT for Dummies - Pam Baker Ccesa007.pdf
RTP_AR_KS1_Tutor's Guide_English [FOR REPRODUCTION].pdf

Scm

  • 1. © 2003 IBM Corporation Why did the Tower of Babel fail? Siva Prasanth Rentala GM-WWP, Pune
  • 2. Configuration Management © 2003 IBM Corporation Why did the Tower of Babel fail? The Tower of Babel project failed because of lack of communication and organization.
  • 3. Configuration Management © 2003 IBM Corporation "Now the whole earth had one language and few words. And as men migrated from the east, they found a plain in the land of Shinar and settled there. And they said to one another, 'Come, let us make bricks, and burn them thoroughly.' And they had brick for stone, and bitumen for mortar. Then they said, 'Come, let us build ourselves a city, and a tower with its top in the heavens, and let us make a name for ourselves, lest we be scattered abroad upon the face of the whole earth.' And the LORD came down to see the city and the tower, which the sons of men had built. And the LORD said, 'Behold, they are one people, and they have all one language; and this is only the beginning of what they will do; and nothing that they propose to do will now be impossible for them. Come, let us go down, and there confuse their language, that they may not understand one another's speech.' So the LORD scattered them abroad from there over the face of all the earth, and they left off building the city.' Therefore its name was called Babel, because there the LORD confused the language of all the earth; and from there the LORD scattered them abroad over the face of all the earth."
  • 4. Configuration Management © 2003 IBM Corporation Contents Characteristics of Today’s Software industry SCM Concepts and terminology Why Software configuration management? Requirements of Configuration management Standard reports Typical Uses of SCM
  • 5. Configuration Management © 2003 IBM Corporation The Fundamental Law of Configuration Management Configuration Management is the foundation of a software project. Without it, no matter how talented the staff, how large the budget, how robust the development and test processes, or how technically superior the development tools, project discipline will collapse and success will be left to chance. Do Configuration Management right, or forget about improving your development process.
  • 6. © 2003 IBM Corporation Today's Software industry characteristics are..
  • 7. © 2003 IBM Corporation Characteristic 1 - Coordination & Communication Men and months cannot be interchanged Fred Brooks • Number of communication channels increase exponentially with number of team members - the number of coordination problems also increase exponentially with the project size.
  • 8. Configuration Management © 2003 IBM Corporation Communication Channels
  • 9. Configuration Management © 2003 IBM Corporation # Team Members #Communication Channels 1 0 2 1 3 3 4 6 5 10 ….. ….. n n*(n-1)/2
  • 10. Configuration Management © 2003 IBM Corporation Characteristic 2 - Software is Easy to Copy        
  • 11. Configuration Management © 2003 IBM Corporation Characteristic 3 - Changes • Different users / customers have different requirements • Get clarified / known at a later date • Changes to business environment • Technology change • Personnel whims
  • 12. Configuration Management © 2003 IBM Corporation Characteristic 4 - Personnel Turnover • Developers leave • Users change Further Adds to the Coordination problem
  • 13. Configuration Management © 2003 IBM Corporation Resulting Problems • Listing seems OK; program does not work • Works in Pune, misbehaves in Detroit. • We had customized for this client, how do we install the upgrade now? • I had fixed this bug last month. How did it re- appear? • I haven’t changed the program. Why is it now blowing up? • Which is the latest source? I need to put a patch. • In the last month, the user asked for this change and now she does not want it • Where did Gates leave the programs he was working on?
  • 14. Configuration Management © 2003 IBM Corporation Main Classes of Problems • Double maintenance problems • Shared data • Simultaneous update • Missing / unknown version problem
  • 15. Configuration Management © 2003 IBM Corporation Double Maintenance • Multiple copies of same software in use • Fix in one - SHOULD FIX IN OTHERS • Example - Same set of common routines in two systems - Same system - multiple sites • forget to inform • sites detect bug at same time and “fix” differently • = = > > DIVERGENCE • Should do - Bug fixed in all copies - Fix same bug in identical manner in all copies
  • 16. Configuration Management © 2003 IBM Corporation Shared Data • Changes made in one program interfere with proper functioning of other program - Example : subroutines, MW objects • Need - Control of modifications - Good communications
  • 17. Configuration Management © 2003 IBM Corporation Simultaneous Update • One module being worked on by more than one programmer - Changes made by one programmer disappear • Need - Better division into modules - Ensure simultaneous working
  • 18. Configuration Management © 2003 IBM Corporation 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 ?
  • 19. Configuration Management © 2003 IBM Corporation Why Software Configuration Management • SCM addresses all these issues!! AbracadabraAbracadabra
  • 20. Configuration Management © 2003 IBM Corporation SCM provides visibility into the status of the evolving software product. SCM answers the following: Who, What, When, and Why.  Who made the changes?  What changes were made to the software?  When were the changes made?  Why were the changes made? Who will benefit from SCM(Importance in descending order) :  Software developers  Project managers  Quality Assurance (QA) personnel  Testers  Customer
  • 21. Configuration Management © 2003 IBM Corporation Program Families & Configurations A D E B C F A CLIENT-1 D G B W E F CLIENT-2 Applications Applications
  • 22. Configuration Management © 2003 IBM Corporation A D E B C F G W CLIENT-A A B C D E F CLIENT-B A B D E F G W Applications
  • 23. Configuration Management © 2003 IBM Corporation SCM Concepts & Terminology
  • 24. Configuration Management © 2003 IBM Corporation Definitions The arrangement of a computer system or component as defined by the number, nature, and interconnections of its constituent parts Configuration The art of identifying, organizing and controlling modifications to the software being built by a programming team. The goal is to maximize productivity by minimizing mistakes. Configuration Management
  • 25. Configuration Management © 2003 IBM Corporation Configuration Management
  • 26. Configuration Management © 2003 IBM Corporation Configuration Identification The approved documentation or description that identifies and defines a configuration item's (CI) functional and physical characteristics in the form of a specification or standard, algorithm or code, and interface control description. A B C D
  • 27. Configuration Management © 2003 IBM Corporation Configuration Control • Evaluation, coordination, approval or disapproval, and implementation of changes to configuration items after formal establishment of their configuration identification
  • 28. Configuration Management © 2003 IBM Corporation Configuration Status Accounting • Recording and reporting of information needed to manage a configuration effectively. Includes a listing of the approved configuration identification, the status of the proposed changes to the configuration identification, and the implementation status of approved changes. CI = 30 CR = 2 PR = 1
  • 29. Configuration Management © 2003 IBM Corporation Configuration Audit • Verifying the following: •All required configuration items have been produced •The current version agrees with the specified requirements •The technical documentation completely and accurately describes that configuration items •All change requests have been resolved
  • 30. Configuration Management © 2003 IBM Corporation Requirements of Configuration Management
  • 31. Configuration Management © 2003 IBM Corporation CM Requirements • Identification of Configuration Items • Establishment of Baselines • Document control • Version control • Management of Workspaces • Creation of Builds • Backup & Archival • Management of Changes to Baselined Configuration Items • Status Accounting • Configuration Audits
  • 32. Configuration Management © 2003 IBM Corporation Configuration Items and Baselines • Configuration Item - An aggregation of software, documents and data that is treated as a single entity in the configuration management process There are 3 types of CIs: Baselined – Formally reviewed and agreed document/source code, which is basis for, further development. E.g. Requirement specification document, design document etc. Controlled and Managed – Documents describing the admin and project Management activities. E.g. Project management plan, task allocation and project schedule documents, coding or GUI guidelines Controlled – Documents obtained from the customer which are not managed by us. E.g. reference technical material.
  • 33. Configuration Management © 2003 IBM Corporation  What is Baseline? - A item 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 procedures
  • 34. Configuration Management © 2003 IBM Corporation Configuration Items & Baselines - Typical Scenario • Definition Baseline - Created at the end of Requirement Specifications. Typical configuration items (CI) - - Requirement Specifications - Project Plan - Design Standards / Guidelines - Acceptance Test Plan • Design Baseline - Created at the end of Design. Typical CIs - - System Design Specification - Program Specification - Data Base Design - Coding Standards - System Test Plan - User Manual - User Interface Standards - Testing Standards
  • 35. Configuration Management © 2003 IBM Corporation • Code / Unit Test Baseline - Created at the end of coding and unit. Typical configuration items (CI) - - source code - object code - unit test data / scripts • Testing Baseline - Created at the end of system testing . Typical CIs - - System test data - system test scripts - operations manual - installation manual
  • 36. Configuration Management © 2003 IBM Corporation Definition Baseline Creation - A schematic Individual workspaces Internal review changes Definition Baseline Internal review Workspace Customer Review Workspace Formal change management procedures become applicable Configuration Audit Review Log Review Log
  • 37. Configuration Management © 2003 IBM Corporation Document control  Document Control procedure ensures the traceability of all the documents. It involves the following tasks: • Defining the naming scheme. • Updating Document Record List (DCR) of the documents to reflect the changes and assigning of version and release nos. • Provides usage of the documents by giving access rights to different folders. MyName is Mr.Unique
  • 38. Configuration Management © 2003 IBM Corporation Version  A variant of some artifact; later versions of an artifact typically expand on earlier versions. Version Control  Version Control ensures the ability to reproduce any version of the software at any given time. It controls versions of source code, executables and documents .It provides version change history to ensure trace-ability. A1 A2 A3A4
  • 39. Configuration Management © 2003 IBM Corporation An operational version of a system or part of a system that demonstrates a subset of the capabilities to be provided in the final product.
  • 40. Configuration Management © 2003 IBM Corporation Work space management  Workspaces refer to ‘private’ areas where developers can implement and test code in accordance with the project’s adopted standards in relative isolation from other developers.
  • 41. Configuration Management © 2003 IBM Corporation  Uncertainty is the only certain in this world. Why Backup?
  • 42. Configuration Management © 2003 IBM Corporation Change Control
  • 43. Configuration Management © 2003 IBM Corporation I can make the change directly in the baseline copy. Its just a one line change, so I don’t want to fool around with Change Request, check- out, check-in, etc
  • 44. Configuration Management © 2003 IBM Corporation Change Control • Record of changes • Approval of change requests after analysing impacts (impact on retest & review, think it as another proposed) • Maintaining of baselines • Traceability between changes and change requests and vice versa IEEE Definition An element of configuration management, consisting of the evaluation, coordination, approval or disapproval, and implementation of changes to configuration items after formal establishment of their configuration identification
  • 45. Configuration Management © 2003 IBM Corporation Change Management Process Change request documented Change request Evaluated Change request reviewed for approval CCB approved Change order prepared Configuration items, tasks, QC required is documented Configuration items checked out Change made; QC activities carried out Configuration audit carried out Changed items carried out New product release made Pending rejected
  • 46. Configuration Management © 2003 IBM Corporation Change Request XYZ Software Corp. Change Request Project: Initiated By: Date: Description of Change Requested: Benefits Expected: Signature of Initiator: Attachments: Evaluated by: Change Request No. Technical Impacts: Estimates for costs and schedule Signature of evaluator: Attachments Date: Approving Auth Signature Date Recommendations Change Order Number
  • 48. Configuration Management © 2003 IBM Corporation Change Control Board (CCB) • Also called Configuration Control Board • A group of people responsible for evaluating and approving and disapproving proposed changes to configuration items, and for implementation of approved changes. • Typical CCB members - Project Manager - User Representative - Quality Controller - Configuration Controller
  • 49. Configuration Management © 2003 IBM Corporation Some Good Practices • Keep version history in the configuration item. • Item to contain exact item name, version number, date • Identify configuration items to be tracked • Code should have history in the comment • Highlight the changes in the document atleast for two versions.
  • 50. Configuration Management © 2003 IBM Corporation Configuration Audit
  • 51. Configuration Management © 2003 IBM Corporation Configuration Audits • To ensure that what has been built is in conformance with what was required (original specifications and change requests) by analysing : - Test reports - review reports - change logs Definition Verification of a configuration item’s compliance with its configuration identification
  • 52. Configuration Management © 2003 IBM Corporation Status Accounting An ounce of derivation is worth a pound of analysis - Wayne Babich
  • 53. Configuration Management © 2003 IBM Corporation Configuration Status Accounting & Reporting • Keep track of - Current identification of items - Configuration of delivered software - Status of change requests / problem reports - Status of approved changes IEEE Definition An element of configuration management, consisting of the recording and reporting of information needed to manage a configuration effectively
  • 54. Configuration Management © 2003 IBM Corporation Typical Information Baseline Library Items / Units Baseline Units Release Release Units Change OrderBackup Backup Units Check-in / Check-out Change Request/ Problem Log
  • 55. Configuration Management © 2003 IBM Corporation Standard Reports • Summary list Change Requests / Problem Reports • List of CR / PR pending approval • Summary list of Change Orders • List of Change Orders pending completion • Items and versions of a Baseline • Current set of units in the library • List of changes since Baseline • List of checked-out items • History of backups • History of releases • List of items / versions in a baseline • List of items / version in a release
  • 56. Configuration Management © 2003 IBM Corporation Typical Uses of the Configuration Accounting Data • In which backup is version 1.6 of P13? • What are the program level changes between release 5.1 and 5.2? • Which programs were replaced in release 5.2? • Which items were changed for Change Order 671? What were the versions of the units before and after the change? Have all the changes been incorporated and checked-in?
  • 58. © 2003 IBM Corporation Can we make SCM happen?
  • 59. Configuration Management © 2003 IBM Corporation Thank You