We’ve all heard the hype: cloud services have the potential to fundamentally change the way your organization does business. Vendors set lofty goals by claiming that your applications can seamlessly take advantage of a myriad of cloud benefits:
- workload distribution
- resource scaling
- dynamic scalability
- elastic resource capacity
- infrastructure as code
- elastic disk provisioning
- redundant storage
- platform as a service
It’s true that a cloud environment could provide these benefits … if your applications are designed and built to take advantage of them. One of the most challenging and least understood areas of cloud is how to (re)design your application to work well in a platform-as-a-service (PaaS) environment.
“The rush to take advantage of the economies offered by cloud platforms often ignores the reality that the applications you have developed are not designed to run in the cloud. Organizations need to consider each application as a unique case that may or may not be capable, ready, or even worth moving.”Info-Tech Research Group
Before you migrate to PaaS, know your applications
No matter what the vendors tell you, moving to the cloud is never free. Designing an application to fully take advantage of PaaS is no small task. You must look beyond infrastructure and operations risks when you evaluate an application’s fit for a PaaS environment. An infrastructure-driven cloud strategy often overlooks application-specific complexities, including integration needs. Ensure your cloud strategy includes an application portfolio assessment so you can determine the business value gained by migrating the application(s) to cloud.
A global financial service provider decided to replace several aging work management applications.
T4S Partners demonstrated how a cloud-native PaaS application could meet several key business needs:
- High-quality user experience for a workforce distributed across 160 countries
- Consistent view of information as it is updated around the clock by users from each country
- Ability to dynamically scale resources up during “busy” seasons and down again afterwards
- Ability to distribute workloads to support country or client data residency requirements
Assessing the business value of cloud was critical to gain executive support for development
Migrating an application to the cloud requires that you understand the application. Migrating to PaaS requires your development team be able to control and make changes to the underlying design and architecture of that application. They need full access to source code, build scripts, environment configuration details, and deployment processes. You need experts who understand the application’s technical design, including process and data flows. You must also understand the application’s dependencies on other applications, services, or data stores. Migrating an application to the cloud will require decoupling dependencies or migrating tightly coupled services along with the application itself. If you are migrating a business application currently in use, you must consider the requirements of maintaining business continuity during application migration.
Cloud migration is often expected to drive down costs, but a poorly implemented migration will result in low (or even negative) value. Poor design and architecture will result in diminished application performance or overpaying for cloud services if the application is not right-sized and expressly designed to operate in the cloud.