You have a portfolio of applications, and you receive the request of modernize it.
You do an analysis of the situation and then you have to decide what to do with each one of the assets you have.
The industry has developed a nomenclature to enable common understanding of what you can do. Here some of these actions you can perform to transform each one of your assets:
- Retain: take no action on the application. Sometimes there is not value or it is not the right moment to modernize.
- Re-host: move from one environment to other. It could be that you want to move to an infrastructure could or to other data center… (typically known as lift & shift).
- Convert: you keep the same functionality but change the platform where it is implemented or the language code. For instance there are so much companies unifying the platforms in one direction, so they can save some dollars on OPEX, and only need expertise on a platform.
- Refactor: You alter the application design while you keep the functionality. For instance I’m upgrading from joomla 2.5 to joomla 3.x to enable new design.
- Revise: you refactor the application and develop new business capabilities.
- Rebuild: review the applications business requirements, align them with the new needs (it can be an increase or decrease of processes), finally develop the application from scratch.
- Service enable: with this action, you expose the business capabilities or processes externally through services.
- Consolidate: Merge multiple applications to small amounts of units.
- Upgrade: typically used for COTS.
- Replace: you will find so many customized solutions that really can be replaced by a COTS that implement processes in a more standard manner.
- Retire: you do not need it, remove it!