SlideShare a Scribd company logo
Unit-8
Software Maintenance
and Configuration
Management
Types of Maintenance
•Corrective Maintenance (21%)
• making changes to repair defects
•Adaptive Maintenance (25%)
• making changes to adapt software to external environment
changes (hardware, business rules, OS, etc.)
•Perfective Maintenance (50%)
• extending system beyond its original functional requirements
•Preventative Maintenance (4%)
• modifying work products so that they are more easily corrected,
adapted, or enhanced
Maintenance Costs
•Usually greater than the development costs (2
to 10 times as much in some cases)
•Affected by both technical and non-technical
factors
•Increase as software is maintained and system
corruption is introduced
•Aging software can have high support costs (e.g.
old languages, compilers, etc.)
Maintenance Developer Tasks
• Understand system.
• Locate information in documentation.
• Keep system documentation up to date.
• Extend existing functions.
• Add new functions.
• Find sources of errors.
• Correct system errors.
• Answer operations questions.
• Restructure design and code.
• Delete obsolete design and code.
• Manage changes.
Maintenance Cost Factors
•Staff turnover
• no turnover usually means lower maintenance costs
•Contractual responsibility
• developers may have no contractual obligation to maintain the
delivered system and no incentive to design for future change
•Staff skills
• maintenance staff are often inexperienced and have limited
domain knowledge
•Program age and structure
• as programs age their structure deteriorates, they become harder
to understand and change
Maintenance Prediction
•Concerned with determining which parts of the
system may cause problems and have high
maintenance costs
•Change acceptance depends on the
maintainability of the components affected by the
change
•Implementing changes degrade system and
reduces its maintainability
•Maintenance costs depends on number of
changes
Configuration Management
•Software changes are inevitable
•One goal of software engineering is to improve how easy
it is to change software
•Configuration management is all about change control.
•Every software engineer has to be concerned with how
changes made to work products are tracked and
propagated throughout a project.
•To ensure quality is maintained the change process must
be audited.
Configuration Management
Definition:
The set of activities that have been developed to
manage change throughout the software life
cycle.
Purpose:
Systematically control changes to the
configuration and maintain the integrity and
traceability of the configuration throughout the
system’s life cycle.
Purpose of CM
• Identify Change
• Control Change
• Ensure Change is Properly Implemented
• Report Changes to All the people who need to
Know
Baseline
•Definition: Specification or product that
• has been formally reviewed and agreed upon,
• serves as the basis for further development, and
• can be changed only through formal change control procedures.
•Signals a point of departure from one activity to the start
of another activity.
•Helps control change without impeding justifiable change.
Project Baseline
•Central repository of reviewed and approved
artifacts that represent a given stable point
in overall system development.
•Shared DB for project and kept in consistent
state.
•Policies allow the team to achieve consistent
state and manage the project.
Software Configuration Item (SCI)
•Definition: Information that is created as part of the
software engineering process.
•Examples:
•Software Project Plan
•Software Requirements Specification
• Models, Prototypes, Requirements
•Design document
• Protocols, Hierarchy Graphs
•Source code
• Modules
•Test suite
•Software tools (e.g., compilers)
Elements of SCM
There are four elements of SCM:
1. Software Configuration Identification
2. Software Configuration Control
3. Software Configuration Auditing
4. Software Configuration Status Accounting
SCM Tasks
•Identification
•Change control
•Version control
•Configuration auditing
•Status reporting
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.)
Change Control Task
• 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
Version Control Task
• 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 reason for
changes and details of who made the changes and when
Configuration Auditing Task
• 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 a formal technical review been conducted to assess technical correctness?
• Has the software process been followed, and have software engineering standards been
properly applied?
• 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
Status Reporting Task
• 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 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
Software Configuration Auditing

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 maintenance ppt
Software maintenance pptSoftware maintenance ppt
Software maintenance ppt
Anas Usman
 
Software engineering Questions and Answers
Software engineering Questions and AnswersSoftware engineering Questions and Answers
Software engineering Questions and AnswersBala Ganesh
 
Software Configuration Management
Software Configuration ManagementSoftware Configuration Management
Software Configuration Management
Arunnima B S
 
Software quality assurance
Software quality assuranceSoftware quality assurance
Software quality assurance
Aman Adhikari
 
Requirement engineering process
Requirement engineering processRequirement engineering process
Requirement engineering process
Dr. Loganathan R
 
Agile development, software engineering
Agile development, software engineeringAgile development, software engineering
Agile development, software engineering
Rupesh Vaishnav
 
Software Measurement and Metrics.pptx
Software Measurement and Metrics.pptxSoftware Measurement and Metrics.pptx
Software Measurement and Metrics.pptx
ubaidullah75790
 
Software process
Software processSoftware process
Software process
Jennifer Polack
 
software project management Waterfall model
software project management Waterfall modelsoftware project management Waterfall model
software project management Waterfall model
REHMAT ULLAH
 
software maintenance
software maintenancesoftware maintenance
software maintenance
rajshreemuthiah
 
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
 
Unified process Model
Unified process ModelUnified process Model
Unified process Model
University of Haripur
 
Fundamentals of software development
Fundamentals of software developmentFundamentals of software development
Fundamentals of software development
Pratik Devmurari
 
Lect4 software economics
Lect4 software economicsLect4 software economics
Lect4 software economics
meena466141
 
Configuration Management
Configuration ManagementConfiguration Management
Configuration Management
Saqib Raza
 
Ian Sommerville, Software Engineering, 9th Edition Ch1
Ian Sommerville,  Software Engineering, 9th Edition Ch1Ian Sommerville,  Software Engineering, 9th Edition Ch1
Ian Sommerville, Software Engineering, 9th Edition Ch1
Mohammed Romi
 
software engineering
software engineeringsoftware engineering
software engineering
Azad public school
 
Software architecture Unit 1 notes
Software architecture Unit 1 notesSoftware architecture Unit 1 notes
Software architecture Unit 1 notesSudarshan Dhondaley
 
Checkpoints of the Process
Checkpoints of the ProcessCheckpoints of the Process
Checkpoints of the Process
Munazza-Mah-Jabeen
 

What's hot (20)

Software Configuration Management (SCM)
Software Configuration Management (SCM)Software Configuration Management (SCM)
Software Configuration Management (SCM)
 
Software maintenance ppt
Software maintenance pptSoftware maintenance ppt
Software maintenance ppt
 
Software engineering Questions and Answers
Software engineering Questions and AnswersSoftware engineering Questions and Answers
Software engineering Questions and Answers
 
Software Configuration Management
Software Configuration ManagementSoftware Configuration Management
Software Configuration Management
 
Software quality assurance
Software quality assuranceSoftware quality assurance
Software quality assurance
 
Requirement engineering process
Requirement engineering processRequirement engineering process
Requirement engineering process
 
Agile development, software engineering
Agile development, software engineeringAgile development, software engineering
Agile development, software engineering
 
Software Measurement and Metrics.pptx
Software Measurement and Metrics.pptxSoftware Measurement and Metrics.pptx
Software Measurement and Metrics.pptx
 
Software process
Software processSoftware process
Software process
 
software project management Waterfall model
software project management Waterfall modelsoftware project management Waterfall model
software project management Waterfall model
 
software maintenance
software maintenancesoftware maintenance
software maintenance
 
ppt on sOFTWARE DEVELOPMENT LIFE CYCLE
 ppt on sOFTWARE DEVELOPMENT LIFE CYCLE ppt on sOFTWARE DEVELOPMENT LIFE CYCLE
ppt on sOFTWARE DEVELOPMENT LIFE CYCLE
 
Unified process Model
Unified process ModelUnified process Model
Unified process Model
 
Fundamentals of software development
Fundamentals of software developmentFundamentals of software development
Fundamentals of software development
 
Lect4 software economics
Lect4 software economicsLect4 software economics
Lect4 software economics
 
Configuration Management
Configuration ManagementConfiguration Management
Configuration Management
 
Ian Sommerville, Software Engineering, 9th Edition Ch1
Ian Sommerville,  Software Engineering, 9th Edition Ch1Ian Sommerville,  Software Engineering, 9th Edition Ch1
Ian Sommerville, Software Engineering, 9th Edition Ch1
 
software engineering
software engineeringsoftware engineering
software engineering
 
Software architecture Unit 1 notes
Software architecture Unit 1 notesSoftware architecture Unit 1 notes
Software architecture Unit 1 notes
 
Checkpoints of the Process
Checkpoints of the ProcessCheckpoints of the Process
Checkpoints of the Process
 

Similar to Software maintenance and configuration management, software engineering

Unit 6 Software Configuration Management
Unit 6 Software Configuration ManagementUnit 6 Software Configuration Management
Unit 6 Software Configuration Management
KanchanPatil34
 
Software Configuration Management.pptx
Software Configuration Management.pptxSoftware Configuration Management.pptx
Software Configuration Management.pptx
ShanmugapriyaSenthil3
 
Software Configuration Management
Software Configuration ManagementSoftware Configuration Management
Software Configuration Management
Pratik Tandel
 
Software Configuration Management.pptx
Software Configuration Management.pptxSoftware Configuration Management.pptx
Software Configuration Management.pptx
MaSheilaMagboo
 
Software Configuration Management (SCM)
Software Configuration Management (SCM)Software Configuration Management (SCM)
Software Configuration Management (SCM)Nishkarsh Gupta
 
sfdgdfgfgfdgvsdfdsfedrfewsfdsfsfterfdcm.ppt
sfdgdfgfgfdgvsdfdsfedrfewsfdsfsfterfdcm.pptsfdgdfgfgfdgvsdfdsfedrfewsfdsfsfterfdcm.ppt
sfdgdfgfgfdgvsdfdsfedrfewsfdsfsfterfdcm.ppt
ssuser2d043c
 
Scm
ScmScm
Software Engineering (Software Configuration Management)
Software Engineering (Software Configuration Management)Software Engineering (Software Configuration Management)
Software Engineering (Software Configuration Management)
ShudipPal
 
Bse 3105 lecture 6-configuration management
Bse 3105  lecture 6-configuration managementBse 3105  lecture 6-configuration management
Bse 3105 lecture 6-configuration management
Alonzee Tash
 
software configuration management
software configuration managementsoftware configuration management
software configuration managementFáber D. Giraldo
 
Software Configuration Management
Software Configuration ManagementSoftware Configuration Management
Software Configuration ManagementChandan Chaurasia
 
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 configuration management, Web engineering
Software configuration management, Web engineeringSoftware configuration management, Web engineering
Software configuration management, Web engineering
divyammo
 
340_18CS35_se_mod1(secab).pdf
340_18CS35_se_mod1(secab).pdf340_18CS35_se_mod1(secab).pdf
340_18CS35_se_mod1(secab).pdf
krishnaraj714229
 
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
 
Lecture 2 (Software Processes)
Lecture 2 (Software Processes)Lecture 2 (Software Processes)
Lecture 2 (Software Processes)
Education Front
 
Configuration Management
Configuration ManagementConfiguration Management
Configuration Managementelliando dias
 
SE-Lecture-8.pptx
SE-Lecture-8.pptxSE-Lecture-8.pptx
SE-Lecture-8.pptx
vishal choudhary
 

Similar to Software maintenance and configuration management, software engineering (20)

Unit 6 Software Configuration Management
Unit 6 Software Configuration ManagementUnit 6 Software Configuration Management
Unit 6 Software Configuration Management
 
Fa10 mcs-005
Fa10 mcs-005Fa10 mcs-005
Fa10 mcs-005
 
Software Configuration Management.pptx
Software Configuration Management.pptxSoftware Configuration Management.pptx
Software Configuration Management.pptx
 
Software Configuration Management
Software Configuration ManagementSoftware Configuration Management
Software Configuration Management
 
Software Configuration Management.pptx
Software Configuration Management.pptxSoftware Configuration Management.pptx
Software Configuration Management.pptx
 
Software Configuration Management (SCM)
Software Configuration Management (SCM)Software Configuration Management (SCM)
Software Configuration Management (SCM)
 
sfdgdfgfgfdgvsdfdsfedrfewsfdsfsfterfdcm.ppt
sfdgdfgfgfdgvsdfdsfedrfewsfdsfsfterfdcm.pptsfdgdfgfgfdgvsdfdsfedrfewsfdsfsfterfdcm.ppt
sfdgdfgfgfdgvsdfdsfedrfewsfdsfsfterfdcm.ppt
 
Scm
ScmScm
Scm
 
Software Engineering (Software Configuration Management)
Software Engineering (Software Configuration Management)Software Engineering (Software Configuration Management)
Software Engineering (Software Configuration Management)
 
Bse 3105 lecture 6-configuration management
Bse 3105  lecture 6-configuration managementBse 3105  lecture 6-configuration management
Bse 3105 lecture 6-configuration management
 
software configuration management
software configuration managementsoftware configuration management
software configuration management
 
Software Configuration Management
Software Configuration ManagementSoftware Configuration Management
Software Configuration Management
 
Mod5-SCM.ppt
Mod5-SCM.pptMod5-SCM.ppt
Mod5-SCM.ppt
 
Mod5-SCM.ppt
Mod5-SCM.pptMod5-SCM.ppt
Mod5-SCM.ppt
 
Software configuration management, Web engineering
Software configuration management, Web engineeringSoftware configuration management, Web engineering
Software configuration management, Web engineering
 
340_18CS35_se_mod1(secab).pdf
340_18CS35_se_mod1(secab).pdf340_18CS35_se_mod1(secab).pdf
340_18CS35_se_mod1(secab).pdf
 
SE2_Lec 22_Software Configuration Management
SE2_Lec 22_Software Configuration ManagementSE2_Lec 22_Software Configuration Management
SE2_Lec 22_Software Configuration Management
 
Lecture 2 (Software Processes)
Lecture 2 (Software Processes)Lecture 2 (Software Processes)
Lecture 2 (Software Processes)
 
Configuration Management
Configuration ManagementConfiguration Management
Configuration Management
 
SE-Lecture-8.pptx
SE-Lecture-8.pptxSE-Lecture-8.pptx
SE-Lecture-8.pptx
 

More from Rupesh Vaishnav

Software design, software engineering
Software design, software engineeringSoftware design, software engineering
Software design, software engineering
Rupesh Vaishnav
 
Software coding & testing, software engineering
Software coding & testing, software engineeringSoftware coding & testing, software engineering
Software coding & testing, software engineering
Rupesh Vaishnav
 
Software as a service, software engineering
Software as a service, software engineeringSoftware as a service, software engineering
Software as a service, software engineering
Rupesh Vaishnav
 
Requirement analysis and specification, software engineering
Requirement analysis and specification, software engineeringRequirement analysis and specification, software engineering
Requirement analysis and specification, software engineering
Rupesh Vaishnav
 
Quality assurance and management, software engineering
Quality assurance and management, software engineeringQuality assurance and management, software engineering
Quality assurance and management, software engineering
Rupesh Vaishnav
 
Managing software project, software engineering
Managing software project, software engineeringManaging software project, software engineering
Managing software project, software engineering
Rupesh Vaishnav
 
Intoduction to software engineering part 2
Intoduction to software engineering part 2Intoduction to software engineering part 2
Intoduction to software engineering part 2
Rupesh Vaishnav
 
Intoduction to software engineering part 1
Intoduction to software engineering part 1Intoduction to software engineering part 1
Intoduction to software engineering part 1
Rupesh Vaishnav
 
Advanced topics in software engineering
Advanced topics in software engineeringAdvanced topics in software engineering
Advanced topics in software engineering
Rupesh Vaishnav
 

More from Rupesh Vaishnav (9)

Software design, software engineering
Software design, software engineeringSoftware design, software engineering
Software design, software engineering
 
Software coding & testing, software engineering
Software coding & testing, software engineeringSoftware coding & testing, software engineering
Software coding & testing, software engineering
 
Software as a service, software engineering
Software as a service, software engineeringSoftware as a service, software engineering
Software as a service, software engineering
 
Requirement analysis and specification, software engineering
Requirement analysis and specification, software engineeringRequirement analysis and specification, software engineering
Requirement analysis and specification, software engineering
 
Quality assurance and management, software engineering
Quality assurance and management, software engineeringQuality assurance and management, software engineering
Quality assurance and management, software engineering
 
Managing software project, software engineering
Managing software project, software engineeringManaging software project, software engineering
Managing software project, software engineering
 
Intoduction to software engineering part 2
Intoduction to software engineering part 2Intoduction to software engineering part 2
Intoduction to software engineering part 2
 
Intoduction to software engineering part 1
Intoduction to software engineering part 1Intoduction to software engineering part 1
Intoduction to software engineering part 1
 
Advanced topics in software engineering
Advanced topics in software engineeringAdvanced topics in software engineering
Advanced topics in software engineering
 

Recently uploaded

Recycled Concrete Aggregate in Construction Part III
Recycled Concrete Aggregate in Construction Part IIIRecycled Concrete Aggregate in Construction Part III
Recycled Concrete Aggregate in Construction Part III
Aditya Rajan Patra
 
RAT: Retrieval Augmented Thoughts Elicit Context-Aware Reasoning in Long-Hori...
RAT: Retrieval Augmented Thoughts Elicit Context-Aware Reasoning in Long-Hori...RAT: Retrieval Augmented Thoughts Elicit Context-Aware Reasoning in Long-Hori...
RAT: Retrieval Augmented Thoughts Elicit Context-Aware Reasoning in Long-Hori...
thanhdowork
 
Water billing management system project report.pdf
Water billing management system project report.pdfWater billing management system project report.pdf
Water billing management system project report.pdf
Kamal Acharya
 
Design and Analysis of Algorithms-DP,Backtracking,Graphs,B&B
Design and Analysis of Algorithms-DP,Backtracking,Graphs,B&BDesign and Analysis of Algorithms-DP,Backtracking,Graphs,B&B
Design and Analysis of Algorithms-DP,Backtracking,Graphs,B&B
Sreedhar Chowdam
 
一比一原版(IIT毕业证)伊利诺伊理工大学毕业证成绩单专业办理
一比一原版(IIT毕业证)伊利诺伊理工大学毕业证成绩单专业办理一比一原版(IIT毕业证)伊利诺伊理工大学毕业证成绩单专业办理
一比一原版(IIT毕业证)伊利诺伊理工大学毕业证成绩单专业办理
zwunae
 
Low power architecture of logic gates using adiabatic techniques
Low power architecture of logic gates using adiabatic techniquesLow power architecture of logic gates using adiabatic techniques
Low power architecture of logic gates using adiabatic techniques
nooriasukmaningtyas
 
01-GPON Fundamental fttx ftth basic .pptx
01-GPON Fundamental fttx ftth basic .pptx01-GPON Fundamental fttx ftth basic .pptx
01-GPON Fundamental fttx ftth basic .pptx
benykoy2024
 
Fundamentals of Electric Drives and its applications.pptx
Fundamentals of Electric Drives and its applications.pptxFundamentals of Electric Drives and its applications.pptx
Fundamentals of Electric Drives and its applications.pptx
manasideore6
 
A review on techniques and modelling methodologies used for checking electrom...
A review on techniques and modelling methodologies used for checking electrom...A review on techniques and modelling methodologies used for checking electrom...
A review on techniques and modelling methodologies used for checking electrom...
nooriasukmaningtyas
 
Technical Drawings introduction to drawing of prisms
Technical Drawings introduction to drawing of prismsTechnical Drawings introduction to drawing of prisms
Technical Drawings introduction to drawing of prisms
heavyhaig
 
Fundamentals of Induction Motor Drives.pptx
Fundamentals of Induction Motor Drives.pptxFundamentals of Induction Motor Drives.pptx
Fundamentals of Induction Motor Drives.pptx
manasideore6
 
原版制作(unimelb毕业证书)墨尔本大学毕业证Offer一模一样
原版制作(unimelb毕业证书)墨尔本大学毕业证Offer一模一样原版制作(unimelb毕业证书)墨尔本大学毕业证Offer一模一样
原版制作(unimelb毕业证书)墨尔本大学毕业证Offer一模一样
obonagu
 
Planning Of Procurement o different goods and services
Planning Of Procurement o different goods and servicesPlanning Of Procurement o different goods and services
Planning Of Procurement o different goods and services
JoytuBarua2
 
basic-wireline-operations-course-mahmoud-f-radwan.pdf
basic-wireline-operations-course-mahmoud-f-radwan.pdfbasic-wireline-operations-course-mahmoud-f-radwan.pdf
basic-wireline-operations-course-mahmoud-f-radwan.pdf
NidhalKahouli2
 
ACRP 4-09 Risk Assessment Method to Support Modification of Airfield Separat...
ACRP 4-09 Risk Assessment Method to Support Modification of Airfield Separat...ACRP 4-09 Risk Assessment Method to Support Modification of Airfield Separat...
ACRP 4-09 Risk Assessment Method to Support Modification of Airfield Separat...
Mukeshwaran Balu
 
6th International Conference on Machine Learning & Applications (CMLA 2024)
6th International Conference on Machine Learning & Applications (CMLA 2024)6th International Conference on Machine Learning & Applications (CMLA 2024)
6th International Conference on Machine Learning & Applications (CMLA 2024)
ClaraZara1
 
Literature Review Basics and Understanding Reference Management.pptx
Literature Review Basics and Understanding Reference Management.pptxLiterature Review Basics and Understanding Reference Management.pptx
Literature Review Basics and Understanding Reference Management.pptx
Dr Ramhari Poudyal
 
PPT on GRP pipes manufacturing and testing
PPT on GRP pipes manufacturing and testingPPT on GRP pipes manufacturing and testing
PPT on GRP pipes manufacturing and testing
anoopmanoharan2
 
Modelagem de um CSTR com reação endotermica.pdf
Modelagem de um CSTR com reação endotermica.pdfModelagem de um CSTR com reação endotermica.pdf
Modelagem de um CSTR com reação endotermica.pdf
camseq
 
spirit beverages ppt without graphics.pptx
spirit beverages ppt without graphics.pptxspirit beverages ppt without graphics.pptx
spirit beverages ppt without graphics.pptx
Madan Karki
 

Recently uploaded (20)

Recycled Concrete Aggregate in Construction Part III
Recycled Concrete Aggregate in Construction Part IIIRecycled Concrete Aggregate in Construction Part III
Recycled Concrete Aggregate in Construction Part III
 
RAT: Retrieval Augmented Thoughts Elicit Context-Aware Reasoning in Long-Hori...
RAT: Retrieval Augmented Thoughts Elicit Context-Aware Reasoning in Long-Hori...RAT: Retrieval Augmented Thoughts Elicit Context-Aware Reasoning in Long-Hori...
RAT: Retrieval Augmented Thoughts Elicit Context-Aware Reasoning in Long-Hori...
 
Water billing management system project report.pdf
Water billing management system project report.pdfWater billing management system project report.pdf
Water billing management system project report.pdf
 
Design and Analysis of Algorithms-DP,Backtracking,Graphs,B&B
Design and Analysis of Algorithms-DP,Backtracking,Graphs,B&BDesign and Analysis of Algorithms-DP,Backtracking,Graphs,B&B
Design and Analysis of Algorithms-DP,Backtracking,Graphs,B&B
 
一比一原版(IIT毕业证)伊利诺伊理工大学毕业证成绩单专业办理
一比一原版(IIT毕业证)伊利诺伊理工大学毕业证成绩单专业办理一比一原版(IIT毕业证)伊利诺伊理工大学毕业证成绩单专业办理
一比一原版(IIT毕业证)伊利诺伊理工大学毕业证成绩单专业办理
 
Low power architecture of logic gates using adiabatic techniques
Low power architecture of logic gates using adiabatic techniquesLow power architecture of logic gates using adiabatic techniques
Low power architecture of logic gates using adiabatic techniques
 
01-GPON Fundamental fttx ftth basic .pptx
01-GPON Fundamental fttx ftth basic .pptx01-GPON Fundamental fttx ftth basic .pptx
01-GPON Fundamental fttx ftth basic .pptx
 
Fundamentals of Electric Drives and its applications.pptx
Fundamentals of Electric Drives and its applications.pptxFundamentals of Electric Drives and its applications.pptx
Fundamentals of Electric Drives and its applications.pptx
 
A review on techniques and modelling methodologies used for checking electrom...
A review on techniques and modelling methodologies used for checking electrom...A review on techniques and modelling methodologies used for checking electrom...
A review on techniques and modelling methodologies used for checking electrom...
 
Technical Drawings introduction to drawing of prisms
Technical Drawings introduction to drawing of prismsTechnical Drawings introduction to drawing of prisms
Technical Drawings introduction to drawing of prisms
 
Fundamentals of Induction Motor Drives.pptx
Fundamentals of Induction Motor Drives.pptxFundamentals of Induction Motor Drives.pptx
Fundamentals of Induction Motor Drives.pptx
 
原版制作(unimelb毕业证书)墨尔本大学毕业证Offer一模一样
原版制作(unimelb毕业证书)墨尔本大学毕业证Offer一模一样原版制作(unimelb毕业证书)墨尔本大学毕业证Offer一模一样
原版制作(unimelb毕业证书)墨尔本大学毕业证Offer一模一样
 
Planning Of Procurement o different goods and services
Planning Of Procurement o different goods and servicesPlanning Of Procurement o different goods and services
Planning Of Procurement o different goods and services
 
basic-wireline-operations-course-mahmoud-f-radwan.pdf
basic-wireline-operations-course-mahmoud-f-radwan.pdfbasic-wireline-operations-course-mahmoud-f-radwan.pdf
basic-wireline-operations-course-mahmoud-f-radwan.pdf
 
ACRP 4-09 Risk Assessment Method to Support Modification of Airfield Separat...
ACRP 4-09 Risk Assessment Method to Support Modification of Airfield Separat...ACRP 4-09 Risk Assessment Method to Support Modification of Airfield Separat...
ACRP 4-09 Risk Assessment Method to Support Modification of Airfield Separat...
 
6th International Conference on Machine Learning & Applications (CMLA 2024)
6th International Conference on Machine Learning & Applications (CMLA 2024)6th International Conference on Machine Learning & Applications (CMLA 2024)
6th International Conference on Machine Learning & Applications (CMLA 2024)
 
Literature Review Basics and Understanding Reference Management.pptx
Literature Review Basics and Understanding Reference Management.pptxLiterature Review Basics and Understanding Reference Management.pptx
Literature Review Basics and Understanding Reference Management.pptx
 
PPT on GRP pipes manufacturing and testing
PPT on GRP pipes manufacturing and testingPPT on GRP pipes manufacturing and testing
PPT on GRP pipes manufacturing and testing
 
Modelagem de um CSTR com reação endotermica.pdf
Modelagem de um CSTR com reação endotermica.pdfModelagem de um CSTR com reação endotermica.pdf
Modelagem de um CSTR com reação endotermica.pdf
 
spirit beverages ppt without graphics.pptx
spirit beverages ppt without graphics.pptxspirit beverages ppt without graphics.pptx
spirit beverages ppt without graphics.pptx
 

Software maintenance and configuration management, software engineering

  • 2. Types of Maintenance •Corrective Maintenance (21%) • making changes to repair defects •Adaptive Maintenance (25%) • making changes to adapt software to external environment changes (hardware, business rules, OS, etc.) •Perfective Maintenance (50%) • extending system beyond its original functional requirements •Preventative Maintenance (4%) • modifying work products so that they are more easily corrected, adapted, or enhanced
  • 3. Maintenance Costs •Usually greater than the development costs (2 to 10 times as much in some cases) •Affected by both technical and non-technical factors •Increase as software is maintained and system corruption is introduced •Aging software can have high support costs (e.g. old languages, compilers, etc.)
  • 4. Maintenance Developer Tasks • Understand system. • Locate information in documentation. • Keep system documentation up to date. • Extend existing functions. • Add new functions. • Find sources of errors. • Correct system errors. • Answer operations questions. • Restructure design and code. • Delete obsolete design and code. • Manage changes.
  • 5. Maintenance Cost Factors •Staff turnover • no turnover usually means lower maintenance costs •Contractual responsibility • developers may have no contractual obligation to maintain the delivered system and no incentive to design for future change •Staff skills • maintenance staff are often inexperienced and have limited domain knowledge •Program age and structure • as programs age their structure deteriorates, they become harder to understand and change
  • 6. Maintenance Prediction •Concerned with determining which parts of the system may cause problems and have high maintenance costs •Change acceptance depends on the maintainability of the components affected by the change •Implementing changes degrade system and reduces its maintainability •Maintenance costs depends on number of changes
  • 7. Configuration Management •Software changes are inevitable •One goal of software engineering is to improve how easy it is to change software •Configuration management is all about change control. •Every software engineer has to be concerned with how changes made to work products are tracked and propagated throughout a project. •To ensure quality is maintained the change process must be audited.
  • 8. Configuration Management Definition: The set of activities that have been developed to manage change throughout the software life cycle. Purpose: Systematically control changes to the configuration and maintain the integrity and traceability of the configuration throughout the system’s life cycle.
  • 9. Purpose of CM • Identify Change • Control Change • Ensure Change is Properly Implemented • Report Changes to All the people who need to Know
  • 10. Baseline •Definition: Specification or product that • has been formally reviewed and agreed upon, • serves as the basis for further development, and • can be changed only through formal change control procedures. •Signals a point of departure from one activity to the start of another activity. •Helps control change without impeding justifiable change.
  • 11. Project Baseline •Central repository of reviewed and approved artifacts that represent a given stable point in overall system development. •Shared DB for project and kept in consistent state. •Policies allow the team to achieve consistent state and manage the project.
  • 12. Software Configuration Item (SCI) •Definition: Information that is created as part of the software engineering process. •Examples: •Software Project Plan •Software Requirements Specification • Models, Prototypes, Requirements •Design document • Protocols, Hierarchy Graphs •Source code • Modules •Test suite •Software tools (e.g., compilers)
  • 13. Elements of SCM There are four elements of SCM: 1. Software Configuration Identification 2. Software Configuration Control 3. Software Configuration Auditing 4. Software Configuration Status Accounting
  • 14. SCM Tasks •Identification •Change control •Version control •Configuration auditing •Status reporting
  • 15. 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.)
  • 16. Change Control Task • 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
  • 17. Version Control Task • 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 reason for changes and details of who made the changes and when
  • 18. Configuration Auditing Task • 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 a formal technical review been conducted to assess technical correctness? • Has the software process been followed, and have software engineering standards been properly applied? • 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
  • 19. Status Reporting Task • 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 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