Home » Core Java » Software Maintenance

Software Maintenance

The modification of a software product after delivery to correct faults or fix issues, to improve performance or to add additional features/attributes is called software maintenance. It is not only about fixing issues. It is also about adding new features. The changes for software maintenance involve simpler changes to fixing coding issues. Maintenance means evolution as gradually software keeps evolving as when more features are added or bugs are fixed.

Types of Software Maintenance

There are three types of software maintenance:

I.Corrective maintenance:

In this type of maintenance, issues reported from the software after delivery is fixed. Now, issues could be reported due to the following:
• Requirement Not met i.e. functionality is not as expected.
• Design errors
• Coding errors



II.Adaptive maintenance:

In this type of maintenance, software is changed to adapt to new environment. This change could be due to change in hardware platform or different operation system. The functionality of software does not change much.

III.Perfective maintenance:

In this type of software maintenance, new features or additional requirements are added into software. It generally happens when the product grows and additional features become necessary.