SlideShare a Scribd company logo
Software Maintenance
Indu Sharma
HOD(CSE)
CPTC, Rajsamand
Introduction
 One of the important objectives of the
development process should be to produce
software that is easy to maintain.
 After the software has been installed, now
maintenance phase starts. The
maintenance of the software represents up to
70% total life cycle cost of software.
What is Maintainability?
 It is one of the measures of software
quality. Maintainability is the ease with
which a program can be corrected if an
error is encountered, adapted if its
environment changes, or enhanced if
the customer desires a change in
requirements.
Why Software Change?
 It is impossible to produce systems of any
size which do not need to be changed. Once
software is put into use, new requirements
emerge and existing requirements change as
the business running that software changes.
Parts of the software may have to be modified
to correct error that are found in operation,
improve its performance. All of these means
that, after delivery, software systems always
evolve in response to demands for change.
Maintenance Definition
 The Process of changing a system after
it has been delivered and is in use is
called software maintenance.
 According to IEEE:
 Software maintenance is modification of a
software product after delivery to correct
faults, to improve performance or other
attributes, or to adapt the product to a
modified environment.
Types of Maintenance
 There are three different types of
software changes (or maintenance
activities):
 Correction(or Corrective
Maintenance): Even with the best
quality activity, it is likely that the
customer will uncover defects in the
software. Corrective maintenance
changes the software to correct defects.
Types of Maintenance
 Adaption (Or Adaptive Maintenance)
: Over time the original environment (eg
CPU, O/S, Business rules, government
policies etc. ) for which the software was
developed is likely to change. Adaptive
maintenance results in modification to
software to accommodate changes to its
external environment.
 Enhancement(Or Perfective
Maintenance) : As software is used, the
customer/user will recognize additional
functions that will provide benefits.
Perfective maintenance extends the
software beyond its original functional
requirements.
Perfective maintenance refers to
enhancements: making the product better,
faster, smaller, better documented, cleaner
structured, with more functions or reports.
Types of Maintenance
Problems: Maintenance
The costs of adding functionality to a system
after it has been put into operation are usually
much greater than providing similar
functionality when software is originally
developed. The reasons for this:
(I) Maintenance staff are often relatively
inexperienced and unfamiliar with application
domain. It is seen as a less skilled process
than system development and is often
allocated to the most junior staff.
(II) The programs being maintained may have
been developed many years ago without modern
software engineering techniques. They may be
unstructured and optimized for efficiency rather
than understandability
(III) Changes made to a program may introduce
new faults which trigger further change requests.
New faults may be introduced because the
complexity of the system may make it difficult to
assess the effects of a change.
Problems: Maintenance
(IV) As a system is changed, its structure tends to
degrade. This makes the system harder to
understand and makes further changes difficult as the
program becomes less cohesive.
(V) The links between a program and its associated
documentation are sometimes lost during the
maintenance process. The documentation may
therefore be an unreliable aid to program
understanding.
Problems: Maintenance
Solutions: Maintenance
 The first of these problems can only be
tackled by organizations adopting enlightened
maintenance management policies.
Management must demonstrate to engineers
that maintenance is of equal value and is as
challenging as original software development.
The best designers and programmers should
be challenged and motivated by system
maintenance.
The second of the above problems, can be tackled
using re-engineering and design recovery techniques.
The third and fourth problems are process
problems. Structure naturally degrades with change.
For this organizations must plan to invest extra effort
and resources with the aim of maintaining the structure.
Good software engineering practice such as use of
information hiding or object-oriented development helps
minimize the structure degradation. These techniques
also reduce the probability of faults introduction when
change are made.
Solutions: Maintenance
The loss of traceability from code to design
documents may be a consequence of poor
configuration management.
Properly produced and maintained system
documentation is a tremendous aid to maintenance
engineers. The system documentation includes all of
the documents describing the implementation of the
system from the requirements specification to the
final acceptance test plan.
Solutions: Maintenance
The Maintenance Process
Change
Requests
Impact
Analysis
System
release
planning
Change
implement
ation
System
release
Perfective
maintenance
Adaptive
maintenance
Corrective
maintenance
The Maintenance Process
 Change Requests: This process is
triggered by a set of change requests from
system users, management, or customers.
 Impact Analysis: The cost and impact of
these changes are assessed.
 System release planning: If the proposed
changes are accepted, a new release of the
system is planned. This release will usually
involve elements of adaptive, corrective, and
perfective maintenance.
 Change Implementation: The
changes are implemented and validated
 System release: A new version of the
system is released.
The process then iterates with a new
set of changes proposed for the new
release.
The Maintenance Process
Emergency Repair Approach
Change
Requests
Analyse
source
code
Modify
source
code
Delivered
repaired
system
Change requests sometimes relate to
system problems that must be tackled
urgently.
The danger with this approach is that
design documents are not updated.

More Related Content

What's hot

Advanced topics in software engineering
Advanced topics in software engineeringAdvanced topics in software engineering
Advanced topics in software engineering
Rupesh Vaishnav
 
Component based software engineering
Component based software engineeringComponent based software engineering
Component based software engineering
Charotar University Of Science And Technology,Gujrat
 
Software re engineering
Software re engineeringSoftware re engineering
Software re engineering
deshpandeamrut
 
Software Maintenance and Evolution
Software Maintenance and EvolutionSoftware Maintenance and Evolution
Software Maintenance and Evolution
kim.mens
 
software maintenance
software maintenancesoftware maintenance
software maintenance
rajshreemuthiah
 
Software Evolution
Software EvolutionSoftware Evolution
Software Evolution
Michele Lanza
 
Chapter 01 software engineering pressman
Chapter 01  software engineering pressmanChapter 01  software engineering pressman
Chapter 01 software engineering pressman
RohitGoyal183
 
Software quality assurance
Software quality assuranceSoftware quality assurance
Software quality assurance
Aman Adhikari
 
12 software maintenance
12 software maintenance12 software maintenance
SWE-401 - 1. Introduction to Software Engineering
SWE-401 - 1. Introduction to Software EngineeringSWE-401 - 1. Introduction to Software Engineering
SWE-401 - 1. Introduction to Software Engineering
ghayour abbas
 
Software maintenance ppt
Software maintenance pptSoftware maintenance ppt
Software maintenance ppt
Anas Usman
 
Agile Development | Agile Process Models
Agile Development | Agile Process ModelsAgile Development | Agile Process Models
Agile Development | Agile Process Models
Ahsan Rahim
 
Introduction to Software Engineering
Introduction to Software EngineeringIntroduction to Software Engineering
Introduction to Software Engineering
Saqib Raza
 
Programming team structure
Programming team structureProgramming team structure
Programming team structure
NancyBeaulah_R
 
Software re engineering
Software re engineeringSoftware re engineering
Software re engineering
Indu Sharma Bhardwaj
 
Software configuration management
Software configuration managementSoftware configuration management
Software configuration management
fizamustanser
 
Chapter 1 2 - some size factors
Chapter 1   2 - some size factorsChapter 1   2 - some size factors
Chapter 1 2 - some size factors
NancyBeaulah_R
 
formal verification
formal verificationformal verification
formal verification
Toseef Aslam
 

What's hot (20)

Advanced topics in software engineering
Advanced topics in software engineeringAdvanced topics in software engineering
Advanced topics in software engineering
 
Component based software engineering
Component based software engineeringComponent based software engineering
Component based software engineering
 
Software re engineering
Software re engineeringSoftware re engineering
Software re engineering
 
Software Maintenance and Evolution
Software Maintenance and EvolutionSoftware Maintenance and Evolution
Software Maintenance and Evolution
 
software maintenance
software maintenancesoftware maintenance
software maintenance
 
Software Evolution
Software EvolutionSoftware Evolution
Software Evolution
 
Chapter 01 software engineering pressman
Chapter 01  software engineering pressmanChapter 01  software engineering pressman
Chapter 01 software engineering pressman
 
Software quality assurance
Software quality assuranceSoftware quality assurance
Software quality assurance
 
12 software maintenance
12 software maintenance12 software maintenance
12 software maintenance
 
SWE-401 - 1. Introduction to Software Engineering
SWE-401 - 1. Introduction to Software EngineeringSWE-401 - 1. Introduction to Software Engineering
SWE-401 - 1. Introduction to Software Engineering
 
Software maintenance ppt
Software maintenance pptSoftware maintenance ppt
Software maintenance ppt
 
Agile Development | Agile Process Models
Agile Development | Agile Process ModelsAgile Development | Agile Process Models
Agile Development | Agile Process Models
 
Introduction to Software Engineering
Introduction to Software EngineeringIntroduction to Software Engineering
Introduction to Software Engineering
 
Slides chapter 3
Slides chapter 3Slides chapter 3
Slides chapter 3
 
Programming team structure
Programming team structureProgramming team structure
Programming team structure
 
Software re engineering
Software re engineeringSoftware re engineering
Software re engineering
 
Software configuration management
Software configuration managementSoftware configuration management
Software configuration management
 
Chapter 1 2 - some size factors
Chapter 1   2 - some size factorsChapter 1   2 - some size factors
Chapter 1 2 - some size factors
 
formal verification
formal verificationformal verification
formal verification
 
Software design
Software designSoftware design
Software design
 

Viewers also liked

Chapter 9 software maintenance
Chapter 9 software maintenanceChapter 9 software maintenance
Chapter 9 software maintenance
despicable me
 
10 software maintenance
10 software maintenance10 software maintenance
10 software maintenanceakiara
 
Software maintenance
Software  maintenanceSoftware  maintenance
Software maintenance
Piyush Dua
 
Software maintenance
Software maintenanceSoftware maintenance
Software maintenance
Darah Lei Jubilo
 
7. The Software Development Process - Maintenance
7. The Software Development Process - Maintenance7. The Software Development Process - Maintenance
7. The Software Development Process - MaintenanceForrester High School
 
Software Reengineering
Software ReengineeringSoftware Reengineering
Software Reengineering
Deniz Kılınç
 
Maintenance, Re-engineering &Reverse Engineering in Software Engineering
Maintenance,Re-engineering &Reverse Engineering in Software EngineeringMaintenance,Re-engineering &Reverse Engineering in Software Engineering
Maintenance, Re-engineering &Reverse Engineering in Software Engineering
Manish Kumar
 
Reengineering including reverse & forward Engineering
Reengineering including reverse & forward EngineeringReengineering including reverse & forward Engineering
Reengineering including reverse & forward EngineeringMuhammad Chaudhry
 
Software requirements specification of Library Management System
Software requirements specification of Library Management SystemSoftware requirements specification of Library Management System
Software requirements specification of Library Management System
Soumili Sen
 
Plant Maintenance
Plant MaintenancePlant Maintenance
Plant Maintenance
Anand Subramaniam
 
Unit 3 requirements engineering processes merged
Unit 3 requirements engineering processes mergedUnit 3 requirements engineering processes merged
Unit 3 requirements engineering processes mergedanuragmbst
 
Software enginnering
Software enginneringSoftware enginnering
Software enginnering
ashish kumar
 
Ch9
Ch9Ch9
Application of economic model in software maintenance
Application of economic model in software maintenanceApplication of economic model in software maintenance
Application of economic model in software maintenance
Anh Nguyen Duc
 
5 chap - MAINTENANCE
5 chap - MAINTENANCE5 chap - MAINTENANCE
5 chap - MAINTENANCE
sujitkumar Sujit.Karande
 
General assignment order
General assignment orderGeneral assignment order
General assignment orderkanthrachala
 
Spm unit v-software maintenance-intro
Spm unit v-software maintenance-introSpm unit v-software maintenance-intro
Spm unit v-software maintenance-intro
Kanchana Devi
 
UML 2.0 Changes
UML 2.0 ChangesUML 2.0 Changes
UML 2.0 Changes
manishthaper
 

Viewers also liked (20)

Chapter 9 software maintenance
Chapter 9 software maintenanceChapter 9 software maintenance
Chapter 9 software maintenance
 
10 software maintenance
10 software maintenance10 software maintenance
10 software maintenance
 
Software maintenance
Software  maintenanceSoftware  maintenance
Software maintenance
 
Software maintenance
Software maintenanceSoftware maintenance
Software maintenance
 
7. The Software Development Process - Maintenance
7. The Software Development Process - Maintenance7. The Software Development Process - Maintenance
7. The Software Development Process - Maintenance
 
Software Reengineering
Software ReengineeringSoftware Reengineering
Software Reengineering
 
Maintenance, Re-engineering &Reverse Engineering in Software Engineering
Maintenance,Re-engineering &Reverse Engineering in Software EngineeringMaintenance,Re-engineering &Reverse Engineering in Software Engineering
Maintenance, Re-engineering &Reverse Engineering in Software Engineering
 
Reengineering including reverse & forward Engineering
Reengineering including reverse & forward EngineeringReengineering including reverse & forward Engineering
Reengineering including reverse & forward Engineering
 
Software Process Models
Software Process ModelsSoftware Process Models
Software Process Models
 
Software requirements specification of Library Management System
Software requirements specification of Library Management SystemSoftware requirements specification of Library Management System
Software requirements specification of Library Management System
 
Plant Maintenance
Plant MaintenancePlant Maintenance
Plant Maintenance
 
Unit 3 requirements engineering processes merged
Unit 3 requirements engineering processes mergedUnit 3 requirements engineering processes merged
Unit 3 requirements engineering processes merged
 
Software enginnering
Software enginneringSoftware enginnering
Software enginnering
 
Ch9
Ch9Ch9
Ch9
 
Application of economic model in software maintenance
Application of economic model in software maintenanceApplication of economic model in software maintenance
Application of economic model in software maintenance
 
5 chap - MAINTENANCE
5 chap - MAINTENANCE5 chap - MAINTENANCE
5 chap - MAINTENANCE
 
DOC011.PDF
DOC011.PDFDOC011.PDF
DOC011.PDF
 
General assignment order
General assignment orderGeneral assignment order
General assignment order
 
Spm unit v-software maintenance-intro
Spm unit v-software maintenance-introSpm unit v-software maintenance-intro
Spm unit v-software maintenance-intro
 
UML 2.0 Changes
UML 2.0 ChangesUML 2.0 Changes
UML 2.0 Changes
 

Similar to Software maintenance

Software maintaince.pptx
Software maintaince.pptxSoftware maintaince.pptx
Software maintaince.pptx
AmarYa2
 
Software maintenance
Software maintenanceSoftware maintenance
Software maintenance
ashrafulislam293
 
Software maintenance service strategies
Software maintenance service strategiesSoftware maintenance service strategies
Software maintenance service strategies
SIS Tech
 
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
 
Software Maintenance with detailed description
Software Maintenance with detailed descriptionSoftware Maintenance with detailed description
Software Maintenance with detailed description
SaileshSingh27
 
Sdd Maintenance Of Software Solutions
Sdd Maintenance Of Software SolutionsSdd Maintenance Of Software Solutions
Sdd Maintenance Of Software Solutionsgavhays
 
Sw Maintenance.ppt
Sw Maintenance.pptSw Maintenance.ppt
Sw Maintenance.ppt
PREMSINGHRC211300301
 
Types of Maintenance.pptx
Types of Maintenance.pptxTypes of Maintenance.pptx
Types of Maintenance.pptx
TheMusicFever
 
Software maintenance
Software maintenanceSoftware maintenance
Software maintenance
Ansh Kapoor
 
Bse 3105 lecture 2- software change
Bse 3105  lecture 2- software changeBse 3105  lecture 2- software change
Bse 3105 lecture 2- software change
Alonzee Tash
 
Bse 3105 lecture 2- software change
Bse 3105  lecture 2- software changeBse 3105  lecture 2- software change
Bse 3105 lecture 2- software changeAlonzee Tash
 
PS02CINT22 SE Software Maintenance
PS02CINT22 SE Software MaintenancePS02CINT22 SE Software Maintenance
PS02CINT22 SE Software Maintenance
Conestoga Collage
 
Unit5.pptx
Unit5.pptxUnit5.pptx
Unit5.pptx
Anish874317
 
Software Engineering.pptx
Software Engineering.pptxSoftware Engineering.pptx
Software Engineering.pptx
TheMusicFever
 
Intro softwareeng
Intro softwareengIntro softwareeng
Intro softwareengPINKU29
 
Ch9-Software Engineering 9
Ch9-Software Engineering 9Ch9-Software Engineering 9
Ch9-Software Engineering 9Ian Sommerville
 
Software Change in Software Engineering SE27
Software Change in Software Engineering SE27Software Change in Software Engineering SE27
Software Change in Software Engineering SE27koolkampus
 
SE - Lecture 13 - Software Evolution and Tech Trends.pptx
SE - Lecture 13 - Software Evolution and Tech Trends.pptxSE - Lecture 13 - Software Evolution and Tech Trends.pptx
SE - Lecture 13 - Software Evolution and Tech Trends.pptx
TangZhiSiang
 
Software maintenance
Software maintenanceSoftware maintenance
Software maintenance
iFour Technolab Pvt. Ltd.
 

Similar to Software maintenance (20)

Software maintaince.pptx
Software maintaince.pptxSoftware maintaince.pptx
Software maintaince.pptx
 
Software maintenance
Software maintenanceSoftware maintenance
Software maintenance
 
Software maintenance service strategies
Software maintenance service strategiesSoftware maintenance service strategies
Software maintenance service strategies
 
SWE-401 - 11. Software maintenance overview
SWE-401 - 11. Software maintenance overviewSWE-401 - 11. Software maintenance overview
SWE-401 - 11. Software maintenance overview
 
Software Maintenance with detailed description
Software Maintenance with detailed descriptionSoftware Maintenance with detailed description
Software Maintenance with detailed description
 
Sdd Maintenance Of Software Solutions
Sdd Maintenance Of Software SolutionsSdd Maintenance Of Software Solutions
Sdd Maintenance Of Software Solutions
 
Sw Maintenance.ppt
Sw Maintenance.pptSw Maintenance.ppt
Sw Maintenance.ppt
 
Types of Maintenance.pptx
Types of Maintenance.pptxTypes of Maintenance.pptx
Types of Maintenance.pptx
 
Ch21
Ch21Ch21
Ch21
 
Software maintenance
Software maintenanceSoftware maintenance
Software maintenance
 
Bse 3105 lecture 2- software change
Bse 3105  lecture 2- software changeBse 3105  lecture 2- software change
Bse 3105 lecture 2- software change
 
Bse 3105 lecture 2- software change
Bse 3105  lecture 2- software changeBse 3105  lecture 2- software change
Bse 3105 lecture 2- software change
 
PS02CINT22 SE Software Maintenance
PS02CINT22 SE Software MaintenancePS02CINT22 SE Software Maintenance
PS02CINT22 SE Software Maintenance
 
Unit5.pptx
Unit5.pptxUnit5.pptx
Unit5.pptx
 
Software Engineering.pptx
Software Engineering.pptxSoftware Engineering.pptx
Software Engineering.pptx
 
Intro softwareeng
Intro softwareengIntro softwareeng
Intro softwareeng
 
Ch9-Software Engineering 9
Ch9-Software Engineering 9Ch9-Software Engineering 9
Ch9-Software Engineering 9
 
Software Change in Software Engineering SE27
Software Change in Software Engineering SE27Software Change in Software Engineering SE27
Software Change in Software Engineering SE27
 
SE - Lecture 13 - Software Evolution and Tech Trends.pptx
SE - Lecture 13 - Software Evolution and Tech Trends.pptxSE - Lecture 13 - Software Evolution and Tech Trends.pptx
SE - Lecture 13 - Software Evolution and Tech Trends.pptx
 
Software maintenance
Software maintenanceSoftware maintenance
Software maintenance
 

More from Indu Sharma Bhardwaj

E model
E modelE model
E commerce
E commerceE commerce
Ui design final
Ui design finalUi design final
Ui design final
Indu Sharma Bhardwaj
 
Testing
TestingTesting
Software project management 3
Software project management 3Software project management 3
Software project management 3
Indu Sharma Bhardwaj
 
Software project management
Software project managementSoftware project management
Software project management
Indu Sharma Bhardwaj
 
Software process and project metrics
Software process and project metricsSoftware process and project metrics
Software process and project metrics
Indu Sharma Bhardwaj
 
Software resuse
Software  resuseSoftware  resuse
Software resuse
Indu Sharma Bhardwaj
 
Risk analysis
Risk analysisRisk analysis
Risk analysis
Indu Sharma Bhardwaj
 
Design final
Design finalDesign final
Design final
Indu Sharma Bhardwaj
 
Debugging
DebuggingDebugging
10 common english mistakes
10 common english mistakes10 common english mistakes
10 common english mistakes
Indu Sharma Bhardwaj
 
6. static keyword
6. static keyword6. static keyword
6. static keyword
Indu Sharma Bhardwaj
 
4. method overloading
4. method overloading4. method overloading
4. method overloading
Indu Sharma Bhardwaj
 
2. hello java
2. hello java2. hello java
2. hello java
Indu Sharma Bhardwaj
 

More from Indu Sharma Bhardwaj (17)

E model
E modelE model
E model
 
E commerce
E commerceE commerce
E commerce
 
Ui design final
Ui design finalUi design final
Ui design final
 
Testing
TestingTesting
Testing
 
Software project management 3
Software project management 3Software project management 3
Software project management 3
 
Software project management
Software project managementSoftware project management
Software project management
 
Software process and project metrics
Software process and project metricsSoftware process and project metrics
Software process and project metrics
 
Software resuse
Software  resuseSoftware  resuse
Software resuse
 
Risk analysis
Risk analysisRisk analysis
Risk analysis
 
Design final
Design finalDesign final
Design final
 
Debugging
DebuggingDebugging
Debugging
 
10 common english mistakes
10 common english mistakes10 common english mistakes
10 common english mistakes
 
3. jvm
3. jvm3. jvm
3. jvm
 
6. static keyword
6. static keyword6. static keyword
6. static keyword
 
4. method overloading
4. method overloading4. method overloading
4. method overloading
 
2. hello java
2. hello java2. hello java
2. hello java
 
1 .java basic
1 .java basic1 .java basic
1 .java basic
 

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
 
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
siemaillard
 
The French Revolution Class 9 Study Material pdf free download
The French Revolution Class 9 Study Material pdf free downloadThe French Revolution Class 9 Study Material pdf free download
The French Revolution Class 9 Study Material pdf free download
Vivekanand Anglo Vedic Academy
 
CLASS 11 CBSE B.St Project AIDS TO TRADE - INSURANCE
CLASS 11 CBSE B.St Project AIDS TO TRADE - INSURANCECLASS 11 CBSE B.St Project AIDS TO TRADE - INSURANCE
CLASS 11 CBSE B.St Project AIDS TO TRADE - INSURANCE
BhavyaRajput3
 
The Art Pastor's Guide to Sabbath | Steve Thomason
The Art Pastor's Guide to Sabbath | Steve ThomasonThe Art Pastor's Guide to Sabbath | Steve Thomason
The Art Pastor's Guide to Sabbath | Steve Thomason
Steve Thomason
 
Polish students' mobility in the Czech Republic
Polish students' mobility in the Czech RepublicPolish students' mobility in the Czech Republic
Polish students' mobility in the Czech Republic
Anna Sz.
 
Instructions for Submissions thorugh G- Classroom.pptx
Instructions for Submissions thorugh G- Classroom.pptxInstructions for Submissions thorugh G- Classroom.pptx
Instructions for Submissions thorugh G- Classroom.pptx
Jheel Barad
 
How to Make a Field invisible in Odoo 17
How to Make a Field invisible in Odoo 17How to Make a Field invisible in Odoo 17
How to Make a Field invisible in Odoo 17
Celine George
 
How to Break the cycle of negative Thoughts
How to Break the cycle of negative ThoughtsHow to Break the cycle of negative Thoughts
How to Break the cycle of negative Thoughts
Col Mukteshwar Prasad
 
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
siemaillard
 
Phrasal Verbs.XXXXXXXXXXXXXXXXXXXXXXXXXX
Phrasal Verbs.XXXXXXXXXXXXXXXXXXXXXXXXXXPhrasal Verbs.XXXXXXXXXXXXXXXXXXXXXXXXXX
Phrasal Verbs.XXXXXXXXXXXXXXXXXXXXXXXXXX
MIRIAMSALINAS13
 
Basic phrases for greeting and assisting costumers
Basic phrases for greeting and assisting costumersBasic phrases for greeting and assisting costumers
Basic phrases for greeting and assisting costumers
PedroFerreira53928
 
Additional Benefits for Employee Website.pdf
Additional Benefits for Employee Website.pdfAdditional Benefits for Employee Website.pdf
Additional Benefits for Employee Website.pdf
joachimlavalley1
 
Introduction to Quality Improvement Essentials
Introduction to Quality Improvement EssentialsIntroduction to Quality Improvement Essentials
Introduction to Quality Improvement Essentials
Excellence Foundation for South Sudan
 
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
 
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
 
Mule 4.6 & Java 17 Upgrade | MuleSoft Mysore Meetup #46
Mule 4.6 & Java 17 Upgrade | MuleSoft Mysore Meetup #46Mule 4.6 & Java 17 Upgrade | MuleSoft Mysore Meetup #46
Mule 4.6 & Java 17 Upgrade | MuleSoft Mysore Meetup #46
MysoreMuleSoftMeetup
 
Language Across the Curriculm LAC B.Ed.
Language Across the  Curriculm LAC B.Ed.Language Across the  Curriculm LAC B.Ed.
Language Across the Curriculm LAC B.Ed.
Atul Kumar Singh
 
The Roman Empire A Historical Colossus.pdf
The Roman Empire A Historical Colossus.pdfThe Roman Empire A Historical Colossus.pdf
The Roman Empire A Historical Colossus.pdf
kaushalkr1407
 
MARUTI SUZUKI- A Successful Joint Venture in India.pptx
MARUTI SUZUKI- A Successful Joint Venture in India.pptxMARUTI SUZUKI- A Successful Joint Venture in India.pptx
MARUTI SUZUKI- A Successful Joint Venture in India.pptx
bennyroshan06
 

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
 
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
 
The French Revolution Class 9 Study Material pdf free download
The French Revolution Class 9 Study Material pdf free downloadThe French Revolution Class 9 Study Material pdf free download
The French Revolution Class 9 Study Material pdf free download
 
CLASS 11 CBSE B.St Project AIDS TO TRADE - INSURANCE
CLASS 11 CBSE B.St Project AIDS TO TRADE - INSURANCECLASS 11 CBSE B.St Project AIDS TO TRADE - INSURANCE
CLASS 11 CBSE B.St Project AIDS TO TRADE - INSURANCE
 
The Art Pastor's Guide to Sabbath | Steve Thomason
The Art Pastor's Guide to Sabbath | Steve ThomasonThe Art Pastor's Guide to Sabbath | Steve Thomason
The Art Pastor's Guide to Sabbath | Steve Thomason
 
Polish students' mobility in the Czech Republic
Polish students' mobility in the Czech RepublicPolish students' mobility in the Czech Republic
Polish students' mobility in the Czech Republic
 
Instructions for Submissions thorugh G- Classroom.pptx
Instructions for Submissions thorugh G- Classroom.pptxInstructions for Submissions thorugh G- Classroom.pptx
Instructions for Submissions thorugh G- Classroom.pptx
 
How to Make a Field invisible in Odoo 17
How to Make a Field invisible in Odoo 17How to Make a Field invisible in Odoo 17
How to Make a Field invisible in Odoo 17
 
How to Break the cycle of negative Thoughts
How to Break the cycle of negative ThoughtsHow to Break the cycle of negative Thoughts
How to Break the cycle of negative Thoughts
 
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
 
Phrasal Verbs.XXXXXXXXXXXXXXXXXXXXXXXXXX
Phrasal Verbs.XXXXXXXXXXXXXXXXXXXXXXXXXXPhrasal Verbs.XXXXXXXXXXXXXXXXXXXXXXXXXX
Phrasal Verbs.XXXXXXXXXXXXXXXXXXXXXXXXXX
 
Basic phrases for greeting and assisting costumers
Basic phrases for greeting and assisting costumersBasic phrases for greeting and assisting costumers
Basic phrases for greeting and assisting costumers
 
Additional Benefits for Employee Website.pdf
Additional Benefits for Employee Website.pdfAdditional Benefits for Employee Website.pdf
Additional Benefits for Employee Website.pdf
 
Introduction to Quality Improvement Essentials
Introduction to Quality Improvement EssentialsIntroduction to Quality Improvement Essentials
Introduction to Quality Improvement Essentials
 
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
 
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...
 
Mule 4.6 & Java 17 Upgrade | MuleSoft Mysore Meetup #46
Mule 4.6 & Java 17 Upgrade | MuleSoft Mysore Meetup #46Mule 4.6 & Java 17 Upgrade | MuleSoft Mysore Meetup #46
Mule 4.6 & Java 17 Upgrade | MuleSoft Mysore Meetup #46
 
Language Across the Curriculm LAC B.Ed.
Language Across the  Curriculm LAC B.Ed.Language Across the  Curriculm LAC B.Ed.
Language Across the Curriculm LAC B.Ed.
 
The Roman Empire A Historical Colossus.pdf
The Roman Empire A Historical Colossus.pdfThe Roman Empire A Historical Colossus.pdf
The Roman Empire A Historical Colossus.pdf
 
MARUTI SUZUKI- A Successful Joint Venture in India.pptx
MARUTI SUZUKI- A Successful Joint Venture in India.pptxMARUTI SUZUKI- A Successful Joint Venture in India.pptx
MARUTI SUZUKI- A Successful Joint Venture in India.pptx
 

Software maintenance

  • 2. Introduction  One of the important objectives of the development process should be to produce software that is easy to maintain.  After the software has been installed, now maintenance phase starts. The maintenance of the software represents up to 70% total life cycle cost of software.
  • 3. What is Maintainability?  It is one of the measures of software quality. Maintainability is the ease with which a program can be corrected if an error is encountered, adapted if its environment changes, or enhanced if the customer desires a change in requirements.
  • 4. Why Software Change?  It is impossible to produce systems of any size which do not need to be changed. Once software is put into use, new requirements emerge and existing requirements change as the business running that software changes. Parts of the software may have to be modified to correct error that are found in operation, improve its performance. All of these means that, after delivery, software systems always evolve in response to demands for change.
  • 5. Maintenance Definition  The Process of changing a system after it has been delivered and is in use is called software maintenance.  According to IEEE:  Software maintenance is modification of a software product after delivery to correct faults, to improve performance or other attributes, or to adapt the product to a modified environment.
  • 6. Types of Maintenance  There are three different types of software changes (or maintenance activities):  Correction(or Corrective Maintenance): Even with the best quality activity, it is likely that the customer will uncover defects in the software. Corrective maintenance changes the software to correct defects.
  • 7. Types of Maintenance  Adaption (Or Adaptive Maintenance) : Over time the original environment (eg CPU, O/S, Business rules, government policies etc. ) for which the software was developed is likely to change. Adaptive maintenance results in modification to software to accommodate changes to its external environment.
  • 8.  Enhancement(Or Perfective Maintenance) : As software is used, the customer/user will recognize additional functions that will provide benefits. Perfective maintenance extends the software beyond its original functional requirements. Perfective maintenance refers to enhancements: making the product better, faster, smaller, better documented, cleaner structured, with more functions or reports. Types of Maintenance
  • 9. Problems: Maintenance The costs of adding functionality to a system after it has been put into operation are usually much greater than providing similar functionality when software is originally developed. The reasons for this: (I) Maintenance staff are often relatively inexperienced and unfamiliar with application domain. It is seen as a less skilled process than system development and is often allocated to the most junior staff.
  • 10. (II) The programs being maintained may have been developed many years ago without modern software engineering techniques. They may be unstructured and optimized for efficiency rather than understandability (III) Changes made to a program may introduce new faults which trigger further change requests. New faults may be introduced because the complexity of the system may make it difficult to assess the effects of a change. Problems: Maintenance
  • 11. (IV) As a system is changed, its structure tends to degrade. This makes the system harder to understand and makes further changes difficult as the program becomes less cohesive. (V) The links between a program and its associated documentation are sometimes lost during the maintenance process. The documentation may therefore be an unreliable aid to program understanding. Problems: Maintenance
  • 12. Solutions: Maintenance  The first of these problems can only be tackled by organizations adopting enlightened maintenance management policies. Management must demonstrate to engineers that maintenance is of equal value and is as challenging as original software development. The best designers and programmers should be challenged and motivated by system maintenance.
  • 13. The second of the above problems, can be tackled using re-engineering and design recovery techniques. The third and fourth problems are process problems. Structure naturally degrades with change. For this organizations must plan to invest extra effort and resources with the aim of maintaining the structure. Good software engineering practice such as use of information hiding or object-oriented development helps minimize the structure degradation. These techniques also reduce the probability of faults introduction when change are made. Solutions: Maintenance
  • 14. The loss of traceability from code to design documents may be a consequence of poor configuration management. Properly produced and maintained system documentation is a tremendous aid to maintenance engineers. The system documentation includes all of the documents describing the implementation of the system from the requirements specification to the final acceptance test plan. Solutions: Maintenance
  • 16. The Maintenance Process  Change Requests: This process is triggered by a set of change requests from system users, management, or customers.  Impact Analysis: The cost and impact of these changes are assessed.  System release planning: If the proposed changes are accepted, a new release of the system is planned. This release will usually involve elements of adaptive, corrective, and perfective maintenance.
  • 17.  Change Implementation: The changes are implemented and validated  System release: A new version of the system is released. The process then iterates with a new set of changes proposed for the new release. The Maintenance Process
  • 18. Emergency Repair Approach Change Requests Analyse source code Modify source code Delivered repaired system Change requests sometimes relate to system problems that must be tackled urgently. The danger with this approach is that design documents are not updated.