SlideShare a Scribd company logo
S 
O 
F 
T 
W 
A 
R 
E 
M 
A 
I 
N 
T 
E 
N 
A 
N 
C 
E 
By- 
Ameer Hasan Malik 
Payal Singhal 
ameerhasan.nift@gmail.com 
1 
Software Maintenance
S 
O 
F 
T 
W 
A 
R 
E 
M 
A 
I 
N 
T 
E 
N 
A 
N 
C 
E 
Introduction 
 Software maintenance is the 
modification of a software product 
after delivery to correct faults, to 
improve performance or other 
attributes. 
 A common perception of 
maintenance is that it merely 
involves fixing defects. 
 Software maintenance is the general 
process of changing a system after 
it has been delivered. 
2 
Software Maintenance
S 
O 
F 
T 
W 
A 
R 
E 
M 
A 
I 
N 
T 
E 
N 
A 
N 
C 
E 
Reasons for maintaining software 
 Over a period of time 
software’s original 
requirement may change to 
reflect the customer’s needs. 
 Errors undetected during 
software development may be 
found during use and require 
correction. 
 With time new technologies 
are introduced such as new 
hardware, operating system 
etc. 
3 
Software Maintenance
S 
O 
F 
T 
W 
A 
R 
E 
M 
A 
I 
N 
T 
E 
N 
A 
N 
C 
E 
4 Cost distribution of SDLC 
Software Maintenance
S 
O 
F 
T 
W 
A 
R 
E 
M 
A 
I 
N 
T 
E 
N 
A 
N 
C 
E 
Software Maintenance Problems 
 Most computer programs are 
difficult and expensive to maintain. 
 Software changes are poorly 
designed and implemented. 
 The repair and enhancement of 
software often injects new bugs that 
must later be repaired. 
 Changes are often not documented. 
 Changes often cause new faults in 
the system. 
5 
Software Maintenance
S 
O 
F 
T 
W 
A 
R 
E 
M 
A 
I 
N 
T 
E 
N 
A 
N 
C 
E 
Types of software maintenance 
1. Corrective maintenance 
2. Adaptive maintenance 
3. Perfective maintenance 
4. Preventive maintenance 
Software Maintenance 
6 
Bug Fixing 
Porting & Migration 
Enhancements & scalability 
Documentation Enhancements
S 
O 
F 
T 
W 
A 
R 
E 
M 
A 
I 
N 
T 
E 
N 
A 
N 
C 
E 
1. Corrective Maintenance 
 Taking existing code and 
correcting a fault that causes the 
code to behave in some way that 
deviates from its documented 
requirements. 
 Focuses on bug fixing and 
reporting errors fixing. 
 i.e. defects generally need to be 
corrected either immediately or in 
the near future. 
 Fixing a fault has 20 to 50 % 
chances of introducing another 
fault. 
7 
Software Maintenance
S 
O 
F 
T 
W 
A 
R 
E 
M 
A 
I 
N 
T 
E 
N 
A 
N 
C 
E 
2. Adaptive Maintenance 
 Taking existing code and 
adapting it to provide new 
features and functionality. These 
are typically part of a new release 
of the code and part of a larger 
development effort. 
 Making changes in existing 
software to accommodate a 
changing environment 
 includes all work related to how 
the software functions. 
 i.e. relates to enhancing 
software functionality. 
8 
Software Maintenance
S 
O 
F 
T 
W 
A 
R 
E 
M 
A 
I 
N 
T 
E 
N 
A 
N 
C 
E 
3. Perfective Maintenance 
 Implementing new or changed 
user requirements which 
concern functional 
enhancements to the software. 
 These are typically made to 
improve the maintainability of 
the code such as restructuring it 
to make it more easily 
understood or to remove 
ambiguities. 
 includes all efforts to improve 
the quality of the software. 
 Includes improving reliability or 
efficiency. 
9 
Software Maintenance
S 
O 
F 
T 
W 
A 
R 
E 
M 
A 
I 
N 
T 
E 
N 
A 
N 
C 
E 
4. Preventive Maintenance 
 Includes anticipating future 
problems and to improve the 
maintainability using techniques 
like documenting, commenting 
or even re-implementing some 
part of documenting. 
 More commonly known as 
Software Re-engineering. 
 Old system starts as a 
specification for new system. 
 increasing the system’s 
maintainability. 
10 
Software Maintenance
S 
O 
F 
T 
W 
A 
R 
E 
M 
A 
I 
N 
T 
E 
N 
A 
N 
C 
E 
11 Cost of software maintenance 
Software Maintenance
S 
O 
F 
T 
W 
A 
R 
E 
M 
A 
I 
N 
T 
E 
N 
A 
N 
C 
E 
12 Software Maintenance models 
Software Maintenance 
Quick-fix model 
Iterative Enhancement model 
Full-reuse model 
Boehm’s Model 
Taute’s model
S 
O 
F 
T 
W 
A 
R 
E 
M 
A 
I 
N 
T 
E 
N 
A 
N 
C 
E 
1. Quick-fix Model 
 This is basically an adhoc approach 
to maintaining software. It is a fire 
fighting approach, waiting for the 
problem to occur and then trying to 
fix it as quickly as possible. 
 Changes are made at code level as 
early as possible without anticipating 
future problems. 
 As a result, the structure of software 
degrade rapidly. 
 Not suitable for large software 
systems. 
13 
Software Maintenance
S 
O 
F 
T 
W 
A 
R 
E 
M 
A 
I 
N 
T 
E 
N 
A 
N 
C 
E 
2. Iterative Enhancement Model 
 Incorporates changes in the software based on the analysis of the 
existing system. 
 Assumes complete documentation of software is available in 
beginning. 
 Attemps to control complexity and tries to maintain good design. 
 The document of each software life cycle phase i.e SRS, design 
document, testing document etc. are also modified. 
14 
Software Maintenance
S 
O 
F 
T 
W 
A 
R 
E 
M 
A 
I 
N 
T 
E 
N 
A 
N 
C 
E 
15 2. Iterative Enhancement Model(cont.) 
Characterize version 
Redesign current 
and proposed 
Implementation modifications 
Software Maintenance
S 
O 
F 
T 
W 
A 
R 
E 
M 
A 
I 
N 
T 
E 
N 
A 
N 
C 
E 
3. Full-reuse Model 
 Based on reuse of existing software components. 
 The reuse model has four main steps: 
1. Identification of the parts of the old system that are 
 Need mature reuse culture. 
16 
Software Maintenance 
candidates for reuse. 
2. Understanding these system parts. 
3. Modification of the old system parts appropriate to the 
new requirements. 
4. Integration of the modified parts into the new system.
S 
O 
F 
T 
W 
A 
R 
E 
M 
A 
I 
N 
T 
E 
N 
A 
N 
C 
E 
17 3. Full-reuse Model(cont.) 
New system 
Components 
library 
Requirements analysis 
Design 
Source code 
Test data 
Old system 
Requirements analysis 
Design 
Source code 
Test data 
Software Maintenance
S 
O 
F 
T 
W 
A 
R 
E 
M 
A 
I 
N 
T 
E 
N 
A 
N 
C 
E 
4. Boehm’s Model 
• Boehm proposed a model for the maintenance process based upon 
the economic models and principles. 
• Boehm represent the maintenance process as a closed loop cycle. 
• Changes are proposed first. 
• Then changes are made. 
18 
Proposed changes Approved changes 
Software Maintenance 
Management decisions 
Change 
implementation 
Evaluation 
New version of 
software 
Results
S 
O 
F 
T 
W 
A 
R 
E 
M 
A 
I 
N 
T 
E 
N 
A 
N 
C 
E 
5. Taute Maintenance Model 
• It is a typical maintenance model and has eight phases in cycle fashion. 
19 
Software Maintenance 
1. Change request phase 
2. Estimate phase 
3. Schedule phase 
4. Programming phase 
5. Test phase 
6. Documentation phase 
7. Release phase 
8. Operation phase
S 
O 
F 
T 
W 
A 
R 
E 
M 
A 
I 
N 
T 
E 
N 
A 
N 
C 
E 
20 5. Taute Maintenance Model(cont.) 
Software Maintenance
S 
O 
F 
T 
W 
A 
R 
E 
M 
A 
I 
N 
T 
E 
N 
A 
N 
C 
E 
THANK YOU 
21 
Software Maintenance

More Related Content

What's hot

Component based software engineering
Component based software engineeringComponent based software engineering
Component based software engineering
Charotar University Of Science And Technology,Gujrat
 
Software maintenance
Software maintenanceSoftware maintenance
Software maintenance
NancyBeaulah_R
 
Software evolution and maintenance basic concepts and preliminaries
Software evolution and maintenance   basic concepts and preliminariesSoftware evolution and maintenance   basic concepts and preliminaries
Software evolution and maintenance basic concepts and preliminaries
Moutasm Tamimi
 
Legacy Systems in Software Engineering SE26
Legacy Systems in Software Engineering SE26Legacy Systems in Software Engineering SE26
Legacy Systems in Software Engineering SE26koolkampus
 
Software Quality Attributes
Software Quality AttributesSoftware Quality Attributes
Software Quality Attributes
Hayim Makabee
 
Software quality assurance
Software quality assuranceSoftware quality assurance
Software quality assurance
Aman Adhikari
 
Quality and productivity factors
Quality and productivity factorsQuality and productivity factors
Quality and productivity factors
NancyBeaulah_R
 
Software Engineering unit 2
Software Engineering unit 2Software Engineering unit 2
Software Engineering unit 2
Abhimanyu Mishra
 
Software re engineering
Software re engineeringSoftware re engineering
Software re engineering
deshpandeamrut
 
Language and Processors for Requirements Specification
Language and Processors for Requirements SpecificationLanguage and Processors for Requirements Specification
Language and Processors for Requirements Specification
kirupasuchi1996
 
Design notation
Design notationDesign notation
Design notation
ramya marichamy
 
software engineering
software engineeringsoftware engineering
software engineering
Azad public school
 
Software Configuration Management (SCM)
Software Configuration Management (SCM)Software Configuration Management (SCM)
Software Configuration Management (SCM)
Er. Shiva K. Shrestha
 
Software maintenance
Software  maintenanceSoftware  maintenance
Software maintenance
Piyush Dua
 
Software Process Models
Software Process ModelsSoftware Process Models
Software Process Models
Hassan A-j
 
Software requirements specification
Software requirements specificationSoftware requirements specification
Software requirements specification
lavanya marichamy
 
Unit 2
Unit 2Unit 2
COCOMO Model By Dr. B. J. Mohite
COCOMO Model By Dr. B. J. MohiteCOCOMO Model By Dr. B. J. Mohite
COCOMO Model By Dr. B. J. Mohite
Zeal Education Society, Pune
 
Software Cost Estimation Techniques
Software Cost Estimation TechniquesSoftware Cost Estimation Techniques
Software Cost Estimation Techniques
Santhi thi
 

What's hot (20)

Component based software engineering
Component based software engineeringComponent based software engineering
Component based software engineering
 
Software maintenance
Software maintenanceSoftware maintenance
Software maintenance
 
Software evolution and maintenance basic concepts and preliminaries
Software evolution and maintenance   basic concepts and preliminariesSoftware evolution and maintenance   basic concepts and preliminaries
Software evolution and maintenance basic concepts and preliminaries
 
Legacy Systems in Software Engineering SE26
Legacy Systems in Software Engineering SE26Legacy Systems in Software Engineering SE26
Legacy Systems in Software Engineering SE26
 
Software Quality Attributes
Software Quality AttributesSoftware Quality Attributes
Software Quality Attributes
 
Software quality assurance
Software quality assuranceSoftware quality assurance
Software quality assurance
 
Quality and productivity factors
Quality and productivity factorsQuality and productivity factors
Quality and productivity factors
 
Software Engineering unit 2
Software Engineering unit 2Software Engineering unit 2
Software Engineering unit 2
 
Software re engineering
Software re engineeringSoftware re engineering
Software re engineering
 
Language and Processors for Requirements Specification
Language and Processors for Requirements SpecificationLanguage and Processors for Requirements Specification
Language and Processors for Requirements Specification
 
Design notation
Design notationDesign notation
Design notation
 
software engineering
software engineeringsoftware engineering
software engineering
 
Software Configuration Management (SCM)
Software Configuration Management (SCM)Software Configuration Management (SCM)
Software Configuration Management (SCM)
 
Software maintenance
Software  maintenanceSoftware  maintenance
Software maintenance
 
Software Process Models
Software Process ModelsSoftware Process Models
Software Process Models
 
Software requirements specification
Software requirements specificationSoftware requirements specification
Software requirements specification
 
Unit 2
Unit 2Unit 2
Unit 2
 
COCOMO Model By Dr. B. J. Mohite
COCOMO Model By Dr. B. J. MohiteCOCOMO Model By Dr. B. J. Mohite
COCOMO Model By Dr. B. J. Mohite
 
Software Cost Estimation Techniques
Software Cost Estimation TechniquesSoftware Cost Estimation Techniques
Software Cost Estimation Techniques
 
Software design
Software designSoftware design
Software design
 

Similar to Software Maintenance

PS02CINT22 SE Software Maintenance
PS02CINT22 SE Software MaintenancePS02CINT22 SE Software Maintenance
PS02CINT22 SE Software Maintenance
Conestoga Collage
 
Software Maintenance with detailed description
Software Maintenance with detailed descriptionSoftware Maintenance with detailed description
Software Maintenance with detailed description
SaileshSingh27
 
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 maintaince.pptx
Software maintaince.pptxSoftware maintaince.pptx
Software maintaince.pptx
AmarYa2
 
Unit5.pptx
Unit5.pptxUnit5.pptx
Unit5.pptx
Anish874317
 
Software maintenance service strategies
Software maintenance service strategiesSoftware maintenance service strategies
Software maintenance service strategies
SIS Tech
 
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
 
Software Testing and Quality Assurance Assignment 3
Software Testing and Quality Assurance Assignment 3Software Testing and Quality Assurance Assignment 3
Software Testing and Quality Assurance Assignment 3
Gurpreet singh
 
Mi0033 software engineering
Mi0033  software engineeringMi0033  software engineering
Mi0033 software engineeringsmumbahelp
 
Ch9
Ch9Ch9
Why Software Maintenance is Essential for Business?
Why Software Maintenance is Essential for Business?Why Software Maintenance is Essential for Business?
Why Software Maintenance is Essential for Business?
Albiorix Technology
 
Ch 02 s.e software process models 1
Ch 02 s.e software process models   1Ch 02 s.e software process models   1
Ch 02 s.e software process models 1
Badar Waseer
 
Software maintenance real world maintenance cost
Software maintenance real world maintenance costSoftware maintenance real world maintenance cost
Software maintenance real world maintenance cost
malathieswaran29
 
Software maintenance
Software maintenanceSoftware maintenance
Software maintenance
Ansh Kapoor
 
Sw Maintenance.ppt
Sw Maintenance.pptSw Maintenance.ppt
Sw Maintenance.ppt
PREMSINGHRC211300301
 
Sdd Maintenance Of Software Solutions
Sdd Maintenance Of Software SolutionsSdd Maintenance Of Software Solutions
Sdd Maintenance Of Software Solutionsgavhays
 
Ch9-Software Engineering 9
Ch9-Software Engineering 9Ch9-Software Engineering 9
Ch9-Software Engineering 9Ian Sommerville
 
Software Maintenance and Evolution
Software Maintenance and EvolutionSoftware Maintenance and Evolution
Software Maintenance and Evolution
kim.mens
 
Software maintenance
Software maintenanceSoftware maintenance
Software maintenance
ashrafulislam293
 
management of maintainance
management of maintainancemanagement of maintainance
management of maintainance
Mani Kanth
 

Similar to Software Maintenance (20)

PS02CINT22 SE Software Maintenance
PS02CINT22 SE Software MaintenancePS02CINT22 SE Software Maintenance
PS02CINT22 SE Software Maintenance
 
Software Maintenance with detailed description
Software Maintenance with detailed descriptionSoftware Maintenance with detailed description
Software Maintenance with detailed description
 
SWE-401 - 11. Software maintenance overview
SWE-401 - 11. Software maintenance overviewSWE-401 - 11. Software maintenance overview
SWE-401 - 11. Software maintenance overview
 
Software maintaince.pptx
Software maintaince.pptxSoftware maintaince.pptx
Software maintaince.pptx
 
Unit5.pptx
Unit5.pptxUnit5.pptx
Unit5.pptx
 
Software maintenance service strategies
Software maintenance service strategiesSoftware maintenance service strategies
Software maintenance service strategies
 
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
 
Software Testing and Quality Assurance Assignment 3
Software Testing and Quality Assurance Assignment 3Software Testing and Quality Assurance Assignment 3
Software Testing and Quality Assurance Assignment 3
 
Mi0033 software engineering
Mi0033  software engineeringMi0033  software engineering
Mi0033 software engineering
 
Ch9
Ch9Ch9
Ch9
 
Why Software Maintenance is Essential for Business?
Why Software Maintenance is Essential for Business?Why Software Maintenance is Essential for Business?
Why Software Maintenance is Essential for Business?
 
Ch 02 s.e software process models 1
Ch 02 s.e software process models   1Ch 02 s.e software process models   1
Ch 02 s.e software process models 1
 
Software maintenance real world maintenance cost
Software maintenance real world maintenance costSoftware maintenance real world maintenance cost
Software maintenance real world maintenance cost
 
Software maintenance
Software maintenanceSoftware maintenance
Software maintenance
 
Sw Maintenance.ppt
Sw Maintenance.pptSw Maintenance.ppt
Sw Maintenance.ppt
 
Sdd Maintenance Of Software Solutions
Sdd Maintenance Of Software SolutionsSdd Maintenance Of Software Solutions
Sdd Maintenance Of Software Solutions
 
Ch9-Software Engineering 9
Ch9-Software Engineering 9Ch9-Software Engineering 9
Ch9-Software Engineering 9
 
Software Maintenance and Evolution
Software Maintenance and EvolutionSoftware Maintenance and Evolution
Software Maintenance and Evolution
 
Software maintenance
Software maintenanceSoftware maintenance
Software maintenance
 
management of maintainance
management of maintainancemanagement of maintainance
management of maintainance
 

Recently uploaded

How to Split Bills in the Odoo 17 POS Module
How to Split Bills in the Odoo 17 POS ModuleHow to Split Bills in the Odoo 17 POS Module
How to Split Bills in the Odoo 17 POS Module
Celine George
 
The geography of Taylor Swift - some ideas
The geography of Taylor Swift - some ideasThe geography of Taylor Swift - some ideas
The geography of Taylor Swift - some ideas
GeoBlogs
 
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
 
Palestine last event orientationfvgnh .pptx
Palestine last event orientationfvgnh .pptxPalestine last event orientationfvgnh .pptx
Palestine last event orientationfvgnh .pptx
RaedMohamed3
 
PART A. Introduction to Costumer Service
PART A. Introduction to Costumer ServicePART A. Introduction to Costumer Service
PART A. Introduction to Costumer Service
PedroFerreira53928
 
The approach at University of Liverpool.pptx
The approach at University of Liverpool.pptxThe approach at University of Liverpool.pptx
The approach at University of Liverpool.pptx
Jisc
 
Cambridge International AS A Level Biology Coursebook - EBook (MaryFosbery J...
Cambridge International AS  A Level Biology Coursebook - EBook (MaryFosbery J...Cambridge International AS  A Level Biology Coursebook - EBook (MaryFosbery J...
Cambridge International AS A Level Biology Coursebook - EBook (MaryFosbery J...
AzmatAli747758
 
Phrasal Verbs.XXXXXXXXXXXXXXXXXXXXXXXXXX
Phrasal Verbs.XXXXXXXXXXXXXXXXXXXXXXXXXXPhrasal Verbs.XXXXXXXXXXXXXXXXXXXXXXXXXX
Phrasal Verbs.XXXXXXXXXXXXXXXXXXXXXXXXXX
MIRIAMSALINAS13
 
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
 
The Challenger.pdf DNHS Official Publication
The Challenger.pdf DNHS Official PublicationThe Challenger.pdf DNHS Official Publication
The Challenger.pdf DNHS Official Publication
Delapenabediema
 
Introduction to Quality Improvement Essentials
Introduction to Quality Improvement EssentialsIntroduction to Quality Improvement Essentials
Introduction to Quality Improvement Essentials
Excellence Foundation for South Sudan
 
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
 
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.
 
How libraries can support authors with open access requirements for UKRI fund...
How libraries can support authors with open access requirements for UKRI fund...How libraries can support authors with open access requirements for UKRI fund...
How libraries can support authors with open access requirements for UKRI fund...
Jisc
 
How to Create Map Views in the Odoo 17 ERP
How to Create Map Views in the Odoo 17 ERPHow to Create Map Views in the Odoo 17 ERP
How to Create Map Views in the Odoo 17 ERP
Celine George
 
Chapter 3 - Islamic Banking Products and Services.pptx
Chapter 3 - Islamic Banking Products and Services.pptxChapter 3 - Islamic Banking Products and Services.pptx
Chapter 3 - Islamic Banking Products and Services.pptx
Mohd Adib Abd Muin, Senior Lecturer at Universiti Utara Malaysia
 
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
 
Students, digital devices and success - Andreas Schleicher - 27 May 2024..pptx
Students, digital devices and success - Andreas Schleicher - 27 May 2024..pptxStudents, digital devices and success - Andreas Schleicher - 27 May 2024..pptx
Students, digital devices and success - Andreas Schleicher - 27 May 2024..pptx
EduSkills OECD
 
GIÁO ÁN DẠY THÊM (KẾ HOẠCH BÀI BUỔI 2) - TIẾNG ANH 8 GLOBAL SUCCESS (2 CỘT) N...
GIÁO ÁN DẠY THÊM (KẾ HOẠCH BÀI BUỔI 2) - TIẾNG ANH 8 GLOBAL SUCCESS (2 CỘT) N...GIÁO ÁN DẠY THÊM (KẾ HOẠCH BÀI BUỔI 2) - TIẾNG ANH 8 GLOBAL SUCCESS (2 CỘT) N...
GIÁO ÁN DẠY THÊM (KẾ HOẠCH BÀI BUỔI 2) - TIẾNG ANH 8 GLOBAL SUCCESS (2 CỘT) N...
Nguyen Thanh Tu Collection
 

Recently uploaded (20)

How to Split Bills in the Odoo 17 POS Module
How to Split Bills in the Odoo 17 POS ModuleHow to Split Bills in the Odoo 17 POS Module
How to Split Bills in the Odoo 17 POS Module
 
The geography of Taylor Swift - some ideas
The geography of Taylor Swift - some ideasThe geography of Taylor Swift - some ideas
The geography of Taylor Swift - some ideas
 
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
 
Palestine last event orientationfvgnh .pptx
Palestine last event orientationfvgnh .pptxPalestine last event orientationfvgnh .pptx
Palestine last event orientationfvgnh .pptx
 
PART A. Introduction to Costumer Service
PART A. Introduction to Costumer ServicePART A. Introduction to Costumer Service
PART A. Introduction to Costumer Service
 
The approach at University of Liverpool.pptx
The approach at University of Liverpool.pptxThe approach at University of Liverpool.pptx
The approach at University of Liverpool.pptx
 
Cambridge International AS A Level Biology Coursebook - EBook (MaryFosbery J...
Cambridge International AS  A Level Biology Coursebook - EBook (MaryFosbery J...Cambridge International AS  A Level Biology Coursebook - EBook (MaryFosbery J...
Cambridge International AS A Level Biology Coursebook - EBook (MaryFosbery J...
 
Phrasal Verbs.XXXXXXXXXXXXXXXXXXXXXXXXXX
Phrasal Verbs.XXXXXXXXXXXXXXXXXXXXXXXXXXPhrasal Verbs.XXXXXXXXXXXXXXXXXXXXXXXXXX
Phrasal Verbs.XXXXXXXXXXXXXXXXXXXXXXXXXX
 
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
 
The Challenger.pdf DNHS Official Publication
The Challenger.pdf DNHS Official PublicationThe Challenger.pdf DNHS Official Publication
The Challenger.pdf DNHS Official Publication
 
Introduction to Quality Improvement Essentials
Introduction to Quality Improvement EssentialsIntroduction to Quality Improvement Essentials
Introduction to Quality Improvement Essentials
 
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
 
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
 
How libraries can support authors with open access requirements for UKRI fund...
How libraries can support authors with open access requirements for UKRI fund...How libraries can support authors with open access requirements for UKRI fund...
How libraries can support authors with open access requirements for UKRI fund...
 
How to Create Map Views in the Odoo 17 ERP
How to Create Map Views in the Odoo 17 ERPHow to Create Map Views in the Odoo 17 ERP
How to Create Map Views in the Odoo 17 ERP
 
Chapter 3 - Islamic Banking Products and Services.pptx
Chapter 3 - Islamic Banking Products and Services.pptxChapter 3 - Islamic Banking Products and Services.pptx
Chapter 3 - Islamic Banking Products and Services.pptx
 
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
 
Students, digital devices and success - Andreas Schleicher - 27 May 2024..pptx
Students, digital devices and success - Andreas Schleicher - 27 May 2024..pptxStudents, digital devices and success - Andreas Schleicher - 27 May 2024..pptx
Students, digital devices and success - Andreas Schleicher - 27 May 2024..pptx
 
GIÁO ÁN DẠY THÊM (KẾ HOẠCH BÀI BUỔI 2) - TIẾNG ANH 8 GLOBAL SUCCESS (2 CỘT) N...
GIÁO ÁN DẠY THÊM (KẾ HOẠCH BÀI BUỔI 2) - TIẾNG ANH 8 GLOBAL SUCCESS (2 CỘT) N...GIÁO ÁN DẠY THÊM (KẾ HOẠCH BÀI BUỔI 2) - TIẾNG ANH 8 GLOBAL SUCCESS (2 CỘT) N...
GIÁO ÁN DẠY THÊM (KẾ HOẠCH BÀI BUỔI 2) - TIẾNG ANH 8 GLOBAL SUCCESS (2 CỘT) N...
 

Software Maintenance

  • 1. S O F T W A R E M A I N T E N A N C E By- Ameer Hasan Malik Payal Singhal ameerhasan.nift@gmail.com 1 Software Maintenance
  • 2. S O F T W A R E M A I N T E N A N C E Introduction  Software maintenance is the modification of a software product after delivery to correct faults, to improve performance or other attributes.  A common perception of maintenance is that it merely involves fixing defects.  Software maintenance is the general process of changing a system after it has been delivered. 2 Software Maintenance
  • 3. S O F T W A R E M A I N T E N A N C E Reasons for maintaining software  Over a period of time software’s original requirement may change to reflect the customer’s needs.  Errors undetected during software development may be found during use and require correction.  With time new technologies are introduced such as new hardware, operating system etc. 3 Software Maintenance
  • 4. S O F T W A R E M A I N T E N A N C E 4 Cost distribution of SDLC Software Maintenance
  • 5. S O F T W A R E M A I N T E N A N C E Software Maintenance Problems  Most computer programs are difficult and expensive to maintain.  Software changes are poorly designed and implemented.  The repair and enhancement of software often injects new bugs that must later be repaired.  Changes are often not documented.  Changes often cause new faults in the system. 5 Software Maintenance
  • 6. S O F T W A R E M A I N T E N A N C E Types of software maintenance 1. Corrective maintenance 2. Adaptive maintenance 3. Perfective maintenance 4. Preventive maintenance Software Maintenance 6 Bug Fixing Porting & Migration Enhancements & scalability Documentation Enhancements
  • 7. S O F T W A R E M A I N T E N A N C E 1. Corrective Maintenance  Taking existing code and correcting a fault that causes the code to behave in some way that deviates from its documented requirements.  Focuses on bug fixing and reporting errors fixing.  i.e. defects generally need to be corrected either immediately or in the near future.  Fixing a fault has 20 to 50 % chances of introducing another fault. 7 Software Maintenance
  • 8. S O F T W A R E M A I N T E N A N C E 2. Adaptive Maintenance  Taking existing code and adapting it to provide new features and functionality. These are typically part of a new release of the code and part of a larger development effort.  Making changes in existing software to accommodate a changing environment  includes all work related to how the software functions.  i.e. relates to enhancing software functionality. 8 Software Maintenance
  • 9. S O F T W A R E M A I N T E N A N C E 3. Perfective Maintenance  Implementing new or changed user requirements which concern functional enhancements to the software.  These are typically made to improve the maintainability of the code such as restructuring it to make it more easily understood or to remove ambiguities.  includes all efforts to improve the quality of the software.  Includes improving reliability or efficiency. 9 Software Maintenance
  • 10. S O F T W A R E M A I N T E N A N C E 4. Preventive Maintenance  Includes anticipating future problems and to improve the maintainability using techniques like documenting, commenting or even re-implementing some part of documenting.  More commonly known as Software Re-engineering.  Old system starts as a specification for new system.  increasing the system’s maintainability. 10 Software Maintenance
  • 11. S O F T W A R E M A I N T E N A N C E 11 Cost of software maintenance Software Maintenance
  • 12. S O F T W A R E M A I N T E N A N C E 12 Software Maintenance models Software Maintenance Quick-fix model Iterative Enhancement model Full-reuse model Boehm’s Model Taute’s model
  • 13. S O F T W A R E M A I N T E N A N C E 1. Quick-fix Model  This is basically an adhoc approach to maintaining software. It is a fire fighting approach, waiting for the problem to occur and then trying to fix it as quickly as possible.  Changes are made at code level as early as possible without anticipating future problems.  As a result, the structure of software degrade rapidly.  Not suitable for large software systems. 13 Software Maintenance
  • 14. S O F T W A R E M A I N T E N A N C E 2. Iterative Enhancement Model  Incorporates changes in the software based on the analysis of the existing system.  Assumes complete documentation of software is available in beginning.  Attemps to control complexity and tries to maintain good design.  The document of each software life cycle phase i.e SRS, design document, testing document etc. are also modified. 14 Software Maintenance
  • 15. S O F T W A R E M A I N T E N A N C E 15 2. Iterative Enhancement Model(cont.) Characterize version Redesign current and proposed Implementation modifications Software Maintenance
  • 16. S O F T W A R E M A I N T E N A N C E 3. Full-reuse Model  Based on reuse of existing software components.  The reuse model has four main steps: 1. Identification of the parts of the old system that are  Need mature reuse culture. 16 Software Maintenance candidates for reuse. 2. Understanding these system parts. 3. Modification of the old system parts appropriate to the new requirements. 4. Integration of the modified parts into the new system.
  • 17. S O F T W A R E M A I N T E N A N C E 17 3. Full-reuse Model(cont.) New system Components library Requirements analysis Design Source code Test data Old system Requirements analysis Design Source code Test data Software Maintenance
  • 18. S O F T W A R E M A I N T E N A N C E 4. Boehm’s Model • Boehm proposed a model for the maintenance process based upon the economic models and principles. • Boehm represent the maintenance process as a closed loop cycle. • Changes are proposed first. • Then changes are made. 18 Proposed changes Approved changes Software Maintenance Management decisions Change implementation Evaluation New version of software Results
  • 19. S O F T W A R E M A I N T E N A N C E 5. Taute Maintenance Model • It is a typical maintenance model and has eight phases in cycle fashion. 19 Software Maintenance 1. Change request phase 2. Estimate phase 3. Schedule phase 4. Programming phase 5. Test phase 6. Documentation phase 7. Release phase 8. Operation phase
  • 20. S O F T W A R E M A I N T E N A N C E 20 5. Taute Maintenance Model(cont.) Software Maintenance
  • 21. S O F T W A R E M A I N T E N A N C E THANK YOU 21 Software Maintenance