In part one, we looked at the common lift and shift method - Re-host and Re-locate - the equivalent option for those running their on-premises IT on VMware. Taking the time to adjust your applications when you move them - by Re-platforming or Re-factoring - can realize significant benefits for your organization.
A cloud strategy is essential because it will help inform your decision-making from day one. Consider:
What skills are available in-house? Will you need to upskill or retrain your IT team, create new roles, or partner with a managed service provider?
A critical but often overlooked factor of cloud migration is connectivity; don’t leave it until later.
Understand the division of roles and responsibilities between you and the cloud provider in the event of a failure and how they will manage communications.
The regulations that apply to your sector will dictate your cloud model to some extent, and whether a private, public, hybrid, or multi-cloud model strategy is right for you.
The cloud offers access to security technologies through economies of scale that could be prohibitively expensive if deployed in-house. A security posture plan will protect your assets.
Re-platforming is when you move your application to the cloud but change or update specific parts of it to take advantage of readymade services offered by your cloud provider. Re-platforming makes the application more cloud-enabled rather than completely cloud-native.
This cloud migration option means you can take advantage of several benefits of the cloud, like cost and performance improvements, but without the risk, complexity, and expense of a radical change.
Sometimes referred to as ‘lift-tinker-and-shift,’ Re-platforming entails a few cloud optimizations without changing the core architecture of the application. For example, you may want to reduce the amount of time you spend managing database instances, so you move to a database-as-a-service offering like the Amazon Relational Database Service (Amazon RDS).
Pros
Cons
Re-factoring – also termed rearchitecting, is rebuilding the functionality you want within available cloud services. Or at least changing significant portions of your app’s codebase so that it fits your new cloud environment.
Typically, Re-factoring is driven by a business case for new features, performance improvements, or scalability that would be difficult to achieve in the application’s current environment. You may also want to improve agility or business continuity by moving to a service-oriented architecture.
Re-factoring makes sense for long-term projects when you are willing to wait to realize the advantages and that the return will justify your investment in time and budget. Re-factoring is also a wise choice for major retools, where you want to add multiple new components to an application at once rather than piecemeal.
This approach realizes the most value from the cloud, as you are choosing the best and most appropriate services for your users’ needs without compromise.
Pros
Cons
Summing up
Re-platforming and Re-factoring are more costly than Re-hosting, or ‘lift and shift, but offer many more benefits in the long run. It can take a long time to re-factor applications, so consider tackling the activities which can release the most significant business advantages in your cloud-first world.
There is more risk involved, so consider an iterative approach, like starting with Re-hosting and Re-factoring later or using a sprint project management approach with a minimum viable outcome that you can continue to refine.