Program Maintenance

Introduction

Why do we need maintenance?

Once a software system has been deployed it is easy to think that the system is finished, but most systems need ongoing maintenance to keep them fit for purpose.

  • Previously unknown bugs in the software may need to be fixed.
  • New security threats will emerge that system will need to be hardened against
  • The company may have competitors that have created similar system and so the company may need to keep a competitive advantage
  • The real world environment may change and the system may need to change to the requirements.

 

Perfective Maintenance

Perfective Maintenance

This form of maintenance involves:

Refinement of existing features or functions, such as GUI design, database optimization or code efficiency improvements.

 

 

Adaptive Maintenance

Adaptive Maintenance

Addition a extra features or re-purposing of existing features to adapt to changing user requirements. A common requirement for new or dynamic industries.

 

 

Corrective Maintenance

Corrective Maintenance

This maintenance is mainly reactive in its nature and focuses on:

  • Bug Fixes
  • Security Patching