SlideShare a Scribd company logo
1 of 32
Download to read offline
Subject: Software Engineering & Project Management
Topic: Software Configuration Management
Shared by: Ms. K.D. Patil, SRES's SCOE, Kopargaon
What is Change Management
When you build a computer system, changes
happen,And because it happens, you need to manage it
effectively.
Deliverables of large s/w project consist of number of
objects, e. g. source code, design document, SRS
document, test document, user manual etc.
These objects are referred & monitored by number of
s/w engs. throughout the lifecycle of the system
The state of these objects at any point of time is called
‘configuration’ of s/w product.
3
What is Change Management
Also called software configuration management (SCM)
It is an umbrella activity that is applied throughout the
software process
It's goal is to maximize productivity by minimizing mistakes
caused by confusion when coordinating software development
SCM identifies, organizes, and controls modifications to the
software being built by a software development team
SCM activities are formulated to identify change, control
change, ensure that change is being properly implemented, and
report changes to others who may have an interest
4
What is Change Management(continued)
• SCM is initiated when the project begins and terminates when
the software is taken out of operation
• View of SCM from various roles (SCM Scenario)
– Project manager -> an auditing mechanism
– SCM manager -> a controlling, tracking, and policy making
mechanism
– Software engineer -> a changing, building, and access
control mechanism
– Customer -> a quality assurance and product identification
mechanism
5
Software Configuration
• The Output from the software process makes up the software
configuration
– Computer programs (both source code files and executable
files)
– Work products that describe the computer programs
(documents targeted at both technical practitioners and
users)
– Data (contained within the programs themselves or in
external files)
• The major danger to a software configuration is change
– First Law of System Engineering: "No matter where you are
in the system life cycle, the system will change, and the
desire to change it will persist throughout the life cycle"
6
Origins of Software Change
• New business or market conditions dictate changes in
product requirements or business rules
• New customer needs demand modifications of data
produced by information systems, functionality
delivered by products, or services delivered by a
computer-based system
• Reorganization or business growth/downsizing causes
changes in project priorities or software engineering
team structure
• Budgetary or scheduling constraints cause a redefinition
of the system or product
7
Elements of a Configuration
Management System
• Configuration elements
– A set of tools coupled with a file management (e.g.,
database) system that enables access to and management of
each software configuration item
• Process elements
– A collection of procedures and tasks that define an effective
approach to change management for all participants
• Construction elements
– A set of tools that automate the construction of software by
ensuring that the proper set of valid components (i.e., the
correct version) is assembled
• Human elements
– A set of tools and process features used by a software team to
implement effective SCM
8
Baseline
• An SCM concept that helps practitioners to control
change without seriously impeding justifiable change
• IEEE Definition: A specification or product that has
been formally reviewed and agreed upon, and that
thereafter serves as the basis for further development,
and that can be changed only through formal change
control procedures
• It is a milestone in the development of software and is
marked by the delivery of one or more computer
software configuration items (SCIs) that have been
approved as a consequence of a formal technical
review
• A SCI may be such work products as a document, a test
suite, or a software component
9
Baselining Process
10
Baselining Process
1) A series of software engineering tasks produces a SCI
2) The SCI is reviewed and possibly approved
3) The approved SCI is given a new version number and
placed in a project database (i.e., software repository)
4) A copy of the SCI is taken from the project database and
examined/modified by a software engineer
5) The baselining of the modified SCI goes back to Step #2
11
Software Configuration Item (SCI)
SCI is information that is created as a part of the
s/w engineering process.
It can be a document, a entire suit of test cases, a
named program component like a C++ function or a
java applet.
Not only the SCI’s which are derived from
different work products are placed in configuration
control, but also some of the imp. tools like
compilers, linkers, browsers, editors, other
automated tools are also a part of configuration
control.pilers)
12
Software Configuration Item
13
Software Configuration Item (SCI)
compilers)In reality, all SCI’s are organized to form configuration objects &
is placed in project database with a single name.
A configuration object has a name, attributes & is connected to
other objects by a relationship.
The configuration objects, Design Specification, DataModel,
ComponentN, SourceCode & TestSpecification are each defined
seperately.
Each of the object is related to others as shown by arrows.
A curved arrow indicates a compositional relation. i.e.
DataModel & ComponentN are part of DesignSpecification.
A double headed straight arrow indicates an interrelationship.
If a change were made to the source code object, the
interrelationship enables a s/w engineer to determine what other
objects might be affected?
14
The SCM Repository
15
Paper-based vs. Automated Repositories
• Problems with paper-based repositories (i.e., file cabinet containing
folders)
– Finding a configuration item when it was needed was often difficult
– Determining which items were changed, when and by whom was
often challenging
– Constructing a new version of an existing program was time
consuming and error prone
– Describing detailed or complex relationships between configuration
items was virtually impossible
• Today's automated SCM repository
– It is a set of mechanisms and data structures that allow a software
team to manage change in an effective manner
– It acts as the center for both accumulation and storage of software
engineering information
– Software engineers use tools integrated with the repository to
interact with it
16
Automated SCM Repository
Functions
Data integrity
Information sharing
Tool integration
Data integration
Methodology enforcement
Document standardization
Versioning
Dependency
tracking
Change
management
Requirements
tracing
Configuration
management
Audit
trails
SCM Repository
17
The Role of SCM Repository
• Data integrity
– Validates entries, ensures consistency, cascades modifications
• Information sharing
– Shares information among developers and tools, manages and
controls multi-user access
• Tool integration
– Establishes a data model that can be accessed by many software
engineering tools, controls access to the data
• Data integration
– Allows various SCM tasks to be performed on one or more CSCIs
• Methodology enforcement
– Defines an entity-relationship model for the repository that implies
a specific process model for software engineering
• Document standardization
– Defines objects in the repository to guarantee a standard approach
for creation of software engineering documents
18
Content of the Repository
19
SCM Features
• Versioning
– Save and retrieve all repository objects based on version number
• Dependency tracking and change management
– Track and respond to the changes in the state and relationship of
all objects in the repository
• Requirements tracing
– (Forward tracing) Track the design and construction components
and deliverables that result from a specific requirements
specification
– (Backward tracing) Identify which requirement generated any
given work product
• Configuration management
– Track a series of configurations representing specific project
milestones or production releases
• Audit trails
– Establish information about when, why, and by whom changes
are made in the repository
20
The SCM Process
21
Primary Objectives of the
SCM Process
• Identify all items that collectively define the software
configuration
• Manage changes to one or more of these items
• Facilitate construction of different versions of an
application
• Ensure the software quality is maintained as the
configuration evolves over time
• Provide information on changes that have occurred
22
SCM Questions
• How does a software team identify the discrete elements of a
software configuration?
• How does an organization manage the many existing versions
of a program (and its documentation) in a manner that will
enable change to be accommodated efficiently?
• How does an organization control changes before and after
software is released to a customer?
• Who has responsibility for approving and ranking changes?
• How can we ensure that changes have been made properly?
• What mechanism is used to appraise others of changes that are
made?
23
SCM Tasks
Status reporting
CSCI
CSCI
CSCI
CSCI
Identification
Change control
Version control
Configuration auditing
24
SCM Tasks (continued)
• Concentric layers (from inner to outer)
– Identification
– Change control
– Version control
– Configuration auditing
– Status reporting
• SCIs flow outward through these layers during their life cycle
SCIs ultimately become part of the configuration of one or more
versions of a software application or system
 E.g. When a new SCI is created, it must be identified.
However, if no changes are requested for the SCI, the change
control layer does not apply.
25
Identification Task
• Identification separately names each CSCI and then
organizes it in the SCM repository using an object-oriented
approach
• Objects start out as basic objects and are then grouped into
aggregate objects
• Each object has a set of distinct features that identify it
– A name that is unambiguous to all other objects
– A description that contains the CSCI type, a project
identifier, and change and/or version information
– List of resources needed by the object
– The object realization (i.e., the document, the file, the
model, etc.)
26
Change Control
• Change control is a procedural activity that ensures quality and
consistency as changes are made to a configuration object
• A change request is submitted to a configuration control authority, which
is usually a change control board (CCB)
– The request is evaluated for technical merit, potential side effects,
overall impact on other configuration objects and system functions,
and projected cost in terms of money, time, and resources
• An engineering change order (ECO) is issued for each approved change
request
– Describes the change to be made, the constraints to follow, and the
criteria for review and audit
• The baselined CSCI is obtained from the SCM repository
– Access control governs which software engineers have the authority
to access and modify a particular configuration object
– Synchronization control helps to ensure that parallel changes
performed by two different people don't overwrite one another
27
Change Control Process
28
29
Version Control
• Version control is a set of procedures and tools for managing the
creation and use of multiple occurrences of objects in the SCM
repository
• Required version control capabilities
– An SCM repository that stores all relevant configuration objects
– A version management capability that stores all versions of a
configuration object (or enables any version to be constructed using
differences from past versions)
– A make facility that enables the software engineer to collect all
relevant configuration objects and construct a specific version of the
software
– Issues tracking (bug tracking) capability that enables the team to
record and track the status of all outstanding issues associated with
each configuration object
• The SCM repository maintains a change set
– Serves as a collection of all changes made to a baseline configuration
– Used to create a specific version of the software
– Captures all changes to all files in the configuration along with the
30
Configuration Audit
• Configuration auditing is an SQA activity that helps to ensure that
quality is maintained as changes are made
• It complements the formal technical review and is conducted by the
SQA group
• It addresses the following questions
– Has the change specified in the ECO been made? Have any
additional modifications been incorporated?
– Has a formal technical review been conducted to assess technical
correctness?
– Has the software process been followed, and have software
engineering standards been properly applied?
31
– Has the change been "highlighted" and "documented" in the
CSCI? Have the change data and change author been
specified? Do the attributes of the configuration object
reflect the change?
– Have SCM procedures for noting the change, recording it,
and reporting it been followed?
– Have all related CSCIs been properly updated?
• A configuration audit ensures that
– The correct CSCIs (by version) have been incorporated into a
specific build
– That all documentation is up-to-date and consistent with the
version that has been built
Configuration Audit
32
Status Report
• Configuration status reporting (CSR) is also called status accounting
• Provides information about each change to those personnel in an
organization with a need to know
• Answers what happened, who did it, when did it happen, and what
else will be affected?
• Sources of entries for configuration status reporting
– Each time a CSCI is assigned new or updated information
– Each time a change is approved by the CCB and an ECO is issued
– Each time a configuration audit is conducted
• The configuration status report
– Placed in an on-line database or on a website for software
developers and maintainers to read
– Given to management and practitioners to keep them appraised of
important changes to the project CSCIs

More Related Content

What's hot

Lect5 improving software economics
Lect5 improving software economicsLect5 improving software economics
Lect5 improving software economicsmeena466141
 
Software Engineering (Project Planning & Estimation)
Software Engineering (Project Planning &  Estimation)Software Engineering (Project Planning &  Estimation)
Software Engineering (Project Planning & Estimation)ShudipPal
 
Software quality assurance
Software quality assuranceSoftware quality assurance
Software quality assuranceEr. Nancy
 
Lect2 conventional software management
Lect2 conventional software managementLect2 conventional software management
Lect2 conventional software managementmeena466141
 
SWE-401 - 1. Introduction to Software Engineering
SWE-401 - 1. Introduction to Software EngineeringSWE-401 - 1. Introduction to Software Engineering
SWE-401 - 1. Introduction to Software Engineeringghayour abbas
 
Software Configuration Management (SCM)
Software Configuration Management (SCM)Software Configuration Management (SCM)
Software Configuration Management (SCM)Er. Shiva K. Shrestha
 
What is Software Quality and how to measure it?
What is Software Quality and how to measure it?What is Software Quality and how to measure it?
What is Software Quality and how to measure it?Denys Zaiats
 
Organization and team structures
Organization and team structuresOrganization and team structures
Organization and team structuresNur Islam
 
Project Management Concepts
Project Management ConceptsProject Management Concepts
Project Management ConceptsSaqib Raza
 
Project control and process instrumentation
Project control and process instrumentationProject control and process instrumentation
Project control and process instrumentationKuppusamy P
 
Risk management in software engineering
Risk management in software engineeringRisk management in software engineering
Risk management in software engineeringdeep sharma
 
Software matrics and measurement
Software matrics and measurementSoftware matrics and measurement
Software matrics and measurementGurpreet Saini
 

What's hot (20)

Lect5 improving software economics
Lect5 improving software economicsLect5 improving software economics
Lect5 improving software economics
 
Spm unit 3
Spm unit 3Spm unit 3
Spm unit 3
 
Software Engineering (Project Planning & Estimation)
Software Engineering (Project Planning &  Estimation)Software Engineering (Project Planning &  Estimation)
Software Engineering (Project Planning & Estimation)
 
Software quality assurance
Software quality assuranceSoftware quality assurance
Software quality assurance
 
Spm unit1
Spm unit1Spm unit1
Spm unit1
 
Spm unit 2
Spm unit 2Spm unit 2
Spm unit 2
 
Lect2 conventional software management
Lect2 conventional software managementLect2 conventional software management
Lect2 conventional software management
 
SWE-401 - 1. Introduction to Software Engineering
SWE-401 - 1. Introduction to Software EngineeringSWE-401 - 1. Introduction to Software Engineering
SWE-401 - 1. Introduction to Software Engineering
 
Software Configuration Management (SCM)
Software Configuration Management (SCM)Software Configuration Management (SCM)
Software Configuration Management (SCM)
 
Software Quality Metrics
Software Quality MetricsSoftware Quality Metrics
Software Quality Metrics
 
Rayleigh model
Rayleigh modelRayleigh model
Rayleigh model
 
Software development process models
Software development process modelsSoftware development process models
Software development process models
 
What is Software Quality and how to measure it?
What is Software Quality and how to measure it?What is Software Quality and how to measure it?
What is Software Quality and how to measure it?
 
Organization and team structures
Organization and team structuresOrganization and team structures
Organization and team structures
 
Project Management Concepts
Project Management ConceptsProject Management Concepts
Project Management Concepts
 
Rayleigh model
Rayleigh modelRayleigh model
Rayleigh model
 
Unit 5
Unit   5Unit   5
Unit 5
 
Project control and process instrumentation
Project control and process instrumentationProject control and process instrumentation
Project control and process instrumentation
 
Risk management in software engineering
Risk management in software engineeringRisk management in software engineering
Risk management in software engineering
 
Software matrics and measurement
Software matrics and measurementSoftware matrics and measurement
Software matrics and measurement
 

Similar to Unit 6 Software Configuration Management

Software configuration management, Web engineering
Software configuration management, Web engineeringSoftware configuration management, Web engineering
Software configuration management, Web engineeringdivyammo
 
Mod5-SCM.ppt
Mod5-SCM.pptMod5-SCM.ppt
Mod5-SCM.pptdivyammo
 
Mod5-SCM.ppt
Mod5-SCM.pptMod5-SCM.ppt
Mod5-SCM.pptdivyammo
 
Lecture 06 Software Configuration Management
Lecture 06 Software Configuration ManagementLecture 06 Software Configuration Management
Lecture 06 Software Configuration ManagementAchmad Solichin
 
Software Configuration Management introduction
Software Configuration Management introductionSoftware Configuration Management introduction
Software Configuration Management introductionMani Deepak Choudhry
 
Software maintenance and configuration management, software engineering
Software maintenance and  configuration management, software engineeringSoftware maintenance and  configuration management, software engineering
Software maintenance and configuration management, software engineeringRupesh Vaishnav
 
Software Engineering (Software Configuration Management)
Software Engineering (Software Configuration Management)Software Engineering (Software Configuration Management)
Software Engineering (Software Configuration Management)ShudipPal
 
software configuration management
software configuration managementsoftware configuration management
software configuration managementFáber D. Giraldo
 
software configuratiom management role n resposnbilities
software configuratiom management role n resposnbilitiessoftware configuratiom management role n resposnbilities
software configuratiom management role n resposnbilitiesMahesh Panchal
 
Software Engineering Important Short Question for Exams
Software Engineering Important Short Question for ExamsSoftware Engineering Important Short Question for Exams
Software Engineering Important Short Question for ExamsMuhammadTalha436
 
softwareMaintenance.pdf
softwareMaintenance.pdfsoftwareMaintenance.pdf
softwareMaintenance.pdfkumari36
 
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
 
Configuration Managment Powerpoint
Configuration Managment PowerpointConfiguration Managment Powerpoint
Configuration Managment PowerpointJeannine Jacobs, MS
 
SE2_Lec 22_Software Configuration Management
SE2_Lec 22_Software Configuration ManagementSE2_Lec 22_Software Configuration Management
SE2_Lec 22_Software Configuration ManagementAmr E. Mohamed
 
Software Configuration Management.pptx
Software Configuration Management.pptxSoftware Configuration Management.pptx
Software Configuration Management.pptxMaSheilaMagboo
 

Similar to Unit 6 Software Configuration Management (20)

Software configuration management, Web engineering
Software configuration management, Web engineeringSoftware configuration management, Web engineering
Software configuration management, Web engineering
 
Mod5-SCM.ppt
Mod5-SCM.pptMod5-SCM.ppt
Mod5-SCM.ppt
 
Mod5-SCM.ppt
Mod5-SCM.pptMod5-SCM.ppt
Mod5-SCM.ppt
 
Fa10 mcs-005
Fa10 mcs-005Fa10 mcs-005
Fa10 mcs-005
 
Lecture 06 Software Configuration Management
Lecture 06 Software Configuration ManagementLecture 06 Software Configuration Management
Lecture 06 Software Configuration Management
 
lecture14.ppt
lecture14.pptlecture14.ppt
lecture14.ppt
 
Software Configuration Management introduction
Software Configuration Management introductionSoftware Configuration Management introduction
Software Configuration Management introduction
 
Software maintenance and configuration management, software engineering
Software maintenance and  configuration management, software engineeringSoftware maintenance and  configuration management, software engineering
Software maintenance and configuration management, software engineering
 
Software Engineering (Software Configuration Management)
Software Engineering (Software Configuration Management)Software Engineering (Software Configuration Management)
Software Engineering (Software Configuration Management)
 
software configuration management
software configuration managementsoftware configuration management
software configuration management
 
software configuratiom management role n resposnbilities
software configuratiom management role n resposnbilitiessoftware configuratiom management role n resposnbilities
software configuratiom management role n resposnbilities
 
SE-Lecture-8.pptx
SE-Lecture-8.pptxSE-Lecture-8.pptx
SE-Lecture-8.pptx
 
Software process
Software processSoftware process
Software process
 
5. scm
5. scm5. scm
5. scm
 
Software Engineering Important Short Question for Exams
Software Engineering Important Short Question for ExamsSoftware Engineering Important Short Question for Exams
Software Engineering Important Short Question for Exams
 
softwareMaintenance.pdf
softwareMaintenance.pdfsoftwareMaintenance.pdf
softwareMaintenance.pdf
 
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)
 
Configuration Managment Powerpoint
Configuration Managment PowerpointConfiguration Managment Powerpoint
Configuration Managment Powerpoint
 
SE2_Lec 22_Software Configuration Management
SE2_Lec 22_Software Configuration ManagementSE2_Lec 22_Software Configuration Management
SE2_Lec 22_Software Configuration Management
 
Software Configuration Management.pptx
Software Configuration Management.pptxSoftware Configuration Management.pptx
Software Configuration Management.pptx
 

More from KanchanPatil34

Unit 2_2 Binary Tree as ADT_General Tree.pdf
Unit 2_2 Binary Tree as ADT_General Tree.pdfUnit 2_2 Binary Tree as ADT_General Tree.pdf
Unit 2_2 Binary Tree as ADT_General Tree.pdfKanchanPatil34
 
Unit 2_3 Binary Tree Traversals.pdf
Unit 2_3 Binary Tree Traversals.pdfUnit 2_3 Binary Tree Traversals.pdf
Unit 2_3 Binary Tree Traversals.pdfKanchanPatil34
 
Unit 1_SLL and DLL.pdf
Unit 1_SLL and DLL.pdfUnit 1_SLL and DLL.pdf
Unit 1_SLL and DLL.pdfKanchanPatil34
 
Unit 1_Stack and Queue using Linked Organization.pdf
Unit 1_Stack and Queue using Linked Organization.pdfUnit 1_Stack and Queue using Linked Organization.pdf
Unit 1_Stack and Queue using Linked Organization.pdfKanchanPatil34
 
PAI Unit 3 Paging in 80386 Microporcessor
PAI Unit 3 Paging in 80386 MicroporcessorPAI Unit 3 Paging in 80386 Microporcessor
PAI Unit 3 Paging in 80386 MicroporcessorKanchanPatil34
 
PAI Unit 3 Multitasking in 80386
PAI Unit 3 Multitasking in 80386PAI Unit 3 Multitasking in 80386
PAI Unit 3 Multitasking in 80386KanchanPatil34
 
PAI Unit 2 Segmentation in 80386 microprocessor
PAI Unit 2 Segmentation in 80386 microprocessorPAI Unit 2 Segmentation in 80386 microprocessor
PAI Unit 2 Segmentation in 80386 microprocessorKanchanPatil34
 
PAI Unit 2 Protection in 80386 segmentation
PAI Unit 2 Protection in 80386 segmentationPAI Unit 2 Protection in 80386 segmentation
PAI Unit 2 Protection in 80386 segmentationKanchanPatil34
 
SE PAI Unit 2_Data Structures in 80386 segmentation
SE PAI Unit 2_Data Structures in 80386 segmentationSE PAI Unit 2_Data Structures in 80386 segmentation
SE PAI Unit 2_Data Structures in 80386 segmentationKanchanPatil34
 
SE PAI Unit 5_Timer Programming in 8051 microcontroller_Part 1
SE PAI Unit 5_Timer Programming in 8051 microcontroller_Part 1SE PAI Unit 5_Timer Programming in 8051 microcontroller_Part 1
SE PAI Unit 5_Timer Programming in 8051 microcontroller_Part 1KanchanPatil34
 
SE PAI Unit 5_Timer Programming in 8051 microcontroller_Part 2
SE PAI Unit 5_Timer Programming in 8051 microcontroller_Part 2SE PAI Unit 5_Timer Programming in 8051 microcontroller_Part 2
SE PAI Unit 5_Timer Programming in 8051 microcontroller_Part 2KanchanPatil34
 
SE PAI Unit 5_Serial Port Programming in 8051 micro controller_Part 3
SE PAI Unit 5_Serial Port Programming in 8051 micro controller_Part 3SE PAI Unit 5_Serial Port Programming in 8051 micro controller_Part 3
SE PAI Unit 5_Serial Port Programming in 8051 micro controller_Part 3KanchanPatil34
 
SE PAI Unit 5_Serial Port Programming in 8051 microcontroller_Part 2
SE PAI Unit 5_Serial Port Programming in 8051 microcontroller_Part 2SE PAI Unit 5_Serial Port Programming in 8051 microcontroller_Part 2
SE PAI Unit 5_Serial Port Programming in 8051 microcontroller_Part 2KanchanPatil34
 
SE PAI Unit 5_Serial Port Programming in 8051 microcontroller_Part 1
SE PAI Unit 5_Serial Port Programming in 8051 microcontroller_Part 1SE PAI Unit 5_Serial Port Programming in 8051 microcontroller_Part 1
SE PAI Unit 5_Serial Port Programming in 8051 microcontroller_Part 1KanchanPatil34
 
SE PAI Unit 5_IO programming in 8051
SE PAI Unit 5_IO programming in 8051SE PAI Unit 5_IO programming in 8051
SE PAI Unit 5_IO programming in 8051KanchanPatil34
 
Unit 5_Interrupt programming in 8051 micro controller - part 2
Unit 5_Interrupt programming in 8051 micro controller - part 2Unit 5_Interrupt programming in 8051 micro controller - part 2
Unit 5_Interrupt programming in 8051 micro controller - part 2KanchanPatil34
 
Unit 5_interrupt programming_Part 1
Unit 5_interrupt programming_Part 1Unit 5_interrupt programming_Part 1
Unit 5_interrupt programming_Part 1KanchanPatil34
 
Unit 3 se pai_ivt and idt
Unit 3 se pai_ivt and idtUnit 3 se pai_ivt and idt
Unit 3 se pai_ivt and idtKanchanPatil34
 

More from KanchanPatil34 (20)

Unit 2_2 Binary Tree as ADT_General Tree.pdf
Unit 2_2 Binary Tree as ADT_General Tree.pdfUnit 2_2 Binary Tree as ADT_General Tree.pdf
Unit 2_2 Binary Tree as ADT_General Tree.pdf
 
Unit 2_1 Tree.pdf
Unit 2_1 Tree.pdfUnit 2_1 Tree.pdf
Unit 2_1 Tree.pdf
 
Unit 2_3 Binary Tree Traversals.pdf
Unit 2_3 Binary Tree Traversals.pdfUnit 2_3 Binary Tree Traversals.pdf
Unit 2_3 Binary Tree Traversals.pdf
 
Unit 1_SLL and DLL.pdf
Unit 1_SLL and DLL.pdfUnit 1_SLL and DLL.pdf
Unit 1_SLL and DLL.pdf
 
Unit 1_Stack and Queue using Linked Organization.pdf
Unit 1_Stack and Queue using Linked Organization.pdfUnit 1_Stack and Queue using Linked Organization.pdf
Unit 1_Stack and Queue using Linked Organization.pdf
 
PAI Unit 3 Paging in 80386 Microporcessor
PAI Unit 3 Paging in 80386 MicroporcessorPAI Unit 3 Paging in 80386 Microporcessor
PAI Unit 3 Paging in 80386 Microporcessor
 
PAI Unit 3 Multitasking in 80386
PAI Unit 3 Multitasking in 80386PAI Unit 3 Multitasking in 80386
PAI Unit 3 Multitasking in 80386
 
PAI Unit 2 Segmentation in 80386 microprocessor
PAI Unit 2 Segmentation in 80386 microprocessorPAI Unit 2 Segmentation in 80386 microprocessor
PAI Unit 2 Segmentation in 80386 microprocessor
 
PAI Unit 2 Protection in 80386 segmentation
PAI Unit 2 Protection in 80386 segmentationPAI Unit 2 Protection in 80386 segmentation
PAI Unit 2 Protection in 80386 segmentation
 
SE PAI Unit 2_Data Structures in 80386 segmentation
SE PAI Unit 2_Data Structures in 80386 segmentationSE PAI Unit 2_Data Structures in 80386 segmentation
SE PAI Unit 2_Data Structures in 80386 segmentation
 
SE PAI Unit 5_Timer Programming in 8051 microcontroller_Part 1
SE PAI Unit 5_Timer Programming in 8051 microcontroller_Part 1SE PAI Unit 5_Timer Programming in 8051 microcontroller_Part 1
SE PAI Unit 5_Timer Programming in 8051 microcontroller_Part 1
 
SE PAI Unit 5_Timer Programming in 8051 microcontroller_Part 2
SE PAI Unit 5_Timer Programming in 8051 microcontroller_Part 2SE PAI Unit 5_Timer Programming in 8051 microcontroller_Part 2
SE PAI Unit 5_Timer Programming in 8051 microcontroller_Part 2
 
SE PAI Unit 5_Serial Port Programming in 8051 micro controller_Part 3
SE PAI Unit 5_Serial Port Programming in 8051 micro controller_Part 3SE PAI Unit 5_Serial Port Programming in 8051 micro controller_Part 3
SE PAI Unit 5_Serial Port Programming in 8051 micro controller_Part 3
 
SE PAI Unit 5_Serial Port Programming in 8051 microcontroller_Part 2
SE PAI Unit 5_Serial Port Programming in 8051 microcontroller_Part 2SE PAI Unit 5_Serial Port Programming in 8051 microcontroller_Part 2
SE PAI Unit 5_Serial Port Programming in 8051 microcontroller_Part 2
 
SE PAI Unit 5_Serial Port Programming in 8051 microcontroller_Part 1
SE PAI Unit 5_Serial Port Programming in 8051 microcontroller_Part 1SE PAI Unit 5_Serial Port Programming in 8051 microcontroller_Part 1
SE PAI Unit 5_Serial Port Programming in 8051 microcontroller_Part 1
 
SE PAI Unit 5_IO programming in 8051
SE PAI Unit 5_IO programming in 8051SE PAI Unit 5_IO programming in 8051
SE PAI Unit 5_IO programming in 8051
 
Unit 5_Interrupt programming in 8051 micro controller - part 2
Unit 5_Interrupt programming in 8051 micro controller - part 2Unit 5_Interrupt programming in 8051 micro controller - part 2
Unit 5_Interrupt programming in 8051 micro controller - part 2
 
Unit 5_interrupt programming_Part 1
Unit 5_interrupt programming_Part 1Unit 5_interrupt programming_Part 1
Unit 5_interrupt programming_Part 1
 
8051 interfacing
8051 interfacing8051 interfacing
8051 interfacing
 
Unit 3 se pai_ivt and idt
Unit 3 se pai_ivt and idtUnit 3 se pai_ivt and idt
Unit 3 se pai_ivt and idt
 

Recently uploaded

(PRIYA) Rajgurunagar Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...
(PRIYA) Rajgurunagar Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...(PRIYA) Rajgurunagar Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...
(PRIYA) Rajgurunagar Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...ranjana rawat
 
Call Girls Delhi {Jodhpur} 9711199012 high profile service
Call Girls Delhi {Jodhpur} 9711199012 high profile serviceCall Girls Delhi {Jodhpur} 9711199012 high profile service
Call Girls Delhi {Jodhpur} 9711199012 high profile servicerehmti665
 
(MEERA) Dapodi Call Girls Just Call 7001035870 [ Cash on Delivery ] Pune Escorts
(MEERA) Dapodi Call Girls Just Call 7001035870 [ Cash on Delivery ] Pune Escorts(MEERA) Dapodi Call Girls Just Call 7001035870 [ Cash on Delivery ] Pune Escorts
(MEERA) Dapodi Call Girls Just Call 7001035870 [ Cash on Delivery ] Pune Escortsranjana rawat
 
VIP Call Girls Service Kondapur Hyderabad Call +91-8250192130
VIP Call Girls Service Kondapur Hyderabad Call +91-8250192130VIP Call Girls Service Kondapur Hyderabad Call +91-8250192130
VIP Call Girls Service Kondapur Hyderabad Call +91-8250192130Suhani Kapoor
 
VIP Call Girls Service Hitech City Hyderabad Call +91-8250192130
VIP Call Girls Service Hitech City Hyderabad Call +91-8250192130VIP Call Girls Service Hitech City Hyderabad Call +91-8250192130
VIP Call Girls Service Hitech City Hyderabad Call +91-8250192130Suhani Kapoor
 
ZXCTN 5804 / ZTE PTN / ZTE POTN / ZTE 5804 PTN / ZTE POTN 5804 ( 100/200 GE Z...
ZXCTN 5804 / ZTE PTN / ZTE POTN / ZTE 5804 PTN / ZTE POTN 5804 ( 100/200 GE Z...ZXCTN 5804 / ZTE PTN / ZTE POTN / ZTE 5804 PTN / ZTE POTN 5804 ( 100/200 GE Z...
ZXCTN 5804 / ZTE PTN / ZTE POTN / ZTE 5804 PTN / ZTE POTN 5804 ( 100/200 GE Z...ZTE
 
Porous Ceramics seminar and technical writing
Porous Ceramics seminar and technical writingPorous Ceramics seminar and technical writing
Porous Ceramics seminar and technical writingrakeshbaidya232001
 
Current Transformer Drawing and GTP for MSETCL
Current Transformer Drawing and GTP for MSETCLCurrent Transformer Drawing and GTP for MSETCL
Current Transformer Drawing and GTP for MSETCLDeelipZope
 
Sheet Pile Wall Design and Construction: A Practical Guide for Civil Engineer...
Sheet Pile Wall Design and Construction: A Practical Guide for Civil Engineer...Sheet Pile Wall Design and Construction: A Practical Guide for Civil Engineer...
Sheet Pile Wall Design and Construction: A Practical Guide for Civil Engineer...Dr.Costas Sachpazis
 
High Profile Call Girls Nagpur Isha Call 7001035870 Meet With Nagpur Escorts
High Profile Call Girls Nagpur Isha Call 7001035870 Meet With Nagpur EscortsHigh Profile Call Girls Nagpur Isha Call 7001035870 Meet With Nagpur Escorts
High Profile Call Girls Nagpur Isha Call 7001035870 Meet With Nagpur Escortsranjana rawat
 
APPLICATIONS-AC/DC DRIVES-OPERATING CHARACTERISTICS
APPLICATIONS-AC/DC DRIVES-OPERATING CHARACTERISTICSAPPLICATIONS-AC/DC DRIVES-OPERATING CHARACTERISTICS
APPLICATIONS-AC/DC DRIVES-OPERATING CHARACTERISTICSKurinjimalarL3
 
MANUFACTURING PROCESS-II UNIT-2 LATHE MACHINE
MANUFACTURING PROCESS-II UNIT-2 LATHE MACHINEMANUFACTURING PROCESS-II UNIT-2 LATHE MACHINE
MANUFACTURING PROCESS-II UNIT-2 LATHE MACHINESIVASHANKAR N
 
Call Girls in Nagpur Suman Call 7001035870 Meet With Nagpur Escorts
Call Girls in Nagpur Suman Call 7001035870 Meet With Nagpur EscortsCall Girls in Nagpur Suman Call 7001035870 Meet With Nagpur Escorts
Call Girls in Nagpur Suman Call 7001035870 Meet With Nagpur EscortsCall Girls in Nagpur High Profile
 
IVE Industry Focused Event - Defence Sector 2024
IVE Industry Focused Event - Defence Sector 2024IVE Industry Focused Event - Defence Sector 2024
IVE Industry Focused Event - Defence Sector 2024Mark Billinghurst
 
HARMONY IN THE NATURE AND EXISTENCE - Unit-IV
HARMONY IN THE NATURE AND EXISTENCE - Unit-IVHARMONY IN THE NATURE AND EXISTENCE - Unit-IV
HARMONY IN THE NATURE AND EXISTENCE - Unit-IVRajaP95
 
GDSC ASEB Gen AI study jams presentation
GDSC ASEB Gen AI study jams presentationGDSC ASEB Gen AI study jams presentation
GDSC ASEB Gen AI study jams presentationGDSCAESB
 

Recently uploaded (20)

(PRIYA) Rajgurunagar Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...
(PRIYA) Rajgurunagar Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...(PRIYA) Rajgurunagar Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...
(PRIYA) Rajgurunagar Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...
 
Call Girls Delhi {Jodhpur} 9711199012 high profile service
Call Girls Delhi {Jodhpur} 9711199012 high profile serviceCall Girls Delhi {Jodhpur} 9711199012 high profile service
Call Girls Delhi {Jodhpur} 9711199012 high profile service
 
9953056974 Call Girls In South Ex, Escorts (Delhi) NCR.pdf
9953056974 Call Girls In South Ex, Escorts (Delhi) NCR.pdf9953056974 Call Girls In South Ex, Escorts (Delhi) NCR.pdf
9953056974 Call Girls In South Ex, Escorts (Delhi) NCR.pdf
 
(MEERA) Dapodi Call Girls Just Call 7001035870 [ Cash on Delivery ] Pune Escorts
(MEERA) Dapodi Call Girls Just Call 7001035870 [ Cash on Delivery ] Pune Escorts(MEERA) Dapodi Call Girls Just Call 7001035870 [ Cash on Delivery ] Pune Escorts
(MEERA) Dapodi Call Girls Just Call 7001035870 [ Cash on Delivery ] Pune Escorts
 
Exploring_Network_Security_with_JA3_by_Rakesh Seal.pptx
Exploring_Network_Security_with_JA3_by_Rakesh Seal.pptxExploring_Network_Security_with_JA3_by_Rakesh Seal.pptx
Exploring_Network_Security_with_JA3_by_Rakesh Seal.pptx
 
VIP Call Girls Service Kondapur Hyderabad Call +91-8250192130
VIP Call Girls Service Kondapur Hyderabad Call +91-8250192130VIP Call Girls Service Kondapur Hyderabad Call +91-8250192130
VIP Call Girls Service Kondapur Hyderabad Call +91-8250192130
 
VIP Call Girls Service Hitech City Hyderabad Call +91-8250192130
VIP Call Girls Service Hitech City Hyderabad Call +91-8250192130VIP Call Girls Service Hitech City Hyderabad Call +91-8250192130
VIP Call Girls Service Hitech City Hyderabad Call +91-8250192130
 
ZXCTN 5804 / ZTE PTN / ZTE POTN / ZTE 5804 PTN / ZTE POTN 5804 ( 100/200 GE Z...
ZXCTN 5804 / ZTE PTN / ZTE POTN / ZTE 5804 PTN / ZTE POTN 5804 ( 100/200 GE Z...ZXCTN 5804 / ZTE PTN / ZTE POTN / ZTE 5804 PTN / ZTE POTN 5804 ( 100/200 GE Z...
ZXCTN 5804 / ZTE PTN / ZTE POTN / ZTE 5804 PTN / ZTE POTN 5804 ( 100/200 GE Z...
 
Porous Ceramics seminar and technical writing
Porous Ceramics seminar and technical writingPorous Ceramics seminar and technical writing
Porous Ceramics seminar and technical writing
 
Current Transformer Drawing and GTP for MSETCL
Current Transformer Drawing and GTP for MSETCLCurrent Transformer Drawing and GTP for MSETCL
Current Transformer Drawing and GTP for MSETCL
 
Sheet Pile Wall Design and Construction: A Practical Guide for Civil Engineer...
Sheet Pile Wall Design and Construction: A Practical Guide for Civil Engineer...Sheet Pile Wall Design and Construction: A Practical Guide for Civil Engineer...
Sheet Pile Wall Design and Construction: A Practical Guide for Civil Engineer...
 
High Profile Call Girls Nagpur Isha Call 7001035870 Meet With Nagpur Escorts
High Profile Call Girls Nagpur Isha Call 7001035870 Meet With Nagpur EscortsHigh Profile Call Girls Nagpur Isha Call 7001035870 Meet With Nagpur Escorts
High Profile Call Girls Nagpur Isha Call 7001035870 Meet With Nagpur Escorts
 
APPLICATIONS-AC/DC DRIVES-OPERATING CHARACTERISTICS
APPLICATIONS-AC/DC DRIVES-OPERATING CHARACTERISTICSAPPLICATIONS-AC/DC DRIVES-OPERATING CHARACTERISTICS
APPLICATIONS-AC/DC DRIVES-OPERATING CHARACTERISTICS
 
Call Us -/9953056974- Call Girls In Vikaspuri-/- Delhi NCR
Call Us -/9953056974- Call Girls In Vikaspuri-/- Delhi NCRCall Us -/9953056974- Call Girls In Vikaspuri-/- Delhi NCR
Call Us -/9953056974- Call Girls In Vikaspuri-/- Delhi NCR
 
MANUFACTURING PROCESS-II UNIT-2 LATHE MACHINE
MANUFACTURING PROCESS-II UNIT-2 LATHE MACHINEMANUFACTURING PROCESS-II UNIT-2 LATHE MACHINE
MANUFACTURING PROCESS-II UNIT-2 LATHE MACHINE
 
Call Girls in Nagpur Suman Call 7001035870 Meet With Nagpur Escorts
Call Girls in Nagpur Suman Call 7001035870 Meet With Nagpur EscortsCall Girls in Nagpur Suman Call 7001035870 Meet With Nagpur Escorts
Call Girls in Nagpur Suman Call 7001035870 Meet With Nagpur Escorts
 
DJARUM4D - SLOT GACOR ONLINE | SLOT DEMO ONLINE
DJARUM4D - SLOT GACOR ONLINE | SLOT DEMO ONLINEDJARUM4D - SLOT GACOR ONLINE | SLOT DEMO ONLINE
DJARUM4D - SLOT GACOR ONLINE | SLOT DEMO ONLINE
 
IVE Industry Focused Event - Defence Sector 2024
IVE Industry Focused Event - Defence Sector 2024IVE Industry Focused Event - Defence Sector 2024
IVE Industry Focused Event - Defence Sector 2024
 
HARMONY IN THE NATURE AND EXISTENCE - Unit-IV
HARMONY IN THE NATURE AND EXISTENCE - Unit-IVHARMONY IN THE NATURE AND EXISTENCE - Unit-IV
HARMONY IN THE NATURE AND EXISTENCE - Unit-IV
 
GDSC ASEB Gen AI study jams presentation
GDSC ASEB Gen AI study jams presentationGDSC ASEB Gen AI study jams presentation
GDSC ASEB Gen AI study jams presentation
 

Unit 6 Software Configuration Management

  • 1. Subject: Software Engineering & Project Management Topic: Software Configuration Management Shared by: Ms. K.D. Patil, SRES's SCOE, Kopargaon
  • 2. What is Change Management When you build a computer system, changes happen,And because it happens, you need to manage it effectively. Deliverables of large s/w project consist of number of objects, e. g. source code, design document, SRS document, test document, user manual etc. These objects are referred & monitored by number of s/w engs. throughout the lifecycle of the system The state of these objects at any point of time is called ‘configuration’ of s/w product.
  • 3. 3 What is Change Management Also called software configuration management (SCM) It is an umbrella activity that is applied throughout the software process It's goal is to maximize productivity by minimizing mistakes caused by confusion when coordinating software development SCM identifies, organizes, and controls modifications to the software being built by a software development team SCM activities are formulated to identify change, control change, ensure that change is being properly implemented, and report changes to others who may have an interest
  • 4. 4 What is Change Management(continued) • SCM is initiated when the project begins and terminates when the software is taken out of operation • View of SCM from various roles (SCM Scenario) – Project manager -> an auditing mechanism – SCM manager -> a controlling, tracking, and policy making mechanism – Software engineer -> a changing, building, and access control mechanism – Customer -> a quality assurance and product identification mechanism
  • 5. 5 Software Configuration • The Output from the software process makes up the software configuration – Computer programs (both source code files and executable files) – Work products that describe the computer programs (documents targeted at both technical practitioners and users) – Data (contained within the programs themselves or in external files) • The major danger to a software configuration is change – First Law of System Engineering: "No matter where you are in the system life cycle, the system will change, and the desire to change it will persist throughout the life cycle"
  • 6. 6 Origins of Software Change • New business or market conditions dictate changes in product requirements or business rules • New customer needs demand modifications of data produced by information systems, functionality delivered by products, or services delivered by a computer-based system • Reorganization or business growth/downsizing causes changes in project priorities or software engineering team structure • Budgetary or scheduling constraints cause a redefinition of the system or product
  • 7. 7 Elements of a Configuration Management System • Configuration elements – A set of tools coupled with a file management (e.g., database) system that enables access to and management of each software configuration item • Process elements – A collection of procedures and tasks that define an effective approach to change management for all participants • Construction elements – A set of tools that automate the construction of software by ensuring that the proper set of valid components (i.e., the correct version) is assembled • Human elements – A set of tools and process features used by a software team to implement effective SCM
  • 8. 8 Baseline • An SCM concept that helps practitioners to control change without seriously impeding justifiable change • IEEE Definition: A specification or product that has been formally reviewed and agreed upon, and that thereafter serves as the basis for further development, and that can be changed only through formal change control procedures • It is a milestone in the development of software and is marked by the delivery of one or more computer software configuration items (SCIs) that have been approved as a consequence of a formal technical review • A SCI may be such work products as a document, a test suite, or a software component
  • 10. 10 Baselining Process 1) A series of software engineering tasks produces a SCI 2) The SCI is reviewed and possibly approved 3) The approved SCI is given a new version number and placed in a project database (i.e., software repository) 4) A copy of the SCI is taken from the project database and examined/modified by a software engineer 5) The baselining of the modified SCI goes back to Step #2
  • 11. 11 Software Configuration Item (SCI) SCI is information that is created as a part of the s/w engineering process. It can be a document, a entire suit of test cases, a named program component like a C++ function or a java applet. Not only the SCI’s which are derived from different work products are placed in configuration control, but also some of the imp. tools like compilers, linkers, browsers, editors, other automated tools are also a part of configuration control.pilers)
  • 13. 13 Software Configuration Item (SCI) compilers)In reality, all SCI’s are organized to form configuration objects & is placed in project database with a single name. A configuration object has a name, attributes & is connected to other objects by a relationship. The configuration objects, Design Specification, DataModel, ComponentN, SourceCode & TestSpecification are each defined seperately. Each of the object is related to others as shown by arrows. A curved arrow indicates a compositional relation. i.e. DataModel & ComponentN are part of DesignSpecification. A double headed straight arrow indicates an interrelationship. If a change were made to the source code object, the interrelationship enables a s/w engineer to determine what other objects might be affected?
  • 15. 15 Paper-based vs. Automated Repositories • Problems with paper-based repositories (i.e., file cabinet containing folders) – Finding a configuration item when it was needed was often difficult – Determining which items were changed, when and by whom was often challenging – Constructing a new version of an existing program was time consuming and error prone – Describing detailed or complex relationships between configuration items was virtually impossible • Today's automated SCM repository – It is a set of mechanisms and data structures that allow a software team to manage change in an effective manner – It acts as the center for both accumulation and storage of software engineering information – Software engineers use tools integrated with the repository to interact with it
  • 16. 16 Automated SCM Repository Functions Data integrity Information sharing Tool integration Data integration Methodology enforcement Document standardization Versioning Dependency tracking Change management Requirements tracing Configuration management Audit trails SCM Repository
  • 17. 17 The Role of SCM Repository • Data integrity – Validates entries, ensures consistency, cascades modifications • Information sharing – Shares information among developers and tools, manages and controls multi-user access • Tool integration – Establishes a data model that can be accessed by many software engineering tools, controls access to the data • Data integration – Allows various SCM tasks to be performed on one or more CSCIs • Methodology enforcement – Defines an entity-relationship model for the repository that implies a specific process model for software engineering • Document standardization – Defines objects in the repository to guarantee a standard approach for creation of software engineering documents
  • 18. 18 Content of the Repository
  • 19. 19 SCM Features • Versioning – Save and retrieve all repository objects based on version number • Dependency tracking and change management – Track and respond to the changes in the state and relationship of all objects in the repository • Requirements tracing – (Forward tracing) Track the design and construction components and deliverables that result from a specific requirements specification – (Backward tracing) Identify which requirement generated any given work product • Configuration management – Track a series of configurations representing specific project milestones or production releases • Audit trails – Establish information about when, why, and by whom changes are made in the repository
  • 21. 21 Primary Objectives of the SCM Process • Identify all items that collectively define the software configuration • Manage changes to one or more of these items • Facilitate construction of different versions of an application • Ensure the software quality is maintained as the configuration evolves over time • Provide information on changes that have occurred
  • 22. 22 SCM Questions • How does a software team identify the discrete elements of a software configuration? • How does an organization manage the many existing versions of a program (and its documentation) in a manner that will enable change to be accommodated efficiently? • How does an organization control changes before and after software is released to a customer? • Who has responsibility for approving and ranking changes? • How can we ensure that changes have been made properly? • What mechanism is used to appraise others of changes that are made?
  • 23. 23 SCM Tasks Status reporting CSCI CSCI CSCI CSCI Identification Change control Version control Configuration auditing
  • 24. 24 SCM Tasks (continued) • Concentric layers (from inner to outer) – Identification – Change control – Version control – Configuration auditing – Status reporting • SCIs flow outward through these layers during their life cycle SCIs ultimately become part of the configuration of one or more versions of a software application or system  E.g. When a new SCI is created, it must be identified. However, if no changes are requested for the SCI, the change control layer does not apply.
  • 25. 25 Identification Task • Identification separately names each CSCI and then organizes it in the SCM repository using an object-oriented approach • Objects start out as basic objects and are then grouped into aggregate objects • Each object has a set of distinct features that identify it – A name that is unambiguous to all other objects – A description that contains the CSCI type, a project identifier, and change and/or version information – List of resources needed by the object – The object realization (i.e., the document, the file, the model, etc.)
  • 26. 26 Change Control • Change control is a procedural activity that ensures quality and consistency as changes are made to a configuration object • A change request is submitted to a configuration control authority, which is usually a change control board (CCB) – The request is evaluated for technical merit, potential side effects, overall impact on other configuration objects and system functions, and projected cost in terms of money, time, and resources • An engineering change order (ECO) is issued for each approved change request – Describes the change to be made, the constraints to follow, and the criteria for review and audit • The baselined CSCI is obtained from the SCM repository – Access control governs which software engineers have the authority to access and modify a particular configuration object – Synchronization control helps to ensure that parallel changes performed by two different people don't overwrite one another
  • 28. 28
  • 29. 29 Version Control • Version control is a set of procedures and tools for managing the creation and use of multiple occurrences of objects in the SCM repository • Required version control capabilities – An SCM repository that stores all relevant configuration objects – A version management capability that stores all versions of a configuration object (or enables any version to be constructed using differences from past versions) – A make facility that enables the software engineer to collect all relevant configuration objects and construct a specific version of the software – Issues tracking (bug tracking) capability that enables the team to record and track the status of all outstanding issues associated with each configuration object • The SCM repository maintains a change set – Serves as a collection of all changes made to a baseline configuration – Used to create a specific version of the software – Captures all changes to all files in the configuration along with the
  • 30. 30 Configuration Audit • Configuration auditing is an SQA activity that helps to ensure that quality is maintained as changes are made • It complements the formal technical review and is conducted by the SQA group • It addresses the following questions – Has the change specified in the ECO been made? Have any additional modifications been incorporated? – Has a formal technical review been conducted to assess technical correctness? – Has the software process been followed, and have software engineering standards been properly applied?
  • 31. 31 – Has the change been "highlighted" and "documented" in the CSCI? Have the change data and change author been specified? Do the attributes of the configuration object reflect the change? – Have SCM procedures for noting the change, recording it, and reporting it been followed? – Have all related CSCIs been properly updated? • A configuration audit ensures that – The correct CSCIs (by version) have been incorporated into a specific build – That all documentation is up-to-date and consistent with the version that has been built Configuration Audit
  • 32. 32 Status Report • Configuration status reporting (CSR) is also called status accounting • Provides information about each change to those personnel in an organization with a need to know • Answers what happened, who did it, when did it happen, and what else will be affected? • Sources of entries for configuration status reporting – Each time a CSCI is assigned new or updated information – Each time a change is approved by the CCB and an ECO is issued – Each time a configuration audit is conducted • The configuration status report – Placed in an on-line database or on a website for software developers and maintainers to read – Given to management and practitioners to keep them appraised of important changes to the project CSCIs