microsoft-azuresharepoint office-365 net-mvc android

project microsoft-identity-manager dynamics-crm power-bi html-bootstrap-apple

For most product owners, the day their product is actually released into the market is the end of product development activity. But the fact is that product release isn’t the end; it’s usually the start of a long maintenance and upgrade cycle.

Once a product is out in the market, owners need to begin thinking how to incorporate the feedback that they have received into the next version of the product, to improve usability, user-friendliness, features and overall value.


Software product maintenance & support activities can be broadly classified into

  • Corrective maintenance- reactive modification to correct discovered problems.
  • Adaptive maintenance- modification to keep it usable in a changed or changing environment.
  • Perfective maintenance- improves performance or maintainability.
  • Preventive maintenance- modification to detect and correct latent faults.

A significant investment needs to be made to maintain multiple versions of an old code-base, many times on legacy technology platform to support existing clients until they can be persuaded to migrate to newer versions of the product.

Ecotech carefully outlines service level agreements (SLAs) requirements, customizing our maintenance process for unique client needs. We bring to each project a strong methodology for application maintenance, based on customized application maintenance and support methodology and Ecotech’s own proprietary Quality Management System (QMS) which is in line with the ISO strategy.

Considering its client requirements and inherent challenges in software product maintenance, Ecotech has devised innovative software product maintenance process model which focuses on

  • Process implementation
  • Development of maintenance plans and procedures
  • Establishing procedures for modification requests
  • Implementing the CM (configuration management) process
  • Problem and modification tasks
  • Initial analysis
  • Problem verification
  • Developing options for implementing the modification
  • Documenting the results
  • Obtaining approval for modification option
  • Modification implementation task
  • Performing detailed analysis
  • Development, coding, and test of modification requests
  • Maintenance review/ Acceptance tasks
  • Conduct reviews
  • Obtain approval for modification
  • Migration tasks
  • Development of migration plan
  • Notify users of migration plan
  • Conduct parallel operations
  • Notify user that migration has started
  • Conduct post-operation review
  • Ensure that old data is accessible
  • Software retirement tasks
  • Develop a retirement plan
  • Notify users of retirement plan
  • Conduct parallel operations
  • Notify user that retirement has started
  • Ensure that old data is accessible