Software Configuration
Management (SCM)
ER. SHIVA K. SHRESTHA
ME COMPUTER (I SEM)
6/21/2016 SOFTWARE CONFIGURATION MANAGEMENT (SCM) 1
Software Configuration
Management (SCM)
Umbrella activity that is applied throughout the software process
Control of the evolution of complex systems
Manages the effects of change throughout the software process
Control of change
Identification of individual SCIs & various versions of the software
Auditing of the software configuration
Reporting of all changes applied to the configuration
6/21/2016 SOFTWARE CONFIGURATION MANAGEMENT (SCM) 2
Software Configuration
Management (Contd.)
The output of the software
process (Software Configuration
Items) are:
i. Computer Programs (both source
level and executable forms)
ii. Documents that describe the
computer programs (targeted at
both technical practitioners and
users)
iii. Data (contained within the program
or external to it)
6/21/2016 SOFTWARE CONFIGURATION MANAGEMENT (SCM) 3
Data
Documents
Program
SCIs
Software Configuration Items
(SCIs)
Deliverables
SRS
Design
Documents
Test CasesSource Code
User Manual
6/21/2016 SOFTWARE CONFIGURATION MANAGEMENT (SCM) 4
 Configuration Item (CI)
refers to the
fundamental structural
unit of a SCM
 Deliverables of Large
Software Development
Effort
Possible Selection of
Configuration Items
 Problem Statement
 Software Project Management Plan
(SPMP)
Requirements Analysis Document
(RAD)
System Design Document (SDD)
 Project Agreement
Object Design Document (ODD)
 Dynamic Model
 Object model
 Functional Model
Unit tests
 Integration test strategy
Source code
 API Specification
Input data and data bases
 Test plan
Test data
Support software (part of the
product)
 Support software (not part of the
product)
 User manual
 Administrator manual
6/21/2016 SOFTWARE CONFIGURATION MANAGEMENT (SCM) 5
Configuration Item Tree
(Example)
6/21/2016 SOFTWARE CONFIGURATION MANAGEMENT (SCM) 6
SCM Process
Primary Objectives:
1. To identify all items that
collectively define the
software configuration
2. To manage changes to one
or more of these items
3. To facilitate the
construction of different
versions of an application
4. To ensure that software
quality is maintained as
the configuration evolves
over time
6/21/2016 SOFTWARE CONFIGURATION MANAGEMENT (SCM) 7
Identification of Objects
To control & manage SCIs, each should be separately named
& then organized using an object-oriented approach.
Types of objects:
i. Basic objects
◦ Unit of information that is created during analysis, design, code or
test.
◦ For Example: Part of design model, source code for a component,
suite of test cases, etc.
ii. Aggregate objects
◦ Collection of basic objects & other another objects.
◦ For Example: Design Specification
6/21/2016 SOFTWARE CONFIGURATION MANAGEMENT (SCM) 8
Version Control
Combines procedures & tools to manage versions of configuration
objects that are created during the software process
A new version is defined when major changes have been made to one
or more objects
6/21/2016 SOFTWARE CONFIGURATION MANAGEMENT (SCM) 9
Change Control
6/21/2016 SOFTWARE CONFIGURATION MANAGEMENT (SCM) 10
Procedural activity that ensures quality & consistence as changes are made to
a configuration object.
Begins with a change request, leads to a decision to make or reject the request
for change.
Configuration Audit
To ensure that change has been properly implemented:
i. Formal Technical Reviews
ii. Software Configuration Audit.
Formal Technical Reviews
Software Quality Assurance (SQA) activity performed by software engineers
(and others)
FTR serves as a training ground, enabling junior engineers to observe
different approaches to software analysis, design, and implementation
Software Configuration Audit
SQA Activity
Helps to ensure that quality is maintained as changes are made
6/21/2016 SOFTWARE CONFIGURATION MANAGEMENT (SCM) 11
Status Reporting
Configuration Status Reporting
(Status Accounting) is an SCM
task that answers the following
questions:
i. What happened?
ii. When did it happen?
iii. Who did it?
iv. What else will be affected?
6/21/2016 SOFTWARE CONFIGURATION MANAGEMENT (SCM) 12
SCM Standards
Over the past two decades a number of software configuration
management standards have been proposed.
SCM standards, such as MIL-STD-483, DODSTD- 480A and MIL-STD-
1521A focused on software developed for military applications.
ANSI/IEEE standards. No. 828-1983, No. 1042-1987 and Std. No. 1028-
1988 [IEE94] are applicable for nonmilitary software & are
recommended for both large and small software engineering
organizations.
6/21/2016 SOFTWARE CONFIGURATION MANAGEMENT (SCM) 13
Q & A?
Thank You !
6/21/2016 SOFTWARE CONFIGURATION MANAGEMENT (SCM) 14

Software Configuration Management (SCM)

  • 1.
    Software Configuration Management (SCM) ER.SHIVA K. SHRESTHA ME COMPUTER (I SEM) 6/21/2016 SOFTWARE CONFIGURATION MANAGEMENT (SCM) 1
  • 2.
    Software Configuration Management (SCM) Umbrellaactivity that is applied throughout the software process Control of the evolution of complex systems Manages the effects of change throughout the software process Control of change Identification of individual SCIs & various versions of the software Auditing of the software configuration Reporting of all changes applied to the configuration 6/21/2016 SOFTWARE CONFIGURATION MANAGEMENT (SCM) 2
  • 3.
    Software Configuration Management (Contd.) Theoutput of the software process (Software Configuration Items) are: i. Computer Programs (both source level and executable forms) ii. Documents that describe the computer programs (targeted at both technical practitioners and users) iii. Data (contained within the program or external to it) 6/21/2016 SOFTWARE CONFIGURATION MANAGEMENT (SCM) 3 Data Documents Program SCIs
  • 4.
    Software Configuration Items (SCIs) Deliverables SRS Design Documents TestCasesSource Code User Manual 6/21/2016 SOFTWARE CONFIGURATION MANAGEMENT (SCM) 4  Configuration Item (CI) refers to the fundamental structural unit of a SCM  Deliverables of Large Software Development Effort
  • 5.
    Possible Selection of ConfigurationItems  Problem Statement  Software Project Management Plan (SPMP) Requirements Analysis Document (RAD) System Design Document (SDD)  Project Agreement Object Design Document (ODD)  Dynamic Model  Object model  Functional Model Unit tests  Integration test strategy Source code  API Specification Input data and data bases  Test plan Test data Support software (part of the product)  Support software (not part of the product)  User manual  Administrator manual 6/21/2016 SOFTWARE CONFIGURATION MANAGEMENT (SCM) 5
  • 6.
    Configuration Item Tree (Example) 6/21/2016SOFTWARE CONFIGURATION MANAGEMENT (SCM) 6
  • 7.
    SCM Process Primary Objectives: 1.To identify all items that collectively define the software configuration 2. To manage changes to one or more of these items 3. To facilitate the construction of different versions of an application 4. To ensure that software quality is maintained as the configuration evolves over time 6/21/2016 SOFTWARE CONFIGURATION MANAGEMENT (SCM) 7
  • 8.
    Identification of Objects Tocontrol & manage SCIs, each should be separately named & then organized using an object-oriented approach. Types of objects: i. Basic objects ◦ Unit of information that is created during analysis, design, code or test. ◦ For Example: Part of design model, source code for a component, suite of test cases, etc. ii. Aggregate objects ◦ Collection of basic objects & other another objects. ◦ For Example: Design Specification 6/21/2016 SOFTWARE CONFIGURATION MANAGEMENT (SCM) 8
  • 9.
    Version Control Combines procedures& tools to manage versions of configuration objects that are created during the software process A new version is defined when major changes have been made to one or more objects 6/21/2016 SOFTWARE CONFIGURATION MANAGEMENT (SCM) 9
  • 10.
    Change Control 6/21/2016 SOFTWARECONFIGURATION MANAGEMENT (SCM) 10 Procedural activity that ensures quality & consistence as changes are made to a configuration object. Begins with a change request, leads to a decision to make or reject the request for change.
  • 11.
    Configuration Audit To ensurethat change has been properly implemented: i. Formal Technical Reviews ii. Software Configuration Audit. Formal Technical Reviews Software Quality Assurance (SQA) activity performed by software engineers (and others) FTR serves as a training ground, enabling junior engineers to observe different approaches to software analysis, design, and implementation Software Configuration Audit SQA Activity Helps to ensure that quality is maintained as changes are made 6/21/2016 SOFTWARE CONFIGURATION MANAGEMENT (SCM) 11
  • 12.
    Status Reporting Configuration StatusReporting (Status Accounting) is an SCM task that answers the following questions: i. What happened? ii. When did it happen? iii. Who did it? iv. What else will be affected? 6/21/2016 SOFTWARE CONFIGURATION MANAGEMENT (SCM) 12
  • 13.
    SCM Standards Over thepast two decades a number of software configuration management standards have been proposed. SCM standards, such as MIL-STD-483, DODSTD- 480A and MIL-STD- 1521A focused on software developed for military applications. ANSI/IEEE standards. No. 828-1983, No. 1042-1987 and Std. No. 1028- 1988 [IEE94] are applicable for nonmilitary software & are recommended for both large and small software engineering organizations. 6/21/2016 SOFTWARE CONFIGURATION MANAGEMENT (SCM) 13
  • 14.
    Q & A? ThankYou ! 6/21/2016 SOFTWARE CONFIGURATION MANAGEMENT (SCM) 14