SlideShare a Scribd company logo
1 of 58
Software Configuration
Management
(SCM)
[1.0]
VOYAGER
L&T Information
Technology Ltd.
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
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.
Why did the Tower of Babel fail?
The Tower of Babel project failed
because of lack of communication
and organization
Today's Software
industry characteristics
are..
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.
Communication Channels
# Team Members #Communication Channels
1 0
2 1
3 3
4 6
5 10
….. …..
n n*(n-1)/2
Characteristic 2 -
Software is Easy to Copy








Characteristic 3 -
Changes
• Different users / customers have different
requirements
• Get clarified / known at a later date
• Changes to business environment
• Technology change
• Personnel whims
Characteristic 4 -
Personnel Turnover
• Developers leave
• Users change
Further Adds to the Coordination problem
Resulting Problems
• Listing seems OK; program does not work
• Works in Bombay, misbehaves in Delhi
• 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?
Main Classes of Problems
• Double maintenance problems
• Shared data
• Simultaneous update
• Missing / unknown version problem
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
Shared Data
• Changes made in one program interfere with proper
functioning of other program
- Example : subroutines, MW objects
• Need
- Control of modifications
- Good communications
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
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
?
Why Software Configuration
Management
• SCM addresses all these issues!!
AbracadabraAbracadabra
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
Program Families &
Configurations
A
D
E
B
C
F
A
CLIENT-1
D
G
B
W
E
F
CLIENT-2
Applications
Applications
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
SCM
Concepts & Terminology
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
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 Control
• Evaluation, coordination, approval or disapproval,
and implementation of changes to configuration
items after formal establishment of their
configuration identification
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 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
Requirements of
Configuration Management
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 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.
• 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 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
• 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
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
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
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
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.
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.
• Uncertainty is the only certain in
this world.
Why Backup?
Change Control
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
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
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
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
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
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 Audit
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
Status Accounting
An ounce of derivation is
worth a pound of analysis
- Wayne Babich
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
Typical Information
Baseline Library
Items /
Units
Baseline
Units
Release
Release
Units
Change OrderBackup
Backup
Units
Check-in /
Check-out
Change Request/
Problem Log
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
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?
Can we make SCM
happen?
Thank You

More Related Content

What's hot

Software configuration management in deep
Software configuration management in deepSoftware configuration management in deep
Software configuration management in deepFáber D. Giraldo
 
Introduction To Software Configuration Management
Introduction To Software Configuration ManagementIntroduction To Software Configuration Management
Introduction To Software Configuration ManagementRajesh Kumar
 
Configuration Management
Configuration ManagementConfiguration Management
Configuration ManagementRajesh Kumar
 
Software Configuration Management
Software Configuration ManagementSoftware Configuration Management
Software Configuration Managementelliando dias
 
Configuration Management Best Practices
Configuration Management Best PracticesConfiguration Management Best Practices
Configuration Management Best PracticesTechWell
 
Software Configuration Management (SCM)
Software Configuration Management (SCM)Software Configuration Management (SCM)
Software Configuration Management (SCM)Nishkarsh Gupta
 
Software Configuration Management
Software Configuration ManagementSoftware Configuration Management
Software Configuration ManagementJeyanthiR
 
Software engineering lecture notes
Software engineering lecture notesSoftware engineering lecture notes
Software engineering lecture notesTEJVEER SINGH
 
Configuration Management
Configuration ManagementConfiguration Management
Configuration ManagementSaqib Raza
 
A Brief Introduction to Software Configuration Management
A Brief Introduction to Software Configuration ManagementA Brief Introduction to Software Configuration Management
A Brief Introduction to Software Configuration ManagementMd Mamunur Rashid
 
Software management framework
Software management frameworkSoftware management framework
Software management frameworkKuppusamy P
 
Configuration Management
Configuration ManagementConfiguration Management
Configuration Managementelliando dias
 
Beit 381 se lec 3 - 46 - 12 feb14 - sd needs teams to develop intro
Beit 381 se lec 3 - 46  - 12 feb14 - sd needs teams to develop introBeit 381 se lec 3 - 46  - 12 feb14 - sd needs teams to develop intro
Beit 381 se lec 3 - 46 - 12 feb14 - sd needs teams to develop introbabak danyal
 
مدخل الى هندسة البرمجيات _ Introduction to Software Engineering
مدخل الى هندسة البرمجيات _ Introduction to Software Engineeringمدخل الى هندسة البرمجيات _ Introduction to Software Engineering
مدخل الى هندسة البرمجيات _ Introduction to Software EngineeringAhmed Alageed
 
Configuration Management Best Practices
Configuration Management Best PracticesConfiguration Management Best Practices
Configuration Management Best PracticesTechWell
 
Software Configuration Management
Software Configuration ManagementSoftware Configuration Management
Software Configuration ManagementVirendra Thakur
 
Overview&Framework 1-Manage Software and Firmware Files
Overview&Framework 1-Manage Software and Firmware FilesOverview&Framework 1-Manage Software and Firmware Files
Overview&Framework 1-Manage Software and Firmware FilesAd Ghauri
 
Understanding change impact across the electronics software, hardware, and fi...
Understanding change impact across the electronics software, hardware, and fi...Understanding change impact across the electronics software, hardware, and fi...
Understanding change impact across the electronics software, hardware, and fi...Ad Ghauri
 

What's hot (20)

Software configuration management in deep
Software configuration management in deepSoftware configuration management in deep
Software configuration management in deep
 
Introduction To Software Configuration Management
Introduction To Software Configuration ManagementIntroduction To Software Configuration Management
Introduction To Software Configuration Management
 
Configuration Management
Configuration ManagementConfiguration Management
Configuration Management
 
Software Configuration Management
Software Configuration ManagementSoftware Configuration Management
Software Configuration Management
 
Configuration Management Best Practices
Configuration Management Best PracticesConfiguration Management Best Practices
Configuration Management Best Practices
 
Software Configuration Management (SCM)
Software Configuration Management (SCM)Software Configuration Management (SCM)
Software Configuration Management (SCM)
 
Software Configuration Management
Software Configuration ManagementSoftware Configuration Management
Software Configuration Management
 
Presentation of se
Presentation of sePresentation of se
Presentation of se
 
Software Processes
Software Processes Software Processes
Software Processes
 
Software engineering lecture notes
Software engineering lecture notesSoftware engineering lecture notes
Software engineering lecture notes
 
Configuration Management
Configuration ManagementConfiguration Management
Configuration Management
 
A Brief Introduction to Software Configuration Management
A Brief Introduction to Software Configuration ManagementA Brief Introduction to Software Configuration Management
A Brief Introduction to Software Configuration Management
 
Software management framework
Software management frameworkSoftware management framework
Software management framework
 
Configuration Management
Configuration ManagementConfiguration Management
Configuration Management
 
Beit 381 se lec 3 - 46 - 12 feb14 - sd needs teams to develop intro
Beit 381 se lec 3 - 46  - 12 feb14 - sd needs teams to develop introBeit 381 se lec 3 - 46  - 12 feb14 - sd needs teams to develop intro
Beit 381 se lec 3 - 46 - 12 feb14 - sd needs teams to develop intro
 
مدخل الى هندسة البرمجيات _ Introduction to Software Engineering
مدخل الى هندسة البرمجيات _ Introduction to Software Engineeringمدخل الى هندسة البرمجيات _ Introduction to Software Engineering
مدخل الى هندسة البرمجيات _ Introduction to Software Engineering
 
Configuration Management Best Practices
Configuration Management Best PracticesConfiguration Management Best Practices
Configuration Management Best Practices
 
Software Configuration Management
Software Configuration ManagementSoftware Configuration Management
Software Configuration Management
 
Overview&Framework 1-Manage Software and Firmware Files
Overview&Framework 1-Manage Software and Firmware FilesOverview&Framework 1-Manage Software and Firmware Files
Overview&Framework 1-Manage Software and Firmware Files
 
Understanding change impact across the electronics software, hardware, and fi...
Understanding change impact across the electronics software, hardware, and fi...Understanding change impact across the electronics software, hardware, and fi...
Understanding change impact across the electronics software, hardware, and fi...
 

Similar to Voyager scm

software configuration management
software configuration managementsoftware configuration management
software configuration managementFáber D. Giraldo
 
Software configuration management
Software configuration managementSoftware configuration management
Software configuration managementShivani Garg
 
SE2018_Lec 21_ Software Configuration Management (SCM)
SE2018_Lec 21_ Software Configuration Management (SCM)SE2018_Lec 21_ Software Configuration Management (SCM)
SE2018_Lec 21_ Software Configuration Management (SCM)Amr E. Mohamed
 
Software engineering lecture notes
Software engineering lecture notesSoftware engineering lecture notes
Software engineering lecture notesSiva Ayyakutti
 
Configuration Managment Powerpoint
Configuration Managment PowerpointConfiguration Managment Powerpoint
Configuration Managment PowerpointJeannine Jacobs, MS
 
Software development PROCESS
Software development PROCESSSoftware development PROCESS
Software development PROCESSIvano Malavolta
 
Lecture 2 (Software Processes)
Lecture 2 (Software Processes)Lecture 2 (Software Processes)
Lecture 2 (Software Processes)Education Front
 
Intoduction to software engineering part 2
Intoduction to software engineering part 2Intoduction to software engineering part 2
Intoduction to software engineering part 2Rupesh Vaishnav
 
Introduction to Requirement engineering
Introduction to Requirement engineeringIntroduction to Requirement engineering
Introduction to Requirement engineeringNameirakpam Sundari
 
Software engineering jwfiles 3
Software engineering jwfiles 3Software engineering jwfiles 3
Software engineering jwfiles 3Azhar Shaik
 
Software Engineering (Software Configuration Management)
Software Engineering (Software Configuration Management)Software Engineering (Software Configuration Management)
Software Engineering (Software Configuration Management)ShudipPal
 
System models of sdlc- v model
System models of sdlc- v modelSystem models of sdlc- v model
System models of sdlc- v modelMinal Kashyap
 
SE Unit 2(1).pptx
SE Unit 2(1).pptxSE Unit 2(1).pptx
SE Unit 2(1).pptxaryan631999
 
340_18CS35_se_mod1(secab).pdf
340_18CS35_se_mod1(secab).pdf340_18CS35_se_mod1(secab).pdf
340_18CS35_se_mod1(secab).pdfkrishnaraj714229
 

Similar to Voyager scm (20)

software configuration management
software configuration managementsoftware configuration management
software configuration management
 
Software configuration management
Software configuration managementSoftware configuration management
Software configuration management
 
Software Development
Software DevelopmentSoftware Development
Software Development
 
Fa10 mcs-005
Fa10 mcs-005Fa10 mcs-005
Fa10 mcs-005
 
SE2018_Lec 21_ Software Configuration Management (SCM)
SE2018_Lec 21_ Software Configuration Management (SCM)SE2018_Lec 21_ Software Configuration Management (SCM)
SE2018_Lec 21_ Software Configuration Management (SCM)
 
PJTabac_CV
PJTabac_CVPJTabac_CV
PJTabac_CV
 
Software engineering lecture notes
Software engineering lecture notesSoftware engineering lecture notes
Software engineering lecture notes
 
Configuration Managment Powerpoint
Configuration Managment PowerpointConfiguration Managment Powerpoint
Configuration Managment Powerpoint
 
Software development PROCESS
Software development PROCESSSoftware development PROCESS
Software development PROCESS
 
Lecture 2 (Software Processes)
Lecture 2 (Software Processes)Lecture 2 (Software Processes)
Lecture 2 (Software Processes)
 
Rational CLM at a glance
Rational CLM at a glanceRational CLM at a glance
Rational CLM at a glance
 
Intoduction to software engineering part 2
Intoduction to software engineering part 2Intoduction to software engineering part 2
Intoduction to software engineering part 2
 
Introduction to Requirement engineering
Introduction to Requirement engineeringIntroduction to Requirement engineering
Introduction to Requirement engineering
 
Software engineering jwfiles 3
Software engineering jwfiles 3Software engineering jwfiles 3
Software engineering jwfiles 3
 
Software Engineering (Software Configuration Management)
Software Engineering (Software Configuration Management)Software Engineering (Software Configuration Management)
Software Engineering (Software Configuration Management)
 
Requirements engineering
Requirements engineeringRequirements engineering
Requirements engineering
 
System models of sdlc- v model
System models of sdlc- v modelSystem models of sdlc- v model
System models of sdlc- v model
 
SE Unit 2(1).pptx
SE Unit 2(1).pptxSE Unit 2(1).pptx
SE Unit 2(1).pptx
 
340_18CS35_se_mod1(secab).pdf
340_18CS35_se_mod1(secab).pdf340_18CS35_se_mod1(secab).pdf
340_18CS35_se_mod1(secab).pdf
 
Seminar on Project Management by Rj
Seminar on Project Management by RjSeminar on Project Management by Rj
Seminar on Project Management by Rj
 

More from SivaprasanthRentala1975 (20)

Testing using load runner performance testing
Testing using load runner  performance testingTesting using load runner  performance testing
Testing using load runner performance testing
 
Why contract savings are missing
Why contract savings are missingWhy contract savings are missing
Why contract savings are missing
 
Volumes
VolumesVolumes
Volumes
 
The new mainframe
The new mainframeThe new mainframe
The new mainframe
 
Test execution may_04_2006
Test execution may_04_2006Test execution may_04_2006
Test execution may_04_2006
 
Telecom testing
Telecom testingTelecom testing
Telecom testing
 
Six sigma
Six sigmaSix sigma
Six sigma
 
Sdlc models
Sdlc modelsSdlc models
Sdlc models
 
Sdlc
SdlcSdlc
Sdlc
 
Scm
ScmScm
Scm
 
Pt presentation1
Pt presentation1Pt presentation1
Pt presentation1
 
Pp employee learnnig initiative-iss-220-g tle 2007
Pp employee learnnig initiative-iss-220-g tle 2007Pp employee learnnig initiative-iss-220-g tle 2007
Pp employee learnnig initiative-iss-220-g tle 2007
 
Performance testing and rpt
Performance testing and rptPerformance testing and rpt
Performance testing and rpt
 
Patents
PatentsPatents
Patents
 
Xpediter kanbay
Xpediter kanbayXpediter kanbay
Xpediter kanbay
 
Copy of good quotes.ppt
Copy of good quotes.pptCopy of good quotes.ppt
Copy of good quotes.ppt
 
Contract savings new
Contract savings newContract savings new
Contract savings new
 
Contract savings schema
Contract savings schemaContract savings schema
Contract savings schema
 
Contract savings may 10th 2004 by gm euro
Contract savings may 10th 2004 by gm euroContract savings may 10th 2004 by gm euro
Contract savings may 10th 2004 by gm euro
 
Contract savings job overview
Contract savings job overviewContract savings job overview
Contract savings job overview
 

Recently uploaded

How to Give a Domain for a Field in Odoo 17
How to Give a Domain for a Field in Odoo 17How to Give a Domain for a Field in Odoo 17
How to Give a Domain for a Field in Odoo 17Celine George
 
How to setup Pycharm environment for Odoo 17.pptx
How to setup Pycharm environment for Odoo 17.pptxHow to setup Pycharm environment for Odoo 17.pptx
How to setup Pycharm environment for Odoo 17.pptxCeline George
 
Single or Multiple melodic lines structure
Single or Multiple melodic lines structureSingle or Multiple melodic lines structure
Single or Multiple melodic lines structuredhanjurrannsibayan2
 
Food safety_Challenges food safety laboratories_.pdf
Food safety_Challenges food safety laboratories_.pdfFood safety_Challenges food safety laboratories_.pdf
Food safety_Challenges food safety laboratories_.pdfSherif Taha
 
Basic Civil Engineering first year Notes- Chapter 4 Building.pptx
Basic Civil Engineering first year Notes- Chapter 4 Building.pptxBasic Civil Engineering first year Notes- Chapter 4 Building.pptx
Basic Civil Engineering first year Notes- Chapter 4 Building.pptxDenish Jangid
 
REMIFENTANIL: An Ultra short acting opioid.pptx
REMIFENTANIL: An Ultra short acting opioid.pptxREMIFENTANIL: An Ultra short acting opioid.pptx
REMIFENTANIL: An Ultra short acting opioid.pptxDr. Ravikiran H M Gowda
 
Salient Features of India constitution especially power and functions
Salient Features of India constitution especially power and functionsSalient Features of India constitution especially power and functions
Salient Features of India constitution especially power and functionsKarakKing
 
Key note speaker Neum_Admir Softic_ENG.pdf
Key note speaker Neum_Admir Softic_ENG.pdfKey note speaker Neum_Admir Softic_ENG.pdf
Key note speaker Neum_Admir Softic_ENG.pdfAdmir Softic
 
ICT role in 21st century education and it's challenges.
ICT role in 21st century education and it's challenges.ICT role in 21st century education and it's challenges.
ICT role in 21st century education and it's challenges.MaryamAhmad92
 
Sensory_Experience_and_Emotional_Resonance_in_Gabriel_Okaras_The_Piano_and_Th...
Sensory_Experience_and_Emotional_Resonance_in_Gabriel_Okaras_The_Piano_and_Th...Sensory_Experience_and_Emotional_Resonance_in_Gabriel_Okaras_The_Piano_and_Th...
Sensory_Experience_and_Emotional_Resonance_in_Gabriel_Okaras_The_Piano_and_Th...Pooja Bhuva
 
Python Notes for mca i year students osmania university.docx
Python Notes for mca i year students osmania university.docxPython Notes for mca i year students osmania university.docx
Python Notes for mca i year students osmania university.docxRamakrishna Reddy Bijjam
 
Sociology 101 Demonstration of Learning Exhibit
Sociology 101 Demonstration of Learning ExhibitSociology 101 Demonstration of Learning Exhibit
Sociology 101 Demonstration of Learning Exhibitjbellavia9
 
How to Manage Global Discount in Odoo 17 POS
How to Manage Global Discount in Odoo 17 POSHow to Manage Global Discount in Odoo 17 POS
How to Manage Global Discount in Odoo 17 POSCeline George
 
Introduction to Nonprofit Accounting: The Basics
Introduction to Nonprofit Accounting: The BasicsIntroduction to Nonprofit Accounting: The Basics
Introduction to Nonprofit Accounting: The BasicsTechSoup
 
Unit-V; Pricing (Pharma Marketing Management).pptx
Unit-V; Pricing (Pharma Marketing Management).pptxUnit-V; Pricing (Pharma Marketing Management).pptx
Unit-V; Pricing (Pharma Marketing Management).pptxVishalSingh1417
 
Google Gemini An AI Revolution in Education.pptx
Google Gemini An AI Revolution in Education.pptxGoogle Gemini An AI Revolution in Education.pptx
Google Gemini An AI Revolution in Education.pptxDr. Sarita Anand
 
Jual Obat Aborsi Hongkong ( Asli No.1 ) 085657271886 Obat Penggugur Kandungan...
Jual Obat Aborsi Hongkong ( Asli No.1 ) 085657271886 Obat Penggugur Kandungan...Jual Obat Aborsi Hongkong ( Asli No.1 ) 085657271886 Obat Penggugur Kandungan...
Jual Obat Aborsi Hongkong ( Asli No.1 ) 085657271886 Obat Penggugur Kandungan...ZurliaSoop
 
2024-NATIONAL-LEARNING-CAMP-AND-OTHER.pptx
2024-NATIONAL-LEARNING-CAMP-AND-OTHER.pptx2024-NATIONAL-LEARNING-CAMP-AND-OTHER.pptx
2024-NATIONAL-LEARNING-CAMP-AND-OTHER.pptxMaritesTamaniVerdade
 
Jamworks pilot and AI at Jisc (20/03/2024)
Jamworks pilot and AI at Jisc (20/03/2024)Jamworks pilot and AI at Jisc (20/03/2024)
Jamworks pilot and AI at Jisc (20/03/2024)Jisc
 

Recently uploaded (20)

How to Give a Domain for a Field in Odoo 17
How to Give a Domain for a Field in Odoo 17How to Give a Domain for a Field in Odoo 17
How to Give a Domain for a Field in Odoo 17
 
How to setup Pycharm environment for Odoo 17.pptx
How to setup Pycharm environment for Odoo 17.pptxHow to setup Pycharm environment for Odoo 17.pptx
How to setup Pycharm environment for Odoo 17.pptx
 
Single or Multiple melodic lines structure
Single or Multiple melodic lines structureSingle or Multiple melodic lines structure
Single or Multiple melodic lines structure
 
Food safety_Challenges food safety laboratories_.pdf
Food safety_Challenges food safety laboratories_.pdfFood safety_Challenges food safety laboratories_.pdf
Food safety_Challenges food safety laboratories_.pdf
 
Basic Civil Engineering first year Notes- Chapter 4 Building.pptx
Basic Civil Engineering first year Notes- Chapter 4 Building.pptxBasic Civil Engineering first year Notes- Chapter 4 Building.pptx
Basic Civil Engineering first year Notes- Chapter 4 Building.pptx
 
REMIFENTANIL: An Ultra short acting opioid.pptx
REMIFENTANIL: An Ultra short acting opioid.pptxREMIFENTANIL: An Ultra short acting opioid.pptx
REMIFENTANIL: An Ultra short acting opioid.pptx
 
Salient Features of India constitution especially power and functions
Salient Features of India constitution especially power and functionsSalient Features of India constitution especially power and functions
Salient Features of India constitution especially power and functions
 
Key note speaker Neum_Admir Softic_ENG.pdf
Key note speaker Neum_Admir Softic_ENG.pdfKey note speaker Neum_Admir Softic_ENG.pdf
Key note speaker Neum_Admir Softic_ENG.pdf
 
ICT role in 21st century education and it's challenges.
ICT role in 21st century education and it's challenges.ICT role in 21st century education and it's challenges.
ICT role in 21st century education and it's challenges.
 
Sensory_Experience_and_Emotional_Resonance_in_Gabriel_Okaras_The_Piano_and_Th...
Sensory_Experience_and_Emotional_Resonance_in_Gabriel_Okaras_The_Piano_and_Th...Sensory_Experience_and_Emotional_Resonance_in_Gabriel_Okaras_The_Piano_and_Th...
Sensory_Experience_and_Emotional_Resonance_in_Gabriel_Okaras_The_Piano_and_Th...
 
Python Notes for mca i year students osmania university.docx
Python Notes for mca i year students osmania university.docxPython Notes for mca i year students osmania university.docx
Python Notes for mca i year students osmania university.docx
 
Sociology 101 Demonstration of Learning Exhibit
Sociology 101 Demonstration of Learning ExhibitSociology 101 Demonstration of Learning Exhibit
Sociology 101 Demonstration of Learning Exhibit
 
How to Manage Global Discount in Odoo 17 POS
How to Manage Global Discount in Odoo 17 POSHow to Manage Global Discount in Odoo 17 POS
How to Manage Global Discount in Odoo 17 POS
 
Introduction to Nonprofit Accounting: The Basics
Introduction to Nonprofit Accounting: The BasicsIntroduction to Nonprofit Accounting: The Basics
Introduction to Nonprofit Accounting: The Basics
 
Unit-V; Pricing (Pharma Marketing Management).pptx
Unit-V; Pricing (Pharma Marketing Management).pptxUnit-V; Pricing (Pharma Marketing Management).pptx
Unit-V; Pricing (Pharma Marketing Management).pptx
 
Google Gemini An AI Revolution in Education.pptx
Google Gemini An AI Revolution in Education.pptxGoogle Gemini An AI Revolution in Education.pptx
Google Gemini An AI Revolution in Education.pptx
 
Jual Obat Aborsi Hongkong ( Asli No.1 ) 085657271886 Obat Penggugur Kandungan...
Jual Obat Aborsi Hongkong ( Asli No.1 ) 085657271886 Obat Penggugur Kandungan...Jual Obat Aborsi Hongkong ( Asli No.1 ) 085657271886 Obat Penggugur Kandungan...
Jual Obat Aborsi Hongkong ( Asli No.1 ) 085657271886 Obat Penggugur Kandungan...
 
2024-NATIONAL-LEARNING-CAMP-AND-OTHER.pptx
2024-NATIONAL-LEARNING-CAMP-AND-OTHER.pptx2024-NATIONAL-LEARNING-CAMP-AND-OTHER.pptx
2024-NATIONAL-LEARNING-CAMP-AND-OTHER.pptx
 
Mehran University Newsletter Vol-X, Issue-I, 2024
Mehran University Newsletter Vol-X, Issue-I, 2024Mehran University Newsletter Vol-X, Issue-I, 2024
Mehran University Newsletter Vol-X, Issue-I, 2024
 
Jamworks pilot and AI at Jisc (20/03/2024)
Jamworks pilot and AI at Jisc (20/03/2024)Jamworks pilot and AI at Jisc (20/03/2024)
Jamworks pilot and AI at Jisc (20/03/2024)
 

Voyager scm

  • 2. 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
  • 3. 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.
  • 4. Why did the Tower of Babel fail? The Tower of Babel project failed because of lack of communication and organization
  • 6. 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. # Team Members #Communication Channels 1 0 2 1 3 3 4 6 5 10 ….. ….. n n*(n-1)/2
  • 9. Characteristic 2 - Software is Easy to Copy        
  • 10. Characteristic 3 - Changes • Different users / customers have different requirements • Get clarified / known at a later date • Changes to business environment • Technology change • Personnel whims
  • 11. Characteristic 4 - Personnel Turnover • Developers leave • Users change Further Adds to the Coordination problem
  • 12. Resulting Problems • Listing seems OK; program does not work • Works in Bombay, misbehaves in Delhi • 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?
  • 13. Main Classes of Problems • Double maintenance problems • Shared data • Simultaneous update • Missing / unknown version problem
  • 14. 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
  • 15. Shared Data • Changes made in one program interfere with proper functioning of other program - Example : subroutines, MW objects • Need - Control of modifications - Good communications
  • 16. 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
  • 17. 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 ?
  • 18. Why Software Configuration Management • SCM addresses all these issues!! AbracadabraAbracadabra
  • 19. 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
  • 23. 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 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
  • 26. Configuration Control • Evaluation, coordination, approval or disapproval, and implementation of changes to configuration items after formal establishment of their configuration identification
  • 27. 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
  • 28. 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. 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
  • 31. 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.
  • 32. • 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
  • 33. 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
  • 34. • 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
  • 35. 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
  • 36. 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
  • 37. 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
  • 38. 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.
  • 39. 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.
  • 40. • Uncertainty is the only certain in this world. Why Backup?
  • 42. 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
  • 43. 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
  • 44. 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
  • 45. 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
  • 46.
  • 47. 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
  • 48. 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 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
  • 51. Status Accounting An ounce of derivation is worth a pound of analysis - Wayne Babich
  • 52. 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
  • 53. Typical Information Baseline Library Items / Units Baseline Units Release Release Units Change OrderBackup Backup Units Check-in / Check-out Change Request/ Problem Log
  • 54. 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
  • 55. 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?
  • 56.
  • 57. Can we make SCM happen?