For more than a decade, the loudest buzz has been about the advantages of software “born in the cloud.” It’s understandable. Cloud software is easy to access – even remotely from mobile devices. It’s flexible and scalable, reducing risk for industries that are experiencing rapid disruption. And it can be less costly for customers – cloud applications offered via the Software as a Service (SaaS) model minimize upfront costs and instead allow users to pay a monthly fee. Additionally, the vendor takes the burden for security patches and updates, which means the user needs less in-house IT support.
But are the advantages of cloud applications enough to justify a move to the cloud for an on-premises system?
Cloud Migration Pros and Cons
According to Scott Drossos, President of the Infiniti Consulting Group, an InterVision company, there are definite pros and cons to consider. “Sometimes legacy applications aren’t great candidates to move to the cloud without re-architecting, refactoring and/or replatforming, and more development means more cost,” he explains. “You may decide that its best to start with a clean slate, but it can be hard to let go of the investment you’ve made in IP and code work.”
The decision to migrate an application to the cloud necessitates taking a hard look at the financial side of the project. Drossos says developers need to carefully consider whether they can sell the new migrated version and recapture the investment they need to make in it. He comments, however, it’s not just a simple math problem — even though moving to the cloud may generate new income. “Customers really want to be able to use the data an application collects. It’s crucial,” he says. “In a cloud environment, you can leverage data in ways that you can’t in-house. Cloud architecture functionality allows you to affordably incorporate massive compute functionality so you can run millions of records through complex algorithms – when you need data analytics, spin it up for just the duration required, and when you’re done, turn-off the architecture, but save the image for the next time around. ”
“If you can’t deliver in the cloud and leverage native cloud services, you’ll likely find that you’re getting painted into a smaller and smaller corner,” he says.
Another advantage for ISVs and software developers is getting your application into a cloud marketplace which can connect you with millions of potential points of interest.
Drossos adds that another decision you’d need to make when moving to the cloud is deciding where to move to. Choosing a public cloud may have the downside of locking you into a specific platform so increasingly software developers are writing their applications to run in multicloud environments.
Before a Cloud Migration, Prepare to Navigate Around Pitfalls
If you’ve come to the conclusion that migrating development and applications to the cloud is the best strategy for your business, Drossos recommends you consider the “seven deadly sins of cloud migration” that you — or any business — must avoid.
- No clearly defined strategy: Businesses can get excited about capitalizing on cloud’s capabilities, but oversimplify what it takes to move there. It’s more than just moving to another data center. Carefully plan steps from pre-migration to planning to migration.
- Not matching the process to the type of migration: Drossos says there are four basic types of cloud migration:
- Rehosting, or “lift and shift,” moves existing servers to a virtual environment.
- Replatforming involves changing the OS or database engine and requires little to no code changes.
- Rearchitecting replaces the application with an SaaS product and eliminating dependency on hardware or proprietary platforms.
- Refactoring involves changing middleware, recoding and using cloud’s native features for performance and scalability.
Choosing the best strategy — or strategies — during the planning process is imperative for the most effective and successful migration. Drossos says it’s tempting to try to move to the cloud quickly and optimize after the migration, and it can be hard to have the patience to proceed carefully, especially when managers see the new cloud cost and are looking for the associated cloud benefits. In the long run, working systematically is the best route to take. “Be pragmatic. Make sure it works,” Drossos comments.
- No prioritization: It’s vital to know which features and data sets have priority and the order in which to move specific assets.
- Overlooking security: Make sure that during a cloud migration that cybercriminals can’t find and exploit a vulnerability.
- Trusting the wrong resources: Your team may have years of experience in their fields, but that doesn’t mean they’re experts at optimizing applications in the cloud. Find and partner with experts in cloud migration.
- Playing fast and loose with DR: Make sure all backups are current before cloud migration and respect recovery time objectives (RTOs) and recovery point objectives (RPOs) for each application or component.
- Ignoring interdependencies: Drossos says applications tend to take on a life of their own and it’s easy to forget how one is dependent or shares data with another. Make sure the move of one part of your development environment won’t break something somewhere else.
The cloud migration process may require significant time and near-superhuman attention to detail. But if your ultimate goal is to provide your clients with all of your application’s current features plus the advantages of cloud delivery, the investment you make can pay off in continued loyalty from data-hungry users and new sales from an expanded market. Is your business ready to make the journey?