SlideShare a Scribd company logo
Lesson 1
Bashir S. Galadanci
18/12/2021
Software Configuration
Management and Maintenance
Lesson 1 1
 Introduction
 Course Information
 Why Configuration Management (CM)?
 What is CM?
 Who is CM For?
 CM Activities
 Tool Support
 Multi-Version Systems
 CM Terminology
18/12/2021
Software Configuration
Management and Maintenance
Lesson 1 2
Course Title: Software Configuration Management
and Maintenance
Course Lecturer: Bashir S. Galadanci
Course Delivery: Face-to-Face and Online
(Through Zoom)
Recommended Textbook: Sommerville 10th Edition
Presentations: Adapted from Sommerville Slides
(from the author’s website)
18/12/2021
Software Configuration
Management and Maintenance
Lesson 1 3
Software systems are constantly changing during
development and use for the following reasons:
 Bugs are discovered and have to be fixed.
 System requirements change, and you have to implement
these changes in a new version of the system.
 New versions of hardware and system platforms are
released, and you have to adapt your systems to work with
them.
 Competitors introduce new features in their system that
you have to match.
As changes are made to the software, a new version of a
system is created. Most systems, therefore, can be thought
of as a set of versions, each of which may have to be
maintained and managed.
18/12/2021
Software Configuration
Management and Maintenance
Lesson 1 4
 Configuration management (CM) is concerned with
the policies, processes, and tools for managing
changing software systems (Aiello and Sachs 2011).
 You need to manage evolving systems because it is
easy to lose track of what changes and component
versions have been incorporated into each system
version.
 If you don’t have effective configuration management
procedures in place, you may waste effort modifying
the wrong version of a system, delivering the wrong
version of a system to customers, or forgetting where
the software source code for a particular version of
the system or component is stored.
18/12/2021
Software Configuration
Management and Maintenance
Lesson 1 5
 Configuration management is useful for
individual projects as it is easy for one person
to forget what changes have been made.
 It is essential for team projects where several
developers are working at the same time on a
software system.
 Sometimes these developers are all working
in the same place, but, increasingly,
development teams are distributed with
members in different locations across the
world.
18/12/2021
Software Configuration
Management and Maintenance
Lesson 1 6
 Version management
◦ Keeping track of the multiple versions of system components and
ensuring that changes made to components by different
developers do not interfere with each other.
 System building
◦ The process of assembling program components, data and
libraries, then compiling these to create an executable system.
 Change management
◦ Keeping track of requests for changes to the software from
customers and developers, working out the costs and impact of
changes, and deciding the changes should be implemented.
 Release management
◦ Preparing software for external release and keeping track of the
system versions that have been released for customer use.
18/12/2021
Software Configuration
Management and Maintenance
Lesson 1 7
18/12/2021
Software Configuration
Management and Maintenance
Lesson 1 8
Because of the large volume of information to be
managed and the relationships between configuration
items, tool support is essential for configuration
management.
Configuration management tools are used to:
 store versions of system components,
 build systems from these components,
 track the releases of system versions to customers,
 and keep track of change proposals.
CM tools range from simple tools that support a single
configuration management task, such as bug tracking,
to integrated environments that support all
configuration management activities.
18/12/2021
Software Configuration
Management and Maintenance
Lesson 1 9
 Agile development, where components and
systems are changed several times per day, is
impossible without using CM tools.
 The definitive versions of components are held in
a shared project repository and developers copy
these into their own workspace.
 They make changes to the code then use system
building tools to create a new system on their
own computer for testing. Once they are happy
with the changes made, they return the modified
components to the project repository.
18/12/2021
Software Configuration
Management and Maintenance
Lesson 1 10
 A development phase where the development
team is responsible for managing the software
configuration and new functionality is being
added to the software.
 A system testing phase where a version of the
system is released internally for testing.
◦ No new system functionality is added. Changes made are
bug fixes, performance improvements and security
vulnerability repairs.
 A release phase where the software is released to
customers for use.
◦ New versions of the released system are developed to
repair bugs and vulnerabilities and to include new
features.
18/12/2021
Software Configuration
Management and Maintenance
Lesson 1 11
 For large systems, there is never just one
‘working’ version of a system.
 There are always several versions of the
system at different stages of development.
 There may be several teams involved in the
development of different system versions.
18/12/2021
Software Configuration
Management and Maintenance
Lesson 1 12
18/12/2021
Software Configuration
Management and Maintenance
Lesson 1 13
Term Explanation
Baseline A baseline is a collection of component versions that make up a system.
Baselines are controlled, which means that the versions of the
components making up the system cannot be changed. This means that
it is always possible to recreate a baseline from its constituent
components.
Branching The creation of a new codeline from a version in an existing codeline.
The new codeline and the existing codeline may then develop
independently.
Codeline A codeline is a set of versions of a software component and other
configuration items on which that component depends.
Configuration
(version) control
The process of ensuring that versions of systems and components are
recorded and maintained so that changes are managed and all versions
of components are identified and stored for the lifetime of the system.
Configuration item or
software configuration
item (SCI)
Anything associated with a software project (design, code, test data,
document, etc.) that has been placed under configuration control. There
are often different versions of a configuration item. Configuration items
have a unique name.
Mainline A sequence of baselines representing different versions of a system.
18/12/2021
Software Configuration
Management and Maintenance
Lesson 1 14
Term Explanation
Merging The creation of a new version of a software component by merging
separate versions in different codelines. These codelines may have
been created by a previous branch of one of the codelines involved.
Release A version of a system that has been released to customers (or other
users in an organization) for use.
Repository A shared database of versions of software components and meta-
information about changes to these components.
System building The creation of an executable system version by compiling and linking
the appropriate versions of the components and libraries making up the
system.
Version An instance of a configuration item that differs, in some way, from other
instances of that item. Versions always have a unique identifier.
Workspace A private work area where software can be modified without affecting
other developers who may be using or modifying that software.
18/12/2021
Software Configuration
Management and Maintenance
Lesson 1 15
If there are any questions, please ask at the
beginning of the next lesson ??
Software Configuration Management
and Maintenance Lesson 1 16
18/12/2021

More Related Content

Similar to BSG SE4201 Software Configuration Management and Maintenance Lesson 1 November 2021.pptx

Ch9
Ch9Ch9
SE2013_10.ppt
SE2013_10.pptSE2013_10.ppt
SE2013_10.ppt
CarlPilac1
 
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
 
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
 
version control system (2).pptx
version control system (2).pptxversion control system (2).pptx
version control system (2).pptx
DipanshuRaj19
 
Ch9-Software Engineering 9
Ch9-Software Engineering 9Ch9-Software Engineering 9
Ch9-Software Engineering 9Ian Sommerville
 
SE Lecture 7.ppt
SE Lecture 7.pptSE Lecture 7.ppt
SE Lecture 7.ppt
asadjaved3004
 
Software configuration management
Software configuration managementSoftware configuration management
Software configuration management
lokareminakshi
 
SWE-401 - 11. Software maintenance overview
SWE-401 - 11. Software maintenance overviewSWE-401 - 11. Software maintenance overview
SWE-401 - 11. Software maintenance overview
ghayour abbas
 
Agile Engineering
Agile EngineeringAgile Engineering
Agile EngineeringJohn Lewis
 
term paper for cbd models
term paper for cbd modelsterm paper for cbd models
term paper for cbd modelsSukhdeep Singh
 
2.-IT-266_APDET-Module-2-of-3.pptx
2.-IT-266_APDET-Module-2-of-3.pptx2.-IT-266_APDET-Module-2-of-3.pptx
2.-IT-266_APDET-Module-2-of-3.pptx
KENNEDYDONATO1
 
DevOps Presentation.pptx
DevOps Presentation.pptxDevOps Presentation.pptx
DevOps Presentation.pptx
Abdullah al Mamun
 
Software process
Software processSoftware process
Software process
Jennifer Polack
 
Configuration management
Configuration managementConfiguration management
Configuration management
Mohammed Abdallah
 
ppt on sOFTWARE DEVELOPMENT LIFE CYCLE
 ppt on sOFTWARE DEVELOPMENT LIFE CYCLE ppt on sOFTWARE DEVELOPMENT LIFE CYCLE
ppt on sOFTWARE DEVELOPMENT LIFE CYCLE
Swarnima Tiwari
 
softwareMaintenance.pdf
softwareMaintenance.pdfsoftwareMaintenance.pdf
softwareMaintenance.pdf
kumari36
 
Ch2-Software Engineering 9
Ch2-Software Engineering 9Ch2-Software Engineering 9
Ch2-Software Engineering 9Ian Sommerville
 

Similar to BSG SE4201 Software Configuration Management and Maintenance Lesson 1 November 2021.pptx (20)

Ch9
Ch9Ch9
Ch9
 
SE2013_10.ppt
SE2013_10.pptSE2013_10.ppt
SE2013_10.ppt
 
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
 
SE2_Lec 22_Software Configuration Management
SE2_Lec 22_Software Configuration ManagementSE2_Lec 22_Software Configuration Management
SE2_Lec 22_Software Configuration Management
 
version control system (2).pptx
version control system (2).pptxversion control system (2).pptx
version control system (2).pptx
 
Ch9-Software Engineering 9
Ch9-Software Engineering 9Ch9-Software Engineering 9
Ch9-Software Engineering 9
 
SE Lecture 7.ppt
SE Lecture 7.pptSE Lecture 7.ppt
SE Lecture 7.ppt
 
Software configuration management
Software configuration managementSoftware configuration management
Software configuration management
 
SWE-401 - 11. Software maintenance overview
SWE-401 - 11. Software maintenance overviewSWE-401 - 11. Software maintenance overview
SWE-401 - 11. Software maintenance overview
 
Agile Engineering
Agile EngineeringAgile Engineering
Agile Engineering
 
term paper for cbd models
term paper for cbd modelsterm paper for cbd models
term paper for cbd models
 
2.-IT-266_APDET-Module-2-of-3.pptx
2.-IT-266_APDET-Module-2-of-3.pptx2.-IT-266_APDET-Module-2-of-3.pptx
2.-IT-266_APDET-Module-2-of-3.pptx
 
DevOps Presentation.pptx
DevOps Presentation.pptxDevOps Presentation.pptx
DevOps Presentation.pptx
 
Software process
Software processSoftware process
Software process
 
Configuration management
Configuration managementConfiguration management
Configuration management
 
ppt on sOFTWARE DEVELOPMENT LIFE CYCLE
 ppt on sOFTWARE DEVELOPMENT LIFE CYCLE ppt on sOFTWARE DEVELOPMENT LIFE CYCLE
ppt on sOFTWARE DEVELOPMENT LIFE CYCLE
 
softwareMaintenance.pdf
softwareMaintenance.pdfsoftwareMaintenance.pdf
softwareMaintenance.pdf
 
Ch2-Software Engineering 9
Ch2-Software Engineering 9Ch2-Software Engineering 9
Ch2-Software Engineering 9
 

Recently uploaded

Thesis Statement for students diagnonsed withADHD.ppt
Thesis Statement for students diagnonsed withADHD.pptThesis Statement for students diagnonsed withADHD.ppt
Thesis Statement for students diagnonsed withADHD.ppt
EverAndrsGuerraGuerr
 
Pride Month Slides 2024 David Douglas School District
Pride Month Slides 2024 David Douglas School DistrictPride Month Slides 2024 David Douglas School District
Pride Month Slides 2024 David Douglas School District
David Douglas School District
 
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
 
Digital Artifact 2 - Investigating Pavilion Designs
Digital Artifact 2 - Investigating Pavilion DesignsDigital Artifact 2 - Investigating Pavilion Designs
Digital Artifact 2 - Investigating Pavilion Designs
chanes7
 
Unit 2- Research Aptitude (UGC NET Paper I).pdf
Unit 2- Research Aptitude (UGC NET Paper I).pdfUnit 2- Research Aptitude (UGC NET Paper I).pdf
Unit 2- Research Aptitude (UGC NET Paper I).pdf
Thiyagu K
 
MASS MEDIA STUDIES-835-CLASS XI Resource Material.pdf
MASS MEDIA STUDIES-835-CLASS XI Resource Material.pdfMASS MEDIA STUDIES-835-CLASS XI Resource Material.pdf
MASS MEDIA STUDIES-835-CLASS XI Resource Material.pdf
goswamiyash170123
 
RPMS TEMPLATE FOR SCHOOL YEAR 2023-2024 FOR TEACHER 1 TO TEACHER 3
RPMS TEMPLATE FOR SCHOOL YEAR 2023-2024 FOR TEACHER 1 TO TEACHER 3RPMS TEMPLATE FOR SCHOOL YEAR 2023-2024 FOR TEACHER 1 TO TEACHER 3
RPMS TEMPLATE FOR SCHOOL YEAR 2023-2024 FOR TEACHER 1 TO TEACHER 3
IreneSebastianRueco1
 
Executive Directors Chat Leveraging AI for Diversity, Equity, and Inclusion
Executive Directors Chat  Leveraging AI for Diversity, Equity, and InclusionExecutive Directors Chat  Leveraging AI for Diversity, Equity, and Inclusion
Executive Directors Chat Leveraging AI for Diversity, Equity, and Inclusion
TechSoup
 
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
 
Digital Artefact 1 - Tiny Home Environmental Design
Digital Artefact 1 - Tiny Home Environmental DesignDigital Artefact 1 - Tiny Home Environmental Design
Digital Artefact 1 - Tiny Home Environmental Design
amberjdewit93
 
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
 
Best Digital Marketing Institute In NOIDA
Best Digital Marketing Institute In NOIDABest Digital Marketing Institute In NOIDA
Best Digital Marketing Institute In NOIDA
deeptiverma2406
 
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
 
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
 
DRUGS AND ITS classification slide share
DRUGS AND ITS classification slide shareDRUGS AND ITS classification slide share
DRUGS AND ITS classification slide share
taiba qazi
 
How to Add Chatter in the odoo 17 ERP Module
How to Add Chatter in the odoo 17 ERP ModuleHow to Add Chatter in the odoo 17 ERP Module
How to Add Chatter in the odoo 17 ERP Module
Celine George
 
The basics of sentences session 5pptx.pptx
The basics of sentences session 5pptx.pptxThe basics of sentences session 5pptx.pptx
The basics of sentences session 5pptx.pptx
heathfieldcps1
 
Natural birth techniques - Mrs.Akanksha Trivedi Rama University
Natural birth techniques - Mrs.Akanksha Trivedi Rama UniversityNatural birth techniques - Mrs.Akanksha Trivedi Rama University
Natural birth techniques - Mrs.Akanksha Trivedi Rama University
Akanksha trivedi rama nursing college kanpur.
 
PIMS Job Advertisement 2024.pdf Islamabad
PIMS Job Advertisement 2024.pdf IslamabadPIMS Job Advertisement 2024.pdf Islamabad
PIMS Job Advertisement 2024.pdf Islamabad
AyyanKhan40
 
Azure Interview Questions and Answers PDF By ScholarHat
Azure Interview Questions and Answers PDF By ScholarHatAzure Interview Questions and Answers PDF By ScholarHat
Azure Interview Questions and Answers PDF By ScholarHat
Scholarhat
 

Recently uploaded (20)

Thesis Statement for students diagnonsed withADHD.ppt
Thesis Statement for students diagnonsed withADHD.pptThesis Statement for students diagnonsed withADHD.ppt
Thesis Statement for students diagnonsed withADHD.ppt
 
Pride Month Slides 2024 David Douglas School District
Pride Month Slides 2024 David Douglas School DistrictPride Month Slides 2024 David Douglas School District
Pride Month Slides 2024 David Douglas School District
 
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
 
Digital Artifact 2 - Investigating Pavilion Designs
Digital Artifact 2 - Investigating Pavilion DesignsDigital Artifact 2 - Investigating Pavilion Designs
Digital Artifact 2 - Investigating Pavilion Designs
 
Unit 2- Research Aptitude (UGC NET Paper I).pdf
Unit 2- Research Aptitude (UGC NET Paper I).pdfUnit 2- Research Aptitude (UGC NET Paper I).pdf
Unit 2- Research Aptitude (UGC NET Paper I).pdf
 
MASS MEDIA STUDIES-835-CLASS XI Resource Material.pdf
MASS MEDIA STUDIES-835-CLASS XI Resource Material.pdfMASS MEDIA STUDIES-835-CLASS XI Resource Material.pdf
MASS MEDIA STUDIES-835-CLASS XI Resource Material.pdf
 
RPMS TEMPLATE FOR SCHOOL YEAR 2023-2024 FOR TEACHER 1 TO TEACHER 3
RPMS TEMPLATE FOR SCHOOL YEAR 2023-2024 FOR TEACHER 1 TO TEACHER 3RPMS TEMPLATE FOR SCHOOL YEAR 2023-2024 FOR TEACHER 1 TO TEACHER 3
RPMS TEMPLATE FOR SCHOOL YEAR 2023-2024 FOR TEACHER 1 TO TEACHER 3
 
Executive Directors Chat Leveraging AI for Diversity, Equity, and Inclusion
Executive Directors Chat  Leveraging AI for Diversity, Equity, and InclusionExecutive Directors Chat  Leveraging AI for Diversity, Equity, and Inclusion
Executive Directors Chat Leveraging AI for Diversity, Equity, and Inclusion
 
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
 
Digital Artefact 1 - Tiny Home Environmental Design
Digital Artefact 1 - Tiny Home Environmental DesignDigital Artefact 1 - Tiny Home Environmental Design
Digital Artefact 1 - Tiny Home Environmental Design
 
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...
 
Best Digital Marketing Institute In NOIDA
Best Digital Marketing Institute In NOIDABest Digital Marketing Institute In NOIDA
Best Digital Marketing Institute In NOIDA
 
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
 
A Strategic Approach: GenAI in Education
A Strategic Approach: GenAI in EducationA Strategic Approach: GenAI in Education
A Strategic Approach: GenAI in Education
 
DRUGS AND ITS classification slide share
DRUGS AND ITS classification slide shareDRUGS AND ITS classification slide share
DRUGS AND ITS classification slide share
 
How to Add Chatter in the odoo 17 ERP Module
How to Add Chatter in the odoo 17 ERP ModuleHow to Add Chatter in the odoo 17 ERP Module
How to Add Chatter in the odoo 17 ERP Module
 
The basics of sentences session 5pptx.pptx
The basics of sentences session 5pptx.pptxThe basics of sentences session 5pptx.pptx
The basics of sentences session 5pptx.pptx
 
Natural birth techniques - Mrs.Akanksha Trivedi Rama University
Natural birth techniques - Mrs.Akanksha Trivedi Rama UniversityNatural birth techniques - Mrs.Akanksha Trivedi Rama University
Natural birth techniques - Mrs.Akanksha Trivedi Rama University
 
PIMS Job Advertisement 2024.pdf Islamabad
PIMS Job Advertisement 2024.pdf IslamabadPIMS Job Advertisement 2024.pdf Islamabad
PIMS Job Advertisement 2024.pdf Islamabad
 
Azure Interview Questions and Answers PDF By ScholarHat
Azure Interview Questions and Answers PDF By ScholarHatAzure Interview Questions and Answers PDF By ScholarHat
Azure Interview Questions and Answers PDF By ScholarHat
 

BSG SE4201 Software Configuration Management and Maintenance Lesson 1 November 2021.pptx

  • 1. Lesson 1 Bashir S. Galadanci 18/12/2021 Software Configuration Management and Maintenance Lesson 1 1
  • 2.  Introduction  Course Information  Why Configuration Management (CM)?  What is CM?  Who is CM For?  CM Activities  Tool Support  Multi-Version Systems  CM Terminology 18/12/2021 Software Configuration Management and Maintenance Lesson 1 2
  • 3. Course Title: Software Configuration Management and Maintenance Course Lecturer: Bashir S. Galadanci Course Delivery: Face-to-Face and Online (Through Zoom) Recommended Textbook: Sommerville 10th Edition Presentations: Adapted from Sommerville Slides (from the author’s website) 18/12/2021 Software Configuration Management and Maintenance Lesson 1 3
  • 4. Software systems are constantly changing during development and use for the following reasons:  Bugs are discovered and have to be fixed.  System requirements change, and you have to implement these changes in a new version of the system.  New versions of hardware and system platforms are released, and you have to adapt your systems to work with them.  Competitors introduce new features in their system that you have to match. As changes are made to the software, a new version of a system is created. Most systems, therefore, can be thought of as a set of versions, each of which may have to be maintained and managed. 18/12/2021 Software Configuration Management and Maintenance Lesson 1 4
  • 5.  Configuration management (CM) is concerned with the policies, processes, and tools for managing changing software systems (Aiello and Sachs 2011).  You need to manage evolving systems because it is easy to lose track of what changes and component versions have been incorporated into each system version.  If you don’t have effective configuration management procedures in place, you may waste effort modifying the wrong version of a system, delivering the wrong version of a system to customers, or forgetting where the software source code for a particular version of the system or component is stored. 18/12/2021 Software Configuration Management and Maintenance Lesson 1 5
  • 6.  Configuration management is useful for individual projects as it is easy for one person to forget what changes have been made.  It is essential for team projects where several developers are working at the same time on a software system.  Sometimes these developers are all working in the same place, but, increasingly, development teams are distributed with members in different locations across the world. 18/12/2021 Software Configuration Management and Maintenance Lesson 1 6
  • 7.  Version management ◦ Keeping track of the multiple versions of system components and ensuring that changes made to components by different developers do not interfere with each other.  System building ◦ The process of assembling program components, data and libraries, then compiling these to create an executable system.  Change management ◦ Keeping track of requests for changes to the software from customers and developers, working out the costs and impact of changes, and deciding the changes should be implemented.  Release management ◦ Preparing software for external release and keeping track of the system versions that have been released for customer use. 18/12/2021 Software Configuration Management and Maintenance Lesson 1 7
  • 9. Because of the large volume of information to be managed and the relationships between configuration items, tool support is essential for configuration management. Configuration management tools are used to:  store versions of system components,  build systems from these components,  track the releases of system versions to customers,  and keep track of change proposals. CM tools range from simple tools that support a single configuration management task, such as bug tracking, to integrated environments that support all configuration management activities. 18/12/2021 Software Configuration Management and Maintenance Lesson 1 9
  • 10.  Agile development, where components and systems are changed several times per day, is impossible without using CM tools.  The definitive versions of components are held in a shared project repository and developers copy these into their own workspace.  They make changes to the code then use system building tools to create a new system on their own computer for testing. Once they are happy with the changes made, they return the modified components to the project repository. 18/12/2021 Software Configuration Management and Maintenance Lesson 1 10
  • 11.  A development phase where the development team is responsible for managing the software configuration and new functionality is being added to the software.  A system testing phase where a version of the system is released internally for testing. ◦ No new system functionality is added. Changes made are bug fixes, performance improvements and security vulnerability repairs.  A release phase where the software is released to customers for use. ◦ New versions of the released system are developed to repair bugs and vulnerabilities and to include new features. 18/12/2021 Software Configuration Management and Maintenance Lesson 1 11
  • 12.  For large systems, there is never just one ‘working’ version of a system.  There are always several versions of the system at different stages of development.  There may be several teams involved in the development of different system versions. 18/12/2021 Software Configuration Management and Maintenance Lesson 1 12
  • 14. Term Explanation Baseline A baseline is a collection of component versions that make up a system. Baselines are controlled, which means that the versions of the components making up the system cannot be changed. This means that it is always possible to recreate a baseline from its constituent components. Branching The creation of a new codeline from a version in an existing codeline. The new codeline and the existing codeline may then develop independently. Codeline A codeline is a set of versions of a software component and other configuration items on which that component depends. Configuration (version) control The process of ensuring that versions of systems and components are recorded and maintained so that changes are managed and all versions of components are identified and stored for the lifetime of the system. Configuration item or software configuration item (SCI) Anything associated with a software project (design, code, test data, document, etc.) that has been placed under configuration control. There are often different versions of a configuration item. Configuration items have a unique name. Mainline A sequence of baselines representing different versions of a system. 18/12/2021 Software Configuration Management and Maintenance Lesson 1 14
  • 15. Term Explanation Merging The creation of a new version of a software component by merging separate versions in different codelines. These codelines may have been created by a previous branch of one of the codelines involved. Release A version of a system that has been released to customers (or other users in an organization) for use. Repository A shared database of versions of software components and meta- information about changes to these components. System building The creation of an executable system version by compiling and linking the appropriate versions of the components and libraries making up the system. Version An instance of a configuration item that differs, in some way, from other instances of that item. Versions always have a unique identifier. Workspace A private work area where software can be modified without affecting other developers who may be using or modifying that software. 18/12/2021 Software Configuration Management and Maintenance Lesson 1 15
  • 16. If there are any questions, please ask at the beginning of the next lesson ?? Software Configuration Management and Maintenance Lesson 1 16 18/12/2021