The four types of software maintenance
Corrective maintenance fixes defects reported by users or detected by monitoring. It is what most people think of as support, but in a healthy application it should be only part of the work. A high volume of corrective tickets usually signals deeper problems, such as missing tests or fragile architecture, that deserve attention.
Adaptive maintenance keeps software working as its environment changes. Operating systems, browsers, frameworks, third-party APIs, payment gateways and app store policies all change regularly. Without adaptive work, applications gradually break or become insecure even if nobody touches the business features at all.
Perfective maintenance improves the application based on user feedback: small enhancements, usability tweaks, new reports or faster performance. These changes keep software aligned with how the business works today rather than how it worked when the system was first built several years ago.
Preventive maintenance reduces future problems through refactoring, dependency upgrades, better monitoring and documentation. It is easy to postpone because users do not see it directly, yet it is what keeps maintenance costs stable over many years instead of rising steadily.


