SlideShare a Scribd company logo
Mamunur Rashid
104420

A Brief
Introduction to
Software
Configuration
Management
What is Configuration Management
 “The

art of coordinating software development
to minimize…confusion is called configuration
management. Configuration management is 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.”
– Babich
 Software configuration management manages
the effect of change through out the software
process.
What is CM not
 Not

just version control

 Not

just for source code management

 Not

only for development phase

 Selecting

and using tools are important,
but design and management of CM
process are more crucial for project
success.
Q&A
 What

is it ?
Answer: Change Management. Auditing and
reporting on the changes made.
 Who does it ?
Answer: Everyone involved in the software
process.
 Why is it important ?
Answer: If you don’t control change, it controls
you. Uncontrolled changes suffers software
quality and delivery is delayed. So, it is an
essential part of quality management.
Q&A
 What

are the steps ?
Answer:
1.Many work products are produced when a
software if made of. Each must be
uniquely identified.
2.Mechanism for change control is
established as changes are made, the
process is audited and reports are made.
 What is the work product ?
Answer: describes the Programs/Coding e.g.
Data, Documentations.
Q&A
 How

do I ensure that I’ve done it right?
Answer: When every work product can be
accounted for, traced and controlled.
When every change can be tracked and
analyzed.
When everyone who needs to know about a
change has been informed-you've done
it right.
SCM Activities:
 Identify

change.
 Control changes.
 Ensure that the changes are being
properly implemented.
 Report changes to others who may have
an interest.
Some Simple CM Scenarios
 Developer

A wants to see latest
version of foo.c and its change history
since last week

B

needs to revert foo-design.doc to its
version two days ago

B

makes a release of the project and
he needs to know what items to
include and which version
Some Simple CM Scenarios (cont.)



A lives in IUT, Gazipur, Bangladesh and B lives
in Boston, US, they want to work on
HelloWorld.java together



In the latest release, a serious bug is found
and manager C wants to track what changes
caused the bug, who made those changes
and when



C wants to get reports about current project
progress to decide if he needs to hire more
programmers and delay the alpha release
SCM Terminology
Configuration

Item (CI)
Version, Variant, and
Revision
Configuration
Baseline
Workspace
Configuration Item (CI)


An approved and accepted deliverable, changes
have to be made through formal procedure



Examples:










Management plan
Requirement
Design specification
Source code and executable code
Test specification, data, and records
Log information
User documentation
Library and supporting software
Bug reports, etc.
Version, Variant, and Revision


Version: a CI at one point in its
development, includes revision
and variant



Revision: a CI linked to
another via revision-of
relationship, and ordered in
time



Variant: functionally equivalent
versions, but designed for
different settings, e.g. hardware
and software



Branch: a sequence of
versions in the time line

1.2

1.2

Win32 on x86

1.3

1.4

1.3.1.1

1.3.1.2

Solaris on
SPARC

1.3

1.4
How Versions are Stored




Full copy of each version
Delta (differences between two versions)
Forward delta
1.1



1.3

1.4

1.3

1.4

Reverse delta
1.1



1.2

Mixed delta

1.2
Configuration


An arrangement of functional CIs according to their
nature, version and other characteristics



Guaranteed to recreate configurations with quality
and functional assurance



Sometimes, configuration needs to record
environment details, e.g. compiler version, library
version, hardware platform, etc.



Simple examples


Ant buildfile, Makefile
Baseline


A collection of item versions that have been formally
reviewed and agreed on, a version of configuration



Marks milestones and serves as basis for further
development



Can only be changed via formal change
management process



Baseline + change sets to create new baselines
Workspace


An isolated environment where a developer can
work (edit, change, compile, test) without interfering
other developers



Examples





Local directory under version control
Private workspace on the server

Common Operations





Import: put resources into version control in repository
Update: get latest version on the default branch
Checkout: get a version into workspace
Checkin: commit changes to the repository
Version Control Models (1/3)


Basic problem of collaborative work

Figure from svn-book
Version Control Models (2/3)


Model 1-Pessimistic: lock-modify-unlock

Problems:


Forget to unlock



Parallel work not
possible



Deadlock

Figure from svn-book
Version Control Models (3/3)
Model 2-Optimistic: copy-modify-merge

Figure from svn-book
SCM Processes
Change

control process
Status accounting
Configuration audit
Release management
CM planning
Change Control Process


Submission of Change Request (CR)



Technical and business evaluation and impact analysis



Approval by Change Control Board (CCB)



Engineering Change Order (ECO) is generated stating

changes to be made

criteria for reviewing the changed CI



CI’s checked out



Changes made and reviewed



CI’s checked in
Status Accounting


Administrative tracking and reporting of CIs in CM
system



Examples






Status of proposed changes
Status of approved changes
Progress of current version, on or behind schedule
Estimate of resources to finish one task
bugs identified by configuration audit
Configuration Audit


Independent review or examination to assess if a
product or process is in compliance with
specification, standards, contractual agreement, or
other criteria



Examples






Verifies that CIs are tested to satisfy functional
requirements
Verifies that baseline contains necessary and correct CI
versions
Ensures that changes made to a baseline comply with the
configuration status reports
Release Management


Creation and availability of a new version of
software to the public



Release format







Source code + build script + instructions
Executables packaged for specific platforms
Other portable formats: Java Web Start, plugins
Patches and updates: automatic, manual

Release content


Source and/or binary, data files, installation scripts,
libraries, user and/or developer documentation, feedback
programs, etc.
Make a CM Plan


Standards




IEEE Std 828 (SCM Plans), ANSI-IEEE Std 1042 (SCM), etc.

CM plan components








What will be managed (list and organize CIs)
Who will be responsible for what activities (roles and tasks)
How to make it happen (design processes for change requests,
task dispatching, monitoring, testing, release, etc.)
What records to keep (logs, notes, configurations, changes, etc.)
What resources and how many (tools, money, manpower, etc.)
What metrics to measure progress and success
CM Tools


Version control




Bug tracking




Bugzilla, Mantis Bugtracker, Rational ClearQuest

Build




RCS, CVS, Subversion, Visual Source Safe, Rational ClearCase

GNU Make and many variants, Ant

Project management


Sourceforge.net, freshmeat.net, GForge, DForge
Reference and Further Reading
Reference





Introduction to Configuration Management, lecture slides for

COMP3100/3500, Ian Barnes, the Australian National University.
Software Configuration Management, Center for Development of
Advanced Computing, Mumbai at Juhu, India.
Concepts in Configuration Management Systems, Susan Dart,
CMU.
Software Configuration Management: A Roadmap, Jacky
Estublier, CNRS, France.

Further Reading


Software Engineering, a Practitioner’s Approach (6th), part 4,
Roger Pressman.






Code Complete (2nd), Steve McConnel.
http://cmcrossroads.com/
Implementing and Integrating PDM and SCM, Ivica Crnkovic et al.
Version Control with Subversion, Ben Collins-Sussman et al.

More Related Content

What's hot

Software Configuration Management (SCM)
Software Configuration Management (SCM)Software Configuration Management (SCM)
Software Configuration Management (SCM)
Er. Shiva K. Shrestha
 
Software configuration management
Software configuration managementSoftware configuration management
Software configuration managementJulia Carolina
 
Software Configuration Management (SCM)
Software Configuration Management (SCM)Software Configuration Management (SCM)
Software Configuration Management (SCM)Nishkarsh Gupta
 
Software Testing
Software TestingSoftware Testing
Software Testing
Mousmi Pawar
 
SQA - chapter 13 (Software Quality Infrastructure)
SQA - chapter 13 (Software Quality Infrastructure)SQA - chapter 13 (Software Quality Infrastructure)
SQA - chapter 13 (Software Quality Infrastructure)
uma sree
 
Software project management 3
Software project management 3Software project management 3
Software project management 3
Indu Sharma Bhardwaj
 
Unit 5- Architectural Design in software engineering
Unit 5- Architectural Design in software engineering Unit 5- Architectural Design in software engineering
Unit 5- Architectural Design in software engineering
arvind pandey
 
Quality Management in Software Engineering SE24
Quality Management in Software Engineering SE24Quality Management in Software Engineering SE24
Quality Management in Software Engineering SE24koolkampus
 
Software Evolution
Software EvolutionSoftware Evolution
Software Evolution
Muhammad Asim
 
Algorithmic Software Cost Modeling
Algorithmic Software Cost ModelingAlgorithmic Software Cost Modeling
Algorithmic Software Cost Modeling
Kasun Ranga Wijeweera
 
software configuration management ppt
 software configuration management  ppt software configuration management  ppt
software configuration management ppt
Yeshiwas Getachew
 
Software Quality Management
Software Quality ManagementSoftware Quality Management
Software Quality ManagementKrishna Sujeer
 
Formal Approaches to SQA.pptx
Formal Approaches to SQA.pptxFormal Approaches to SQA.pptx
Formal Approaches to SQA.pptx
KarthigaiSelviS3
 
Software Development Life Cycle
Software Development Life CycleSoftware Development Life Cycle
Software Development Life CycleSlideshare
 
Quality Assurance in Software Ind.
Quality Assurance in Software Ind.Quality Assurance in Software Ind.
Quality Assurance in Software Ind.
Heritage Institute Of Tech,India
 
Software evolution and maintenance basic concepts and preliminaries
Software evolution and maintenance   basic concepts and preliminariesSoftware evolution and maintenance   basic concepts and preliminaries
Software evolution and maintenance basic concepts and preliminaries
Moutasm Tamimi
 
Software quality assurance
Software quality assuranceSoftware quality assurance
Software quality assurance
Aman Adhikari
 
Software quality management lecture notes
Software quality management lecture notesSoftware quality management lecture notes
Software quality management lecture notes
AVC College of Engineering
 
verification and validation
verification and validationverification and validation
verification and validationDinesh Pasi
 

What's hot (20)

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
 
Software Configuration Management (SCM)
Software Configuration Management (SCM)Software Configuration Management (SCM)
Software Configuration Management (SCM)
 
Software Testing
Software TestingSoftware Testing
Software Testing
 
SQA - chapter 13 (Software Quality Infrastructure)
SQA - chapter 13 (Software Quality Infrastructure)SQA - chapter 13 (Software Quality Infrastructure)
SQA - chapter 13 (Software Quality Infrastructure)
 
Software project management 3
Software project management 3Software project management 3
Software project management 3
 
Unit 5- Architectural Design in software engineering
Unit 5- Architectural Design in software engineering Unit 5- Architectural Design in software engineering
Unit 5- Architectural Design in software engineering
 
Quality Management in Software Engineering SE24
Quality Management in Software Engineering SE24Quality Management in Software Engineering SE24
Quality Management in Software Engineering SE24
 
Software Evolution
Software EvolutionSoftware Evolution
Software Evolution
 
5. scm
5. scm5. scm
5. scm
 
Algorithmic Software Cost Modeling
Algorithmic Software Cost ModelingAlgorithmic Software Cost Modeling
Algorithmic Software Cost Modeling
 
software configuration management ppt
 software configuration management  ppt software configuration management  ppt
software configuration management ppt
 
Software Quality Management
Software Quality ManagementSoftware Quality Management
Software Quality Management
 
Formal Approaches to SQA.pptx
Formal Approaches to SQA.pptxFormal Approaches to SQA.pptx
Formal Approaches to SQA.pptx
 
Software Development Life Cycle
Software Development Life CycleSoftware Development Life Cycle
Software Development Life Cycle
 
Quality Assurance in Software Ind.
Quality Assurance in Software Ind.Quality Assurance in Software Ind.
Quality Assurance in Software Ind.
 
Software evolution and maintenance basic concepts and preliminaries
Software evolution and maintenance   basic concepts and preliminariesSoftware evolution and maintenance   basic concepts and preliminaries
Software evolution and maintenance basic concepts and preliminaries
 
Software quality assurance
Software quality assuranceSoftware quality assurance
Software quality assurance
 
Software quality management lecture notes
Software quality management lecture notesSoftware quality management lecture notes
Software quality management lecture notes
 
verification and validation
verification and validationverification and validation
verification and validation
 

Viewers also liked

Integration test
Integration testIntegration test
Integration test
sadegh salehi
 
Software Configuration Management
Software Configuration ManagementSoftware Configuration Management
Software Configuration Management
JeyanthiR
 
software configuration management
software configuration managementsoftware configuration management
software configuration managementFáber D. Giraldo
 
Software Configuration Management
Software Configuration ManagementSoftware Configuration Management
Software Configuration Management
guy_davis
 
Software Configuration Management
Software Configuration ManagementSoftware Configuration Management
Software Configuration Managementelliando dias
 
Software Configuration Management
Software Configuration ManagementSoftware Configuration Management
Software Configuration ManagementChandan Chaurasia
 

Viewers also liked (6)

Integration test
Integration testIntegration test
Integration test
 
Software Configuration Management
Software Configuration ManagementSoftware Configuration Management
Software Configuration Management
 
software configuration management
software configuration managementsoftware configuration management
software configuration management
 
Software Configuration Management
Software Configuration ManagementSoftware Configuration Management
Software Configuration Management
 
Software Configuration Management
Software Configuration ManagementSoftware Configuration Management
Software Configuration Management
 
Software Configuration Management
Software Configuration ManagementSoftware Configuration Management
Software Configuration Management
 

Similar to A Brief Introduction to Software Configuration Management

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 Configuration Management
Software Configuration ManagementSoftware Configuration Management
Software Configuration Managementelliando dias
 
Configuration Management
Configuration ManagementConfiguration Management
Configuration Managementelliando dias
 
Configuration Management
Configuration ManagementConfiguration Management
Configuration Management
Rajesh Kumar
 
SE2_Lec 22_Software Configuration Management
SE2_Lec 22_Software Configuration ManagementSE2_Lec 22_Software Configuration Management
SE2_Lec 22_Software Configuration Management
Amr E. Mohamed
 
Software Configuration Management
Software Configuration ManagementSoftware Configuration Management
Software Configuration Management
Virendra Thakur
 
Software Configuration Management introduction
Software Configuration Management introductionSoftware Configuration Management introduction
Software Configuration Management introduction
Mani Deepak Choudhry
 
lecture14.ppt
lecture14.pptlecture14.ppt
lecture14.ppt
ubaidullah75790
 
Software Configuration Management And CVS
Software Configuration Management And CVSSoftware Configuration Management And CVS
Software Configuration Management And CVS
Rajesh Kumar
 
SE-Lecture-8.pptx
SE-Lecture-8.pptxSE-Lecture-8.pptx
SE-Lecture-8.pptx
vishal choudhary
 
Configuration Managment Powerpoint
Configuration Managment PowerpointConfiguration Managment Powerpoint
Configuration Managment PowerpointJeannine Jacobs, MS
 
Configuration Management
Configuration ManagementConfiguration Management
Configuration Managementelliando dias
 
Software configuration management, Web engineering
Software configuration management, Web engineeringSoftware configuration management, Web engineering
Software configuration management, Web engineering
divyammo
 
Mod5-SCM.ppt
Mod5-SCM.pptMod5-SCM.ppt
Mod5-SCM.ppt
divyammo
 
Mod5-SCM.ppt
Mod5-SCM.pptMod5-SCM.ppt
Mod5-SCM.ppt
divyammo
 
software configuratiom management role n resposnbilities
software configuratiom management role n resposnbilitiessoftware configuratiom management role n resposnbilities
software configuratiom management role n resposnbilities
Mahesh Panchal
 
Improving Code Quality In Medical Software Through Code Reviews - Vincit Teat...
Improving Code Quality In Medical Software Through Code Reviews - Vincit Teat...Improving Code Quality In Medical Software Through Code Reviews - Vincit Teat...
Improving Code Quality In Medical Software Through Code Reviews - Vincit Teat...
VincitOy
 

Similar to A Brief Introduction to Software Configuration Management (20)

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)
 
Software Configuration Management
Software Configuration ManagementSoftware Configuration Management
Software Configuration Management
 
Configuration Management
Configuration ManagementConfiguration Management
Configuration Management
 
Configuration Management
Configuration ManagementConfiguration Management
Configuration Management
 
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
Software Configuration ManagementSoftware Configuration Management
Software Configuration Management
 
Software Configuration Management introduction
Software Configuration Management introductionSoftware Configuration Management introduction
Software Configuration Management introduction
 
lecture14.ppt
lecture14.pptlecture14.ppt
lecture14.ppt
 
Ch 8 configuration management
Ch 8 configuration managementCh 8 configuration management
Ch 8 configuration management
 
Software Configuration Management And CVS
Software Configuration Management And CVSSoftware Configuration Management And CVS
Software Configuration Management And CVS
 
SE-Lecture-8.pptx
SE-Lecture-8.pptxSE-Lecture-8.pptx
SE-Lecture-8.pptx
 
Configuration Managment Powerpoint
Configuration Managment PowerpointConfiguration Managment Powerpoint
Configuration Managment Powerpoint
 
Configuration Management
Configuration ManagementConfiguration Management
Configuration Management
 
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
 
software configuratiom management role n resposnbilities
software configuratiom management role n resposnbilitiessoftware configuratiom management role n resposnbilities
software configuratiom management role n resposnbilities
 
Voyager scm
Voyager scmVoyager scm
Voyager scm
 
Voyager scm
Voyager scmVoyager scm
Voyager scm
 
Improving Code Quality In Medical Software Through Code Reviews - Vincit Teat...
Improving Code Quality In Medical Software Through Code Reviews - Vincit Teat...Improving Code Quality In Medical Software Through Code Reviews - Vincit Teat...
Improving Code Quality In Medical Software Through Code Reviews - Vincit Teat...
 

Recently uploaded

Palestine last event orientationfvgnh .pptx
Palestine last event orientationfvgnh .pptxPalestine last event orientationfvgnh .pptx
Palestine last event orientationfvgnh .pptx
RaedMohamed3
 
The approach at University of Liverpool.pptx
The approach at University of Liverpool.pptxThe approach at University of Liverpool.pptx
The approach at University of Liverpool.pptx
Jisc
 
TESDA TM1 REVIEWER FOR NATIONAL ASSESSMENT WRITTEN AND ORAL QUESTIONS WITH A...
TESDA TM1 REVIEWER  FOR NATIONAL ASSESSMENT WRITTEN AND ORAL QUESTIONS WITH A...TESDA TM1 REVIEWER  FOR NATIONAL ASSESSMENT WRITTEN AND ORAL QUESTIONS WITH A...
TESDA TM1 REVIEWER FOR NATIONAL ASSESSMENT WRITTEN AND ORAL QUESTIONS WITH A...
EugeneSaldivar
 
The Challenger.pdf DNHS Official Publication
The Challenger.pdf DNHS Official PublicationThe Challenger.pdf DNHS Official Publication
The Challenger.pdf DNHS Official Publication
Delapenabediema
 
Additional Benefits for Employee Website.pdf
Additional Benefits for Employee Website.pdfAdditional Benefits for Employee Website.pdf
Additional Benefits for Employee Website.pdf
joachimlavalley1
 
The geography of Taylor Swift - some ideas
The geography of Taylor Swift - some ideasThe geography of Taylor Swift - some ideas
The geography of Taylor Swift - some ideas
GeoBlogs
 
Lapbook sobre os Regimes Totalitários.pdf
Lapbook sobre os Regimes Totalitários.pdfLapbook sobre os Regimes Totalitários.pdf
Lapbook sobre os Regimes Totalitários.pdf
Jean Carlos Nunes Paixão
 
Digital Tools and AI for Teaching Learning and Research
Digital Tools and AI for Teaching Learning and ResearchDigital Tools and AI for Teaching Learning and Research
Digital Tools and AI for Teaching Learning and Research
Vikramjit Singh
 
Synthetic Fiber Construction in lab .pptx
Synthetic Fiber Construction in lab .pptxSynthetic Fiber Construction in lab .pptx
Synthetic Fiber Construction in lab .pptx
Pavel ( NSTU)
 
Chapter 3 - Islamic Banking Products and Services.pptx
Chapter 3 - Islamic Banking Products and Services.pptxChapter 3 - Islamic Banking Products and Services.pptx
Chapter 3 - Islamic Banking Products and Services.pptx
Mohd Adib Abd Muin, Senior Lecturer at Universiti Utara Malaysia
 
Guidance_and_Counselling.pdf B.Ed. 4th Semester
Guidance_and_Counselling.pdf B.Ed. 4th SemesterGuidance_and_Counselling.pdf B.Ed. 4th Semester
Guidance_and_Counselling.pdf B.Ed. 4th Semester
Atul Kumar Singh
 
Unit 8 - Information and Communication Technology (Paper I).pdf
Unit 8 - Information and Communication Technology (Paper I).pdfUnit 8 - Information and Communication Technology (Paper I).pdf
Unit 8 - Information and Communication Technology (Paper I).pdf
Thiyagu K
 
Phrasal Verbs.XXXXXXXXXXXXXXXXXXXXXXXXXX
Phrasal Verbs.XXXXXXXXXXXXXXXXXXXXXXXXXXPhrasal Verbs.XXXXXXXXXXXXXXXXXXXXXXXXXX
Phrasal Verbs.XXXXXXXXXXXXXXXXXXXXXXXXXX
MIRIAMSALINAS13
 
"Protectable subject matters, Protection in biotechnology, Protection of othe...
"Protectable subject matters, Protection in biotechnology, Protection of othe..."Protectable subject matters, Protection in biotechnology, Protection of othe...
"Protectable subject matters, Protection in biotechnology, Protection of othe...
SACHIN R KONDAGURI
 
BÀI TẬP BỔ TRỢ TIẾNG ANH GLOBAL SUCCESS LỚP 3 - CẢ NĂM (CÓ FILE NGHE VÀ ĐÁP Á...
BÀI TẬP BỔ TRỢ TIẾNG ANH GLOBAL SUCCESS LỚP 3 - CẢ NĂM (CÓ FILE NGHE VÀ ĐÁP Á...BÀI TẬP BỔ TRỢ TIẾNG ANH GLOBAL SUCCESS LỚP 3 - CẢ NĂM (CÓ FILE NGHE VÀ ĐÁP Á...
BÀI TẬP BỔ TRỢ TIẾNG ANH GLOBAL SUCCESS LỚP 3 - CẢ NĂM (CÓ FILE NGHE VÀ ĐÁP Á...
Nguyen Thanh Tu Collection
 
A Strategic Approach: GenAI in Education
A Strategic Approach: GenAI in EducationA Strategic Approach: GenAI in Education
A Strategic Approach: GenAI in Education
Peter Windle
 
CACJapan - GROUP Presentation 1- Wk 4.pdf
CACJapan - GROUP Presentation 1- Wk 4.pdfCACJapan - GROUP Presentation 1- Wk 4.pdf
CACJapan - GROUP Presentation 1- Wk 4.pdf
camakaiclarkmusic
 
2024.06.01 Introducing a competency framework for languag learning materials ...
2024.06.01 Introducing a competency framework for languag learning materials ...2024.06.01 Introducing a competency framework for languag learning materials ...
2024.06.01 Introducing a competency framework for languag learning materials ...
Sandy Millin
 
Home assignment II on Spectroscopy 2024 Answers.pdf
Home assignment II on Spectroscopy 2024 Answers.pdfHome assignment II on Spectroscopy 2024 Answers.pdf
Home assignment II on Spectroscopy 2024 Answers.pdf
Tamralipta Mahavidyalaya
 
Introduction to AI for Nonprofits with Tapp Network
Introduction to AI for Nonprofits with Tapp NetworkIntroduction to AI for Nonprofits with Tapp Network
Introduction to AI for Nonprofits with Tapp Network
TechSoup
 

Recently uploaded (20)

Palestine last event orientationfvgnh .pptx
Palestine last event orientationfvgnh .pptxPalestine last event orientationfvgnh .pptx
Palestine last event orientationfvgnh .pptx
 
The approach at University of Liverpool.pptx
The approach at University of Liverpool.pptxThe approach at University of Liverpool.pptx
The approach at University of Liverpool.pptx
 
TESDA TM1 REVIEWER FOR NATIONAL ASSESSMENT WRITTEN AND ORAL QUESTIONS WITH A...
TESDA TM1 REVIEWER  FOR NATIONAL ASSESSMENT WRITTEN AND ORAL QUESTIONS WITH A...TESDA TM1 REVIEWER  FOR NATIONAL ASSESSMENT WRITTEN AND ORAL QUESTIONS WITH A...
TESDA TM1 REVIEWER FOR NATIONAL ASSESSMENT WRITTEN AND ORAL QUESTIONS WITH A...
 
The Challenger.pdf DNHS Official Publication
The Challenger.pdf DNHS Official PublicationThe Challenger.pdf DNHS Official Publication
The Challenger.pdf DNHS Official Publication
 
Additional Benefits for Employee Website.pdf
Additional Benefits for Employee Website.pdfAdditional Benefits for Employee Website.pdf
Additional Benefits for Employee Website.pdf
 
The geography of Taylor Swift - some ideas
The geography of Taylor Swift - some ideasThe geography of Taylor Swift - some ideas
The geography of Taylor Swift - some ideas
 
Lapbook sobre os Regimes Totalitários.pdf
Lapbook sobre os Regimes Totalitários.pdfLapbook sobre os Regimes Totalitários.pdf
Lapbook sobre os Regimes Totalitários.pdf
 
Digital Tools and AI for Teaching Learning and Research
Digital Tools and AI for Teaching Learning and ResearchDigital Tools and AI for Teaching Learning and Research
Digital Tools and AI for Teaching Learning and Research
 
Synthetic Fiber Construction in lab .pptx
Synthetic Fiber Construction in lab .pptxSynthetic Fiber Construction in lab .pptx
Synthetic Fiber Construction in lab .pptx
 
Chapter 3 - Islamic Banking Products and Services.pptx
Chapter 3 - Islamic Banking Products and Services.pptxChapter 3 - Islamic Banking Products and Services.pptx
Chapter 3 - Islamic Banking Products and Services.pptx
 
Guidance_and_Counselling.pdf B.Ed. 4th Semester
Guidance_and_Counselling.pdf B.Ed. 4th SemesterGuidance_and_Counselling.pdf B.Ed. 4th Semester
Guidance_and_Counselling.pdf B.Ed. 4th Semester
 
Unit 8 - Information and Communication Technology (Paper I).pdf
Unit 8 - Information and Communication Technology (Paper I).pdfUnit 8 - Information and Communication Technology (Paper I).pdf
Unit 8 - Information and Communication Technology (Paper I).pdf
 
Phrasal Verbs.XXXXXXXXXXXXXXXXXXXXXXXXXX
Phrasal Verbs.XXXXXXXXXXXXXXXXXXXXXXXXXXPhrasal Verbs.XXXXXXXXXXXXXXXXXXXXXXXXXX
Phrasal Verbs.XXXXXXXXXXXXXXXXXXXXXXXXXX
 
"Protectable subject matters, Protection in biotechnology, Protection of othe...
"Protectable subject matters, Protection in biotechnology, Protection of othe..."Protectable subject matters, Protection in biotechnology, Protection of othe...
"Protectable subject matters, Protection in biotechnology, Protection of othe...
 
BÀI TẬP BỔ TRỢ TIẾNG ANH GLOBAL SUCCESS LỚP 3 - CẢ NĂM (CÓ FILE NGHE VÀ ĐÁP Á...
BÀI TẬP BỔ TRỢ TIẾNG ANH GLOBAL SUCCESS LỚP 3 - CẢ NĂM (CÓ FILE NGHE VÀ ĐÁP Á...BÀI TẬP BỔ TRỢ TIẾNG ANH GLOBAL SUCCESS LỚP 3 - CẢ NĂM (CÓ FILE NGHE VÀ ĐÁP Á...
BÀI TẬP BỔ TRỢ TIẾNG ANH GLOBAL SUCCESS LỚP 3 - CẢ NĂM (CÓ FILE NGHE VÀ ĐÁP Á...
 
A Strategic Approach: GenAI in Education
A Strategic Approach: GenAI in EducationA Strategic Approach: GenAI in Education
A Strategic Approach: GenAI in Education
 
CACJapan - GROUP Presentation 1- Wk 4.pdf
CACJapan - GROUP Presentation 1- Wk 4.pdfCACJapan - GROUP Presentation 1- Wk 4.pdf
CACJapan - GROUP Presentation 1- Wk 4.pdf
 
2024.06.01 Introducing a competency framework for languag learning materials ...
2024.06.01 Introducing a competency framework for languag learning materials ...2024.06.01 Introducing a competency framework for languag learning materials ...
2024.06.01 Introducing a competency framework for languag learning materials ...
 
Home assignment II on Spectroscopy 2024 Answers.pdf
Home assignment II on Spectroscopy 2024 Answers.pdfHome assignment II on Spectroscopy 2024 Answers.pdf
Home assignment II on Spectroscopy 2024 Answers.pdf
 
Introduction to AI for Nonprofits with Tapp Network
Introduction to AI for Nonprofits with Tapp NetworkIntroduction to AI for Nonprofits with Tapp Network
Introduction to AI for Nonprofits with Tapp Network
 

A Brief Introduction to Software Configuration Management

  • 1. Mamunur Rashid 104420 A Brief Introduction to Software Configuration Management
  • 2. What is Configuration Management  “The art of coordinating software development to minimize…confusion is called configuration management. Configuration management is 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.” – Babich  Software configuration management manages the effect of change through out the software process.
  • 3. What is CM not  Not just version control  Not just for source code management  Not only for development phase  Selecting and using tools are important, but design and management of CM process are more crucial for project success.
  • 4. Q&A  What is it ? Answer: Change Management. Auditing and reporting on the changes made.  Who does it ? Answer: Everyone involved in the software process.  Why is it important ? Answer: If you don’t control change, it controls you. Uncontrolled changes suffers software quality and delivery is delayed. So, it is an essential part of quality management.
  • 5. Q&A  What are the steps ? Answer: 1.Many work products are produced when a software if made of. Each must be uniquely identified. 2.Mechanism for change control is established as changes are made, the process is audited and reports are made.  What is the work product ? Answer: describes the Programs/Coding e.g. Data, Documentations.
  • 6. Q&A  How do I ensure that I’ve done it right? Answer: When every work product can be accounted for, traced and controlled. When every change can be tracked and analyzed. When everyone who needs to know about a change has been informed-you've done it right.
  • 7. SCM Activities:  Identify change.  Control changes.  Ensure that the changes are being properly implemented.  Report changes to others who may have an interest.
  • 8. Some Simple CM Scenarios  Developer A wants to see latest version of foo.c and its change history since last week B needs to revert foo-design.doc to its version two days ago B makes a release of the project and he needs to know what items to include and which version
  • 9. Some Simple CM Scenarios (cont.)  A lives in IUT, Gazipur, Bangladesh and B lives in Boston, US, they want to work on HelloWorld.java together  In the latest release, a serious bug is found and manager C wants to track what changes caused the bug, who made those changes and when  C wants to get reports about current project progress to decide if he needs to hire more programmers and delay the alpha release
  • 10. SCM Terminology Configuration Item (CI) Version, Variant, and Revision Configuration Baseline Workspace
  • 11. Configuration Item (CI)  An approved and accepted deliverable, changes have to be made through formal procedure  Examples:          Management plan Requirement Design specification Source code and executable code Test specification, data, and records Log information User documentation Library and supporting software Bug reports, etc.
  • 12. Version, Variant, and Revision  Version: a CI at one point in its development, includes revision and variant  Revision: a CI linked to another via revision-of relationship, and ordered in time  Variant: functionally equivalent versions, but designed for different settings, e.g. hardware and software  Branch: a sequence of versions in the time line 1.2 1.2 Win32 on x86 1.3 1.4 1.3.1.1 1.3.1.2 Solaris on SPARC 1.3 1.4
  • 13. How Versions are Stored    Full copy of each version Delta (differences between two versions) Forward delta 1.1  1.3 1.4 1.3 1.4 Reverse delta 1.1  1.2 Mixed delta 1.2
  • 14. Configuration  An arrangement of functional CIs according to their nature, version and other characteristics  Guaranteed to recreate configurations with quality and functional assurance  Sometimes, configuration needs to record environment details, e.g. compiler version, library version, hardware platform, etc.  Simple examples  Ant buildfile, Makefile
  • 15. Baseline  A collection of item versions that have been formally reviewed and agreed on, a version of configuration  Marks milestones and serves as basis for further development  Can only be changed via formal change management process  Baseline + change sets to create new baselines
  • 16. Workspace  An isolated environment where a developer can work (edit, change, compile, test) without interfering other developers  Examples    Local directory under version control Private workspace on the server Common Operations     Import: put resources into version control in repository Update: get latest version on the default branch Checkout: get a version into workspace Checkin: commit changes to the repository
  • 17. Version Control Models (1/3)  Basic problem of collaborative work Figure from svn-book
  • 18. Version Control Models (2/3)  Model 1-Pessimistic: lock-modify-unlock Problems:  Forget to unlock  Parallel work not possible  Deadlock Figure from svn-book
  • 19. Version Control Models (3/3) Model 2-Optimistic: copy-modify-merge Figure from svn-book
  • 20. SCM Processes Change control process Status accounting Configuration audit Release management CM planning
  • 21. Change Control Process  Submission of Change Request (CR)  Technical and business evaluation and impact analysis  Approval by Change Control Board (CCB)  Engineering Change Order (ECO) is generated stating  changes to be made  criteria for reviewing the changed CI  CI’s checked out  Changes made and reviewed  CI’s checked in
  • 22. Status Accounting  Administrative tracking and reporting of CIs in CM system  Examples      Status of proposed changes Status of approved changes Progress of current version, on or behind schedule Estimate of resources to finish one task bugs identified by configuration audit
  • 23. Configuration Audit  Independent review or examination to assess if a product or process is in compliance with specification, standards, contractual agreement, or other criteria  Examples    Verifies that CIs are tested to satisfy functional requirements Verifies that baseline contains necessary and correct CI versions Ensures that changes made to a baseline comply with the configuration status reports
  • 24. Release Management  Creation and availability of a new version of software to the public  Release format      Source code + build script + instructions Executables packaged for specific platforms Other portable formats: Java Web Start, plugins Patches and updates: automatic, manual Release content  Source and/or binary, data files, installation scripts, libraries, user and/or developer documentation, feedback programs, etc.
  • 25. Make a CM Plan  Standards   IEEE Std 828 (SCM Plans), ANSI-IEEE Std 1042 (SCM), etc. CM plan components       What will be managed (list and organize CIs) Who will be responsible for what activities (roles and tasks) How to make it happen (design processes for change requests, task dispatching, monitoring, testing, release, etc.) What records to keep (logs, notes, configurations, changes, etc.) What resources and how many (tools, money, manpower, etc.) What metrics to measure progress and success
  • 26. CM Tools  Version control   Bug tracking   Bugzilla, Mantis Bugtracker, Rational ClearQuest Build   RCS, CVS, Subversion, Visual Source Safe, Rational ClearCase GNU Make and many variants, Ant Project management  Sourceforge.net, freshmeat.net, GForge, DForge
  • 27. Reference and Further Reading Reference     Introduction to Configuration Management, lecture slides for COMP3100/3500, Ian Barnes, the Australian National University. Software Configuration Management, Center for Development of Advanced Computing, Mumbai at Juhu, India. Concepts in Configuration Management Systems, Susan Dart, CMU. Software Configuration Management: A Roadmap, Jacky Estublier, CNRS, France. Further Reading  Software Engineering, a Practitioner’s Approach (6th), part 4, Roger Pressman.     Code Complete (2nd), Steve McConnel. http://cmcrossroads.com/ Implementing and Integrating PDM and SCM, Ivica Crnkovic et al. Version Control with Subversion, Ben Collins-Sussman et al.