Platform as a Service promises freedom from lock-in to costly infrastructures and middleware. But does it really free companies from reliance on one class of solution?
Platform as a Service essentially provides a data center on demand, with servers, storage, and middleware all hosted by a provider. But you don't want to hard-wire your requirements into a single vendor. Lori MacVittie observes that vendors are making moves to better ensure interoperability between cloud computing providers, but questions whether it's enough. She says that while the emphasis has been on portability achieved between service providers, there may not be enough mobility. And this difference is important:
"[Portability] implies the ability to migrate from one environment to another without modification while [mobility] allows for cross-platform (or in this case, cross-cloud) deployment. Mobility should require no recompilation, no retargeting of the application itself while portability may, in fact, require both."
The mobility of an application deployed atop a PaaS is exceedingly limited, Lori says, first because "you are necessarily targeting a specific platform for applications: .NET, Java, PHP, Python, Ruby." The second limiting factor with PaaS "is the use of proprietary platform services such as those offered for data, queuing and e-mail. image."
What happens, then, is customers are locked into cloud platform service providers.
The issues Lori raises have been the same issues the service-oriented world has been struggling with all along -- that is, companies rely heavily or exclusively on a particular vendor environment, thereby limiting interoperability between silos, be they across the enterprise or between enterprises. She notes that this has been the case with companies becoming Microsoft .NET shops, Java shops, or WebSphere shops.