Putting applications in the cloud offers the promise of reduced costs, flexibility, accessibility, not to mention the possibility to dramatically improve the way your IT works. But to reap all these benefits, you need to make the correct decisions when defining your cloud strategy - especially when it comes to your choice of development platform.
And if you deal with custom enterprise applications, more likely than not you'll have to choose a cloudy-ready platform to develop, build, test, and deploy them.
7 Things to Take Into Account Before Picking a Cloud-Ready Platform
Avoid Lock-In: Code and Data
Your code and data are part of your competitive advantage. You must own them. Make sure that, if the need arises, you can smoothly and safely transfer your code and data away from your cloud provider with minimal business interruption.
Easy to Move Between On-Premise and Cloud
What's departmental and on-premise today, may need to be global tomorrow. What's currently published on the cloud may become regulated and required to move on-premise the day after. Having the flexibility to easily move back and forth between the cloud and on-premise is a big plus.
Easy to Scale Horizontally
One of the big advantages of the cloud is that it allows you to grow your data-center as you need. The platform you use needs to be able to take advantage of this flexibility.
Lifecycle Support: Ready for Fast Change
It's not just about running applications in the cloud; your choice of platform needs to support the full lifecycle. You need to be able to develop, test, and change your application really fast.
Easy, Fast and Safe to Deploy
This is part of the lifecycle, but it's important enough to have it's own bullet! In order for you to be as fast as your business demands, you need to be able to deploy your app quickly and often. And you need to know that, should something go wrong, you can quickly revert back to a previous instance.
Easy to Integrate
Integration will always be a big part of custom application development. You need to make sure the platform you pick integrates easily with your apps running on premise, with your cloud apps, or with off-the-shelf packages.
One of the biggest concerns around the cloud-computing is security. Pick a development platform that seamlessly handles this issue for you. This is important not only at time of deployment but also from the application execution perspective. If your platform handles this for you, you will save you a lot of time and headaches in the future.
What would you add to this list? What are your main concerns, and what do you look for when thinking about your cloud strategy?