Its Primary goal is to modify and update software applications after
delivery, to correct errors and improve performance
Software Maintenance includes:
Enhancement of capabilities
Deletion of obsolete capabilities
Note: Any work done to change the software after it is in operation is
considered to be maintenance work.
5. TYPES OF MAINTENANCE
Maintenance can be divided into the following:
6. CORRECTIVE MAINTENANCE
Correct software maintenance addresses the errors and faults within software
applications that could impact various parts of your software, including the design, logic,
These corrections usually come from bug reports that were created by users or
customers – but corrective software maintenance can help to spot them before your
customers do, which can help your brand’s reputation.
7. ADAPTIVE MAINTENANCE
Modifying the software to match changes in ever changing environment.
Modification of a software product performed after delivery to keep a software product
usable in a changed or changing environment. Perfective maintenance: Modification of
a software product after delivery to improve performance or maintainability.
The platform in which your software operates is changing (due to technology, laws,
policies, rules, operating system, etc.)
Your customers need the product to interface with new hardware or software.
8. PERFECTIVE MAINTENANCE
• It involves making enhancements in software functionality by implementing new or
changed user requirements (even when the changes are not considered a defect, error
• It is often, but not always, initiated by customer feedback.
• It accounts for 50% of all the maintenance activities.
9. PREVENTIVE MAINTENANCE
Making or updating the software easier to understand which helps us in future
Updating the documentation: Updating the document according to the current state of the
Optimizing the code: Modifying the code for faster execution of programs or making efficient
use of storage space.
Reconstructing the code: Transforming the structure of the program by reducing the source
code, making it easily understandable.