Traditionally, cloud has been positioned as a cost-effective method of hosting applications. While this mindset has led to some positive cloud migration cases and effective cloud-native application development, the opportunities go much further for ambitious businesses wanting to make the most of the move to the cloud. A cloud-initiated transformation within a business can be the mechanism for providing consistent customer experiences on a global scale.
What has often held companies back with cloud initiatives is a conservative approach to controlling data. But after more than a decade of lessons and established success the questions have shifted from “why move to the cloud?” to “how do I make the move successfully?”
Is the cloud worthwhile for me?
It depends on what you’re trying to do. Are your applications making use of cloud-specific features that enable capabilities and efficiencies, such as dynamic resource allocation? If so the cloud is probably cheaper. Are you simply lifting-and-shifting your existing data centre applications and leaving them unchanged in the cloud? Then cloud will probably be more expensive.
Cloud is secure and GDPR compliant
Security is the other big consideration, especially in the GDPR era. Cloud providers invest heavily in security because it’s critical to their business. They have high-end security teams and provide a wide variety of tooling services themselves or via partners to help build security into applications. No matter whether an application is hosted on-premise or in the cloud, it is still up to every software team to build the application so that it makes correct use of security systems.
This goes to the core of what GDPR does. It imposes restrictions on companies with respect to the way they manage their data. That is true whether they are using cloud services or maintain systems in house. Cloud neither solves your security needs nor makes them more intractable, but it does give you a framework for providing secure applications and infrastructure.
Getting the migration right
Once a company has made the decision to move to the cloud, they often start with lofty expectations. A ‘blame game’ mentality then arises as problems inevitably occur and there is pressure on the IT team to declare victory before the work is complete.
How can a software team fulfil its promises to stakeholders? Doing cloud migrations right means taking the correct steps during planning, the migration itself and subsequent follow-up to ensure everything is going to plan. Central to this is instrumenting applications early in the process, enabling problems to be found quickly and providing a clearer understanding of what is going on with your application during all phases of the migration.
In the planning phase you need to determine the important metrics that will help you monitor the process. These Key Performance Indicators (KPIs) will be important in tracking the success of your migration. Additionally, you need to create a resource inventory and establish their dependencies to understand how your app components work together and determine the performance expectations of each component.
Having this level of visibility into an application will help determine which resources are in scope for migration and provide a reasonable order for migrating them. During the migration this will also enable you to understand if the cloud resources are actually improving the operational capabilities of the application. Through rigorous acceptance testing you can prove the goals were met, and iterate until they are.
Accelerating in the cloud
Proving results is critical to generating confidence in your efforts because cloud-based infrastructure is to some extent out of your control. Understanding the impact that moving to the cloud has had on applications and customer experience is essential before moving on to take advantage of the more advanced capabilities that cloud providers offer.
New cloud services offer interesting opportunities to innovate and scale, but the performance impacts – positive or negative – must be understood first. Going ‘all-in’ on a new service without first providing instrumentation runs the risk of being left with an application that’s running on a sub-par infrastructure. Many of the more innovative cloud-based services are early in the maturity cycle and it can be difficult to evaluate their true benefits – or otherwise – unless you have visibility into how the technology is impacting your application.
Moving to the cloud offers up many new opportunities for businesses that are willing to experiment. While challenges and opportunities vary across sectors, all businesses must now keep customer experience at the centre of their decisions and respond with greater flexibility to ever-changing expectations. Cloud offers this path to both venerable institutions and entrepreneurial startups, but it’s vital to keep track of whether expectations are being met.This article, originally written by me, was first printed in Computing (UK) on Jun 13, 2018.