Cloud services have the potential to reduce IT costs, increase operating efficiencies and create new types of business opportunties. As in on-premises software, cloud services will be offered using a technology stack: a cloud applications layer that runs on an underlying cloud platform layer, which in turn runs on hardware platforms. Cloud platforms will facilitate adoption of cloud services because they support the development, testing, deployment and provisioning of cloud applications that customers will rely on to run their businesses.
Customers considering moving important IT resources to the cloud will demand the same level of performance,reliability, security and privacy that they demand of their on-premises software. We should expect, as well, that in an increasingly-connected world new scenarios will continually arise that require good interoperability among cloud services. Well-designed cloud platforms can help to achieve all of these goals.
Decisions about how best to enable interoperability should be centered on the needs of customers and partners—those who depend on cloud platforms. In building its cloud platform, Microsoft has worked closely with customers and partners to understand their needs for interoperable solutions. Through this process, four key customer questions have emerged. These questions are likely relevant to any cloud platform that seeks to serve as a platform for running a range of cloud services. The questions, and how Microsoft is striving to address them, follow.
Data Portability
When customers create data in an on-premises application, they have a high level of confidence that they have control over the data stored in the on-premises environment. Customers should have a comparable level of control over their data when they are using cloud platforms.
Standards
In some cases, existing standards will not be a perfect fit for the cloud. Well-established standards that were developed for the guaranteed connectivity and relatively close connections of a datacenter may not work well over the public Internet and across the globe. In addition, cloud computing introduces new scenarios for management, monitoring, access and identity that are only partially addressed by existing standards. New cloud platform interfaces to support these scenarios should be built upon Web Services and REST-based approaches (which are themselves industry standards) that can be easily discovered and consumed by other platforms.
Ease of Migration & Deployment
Customers that have existing investments in on-premises computing capacity typically will want those investments to co-exist with the Cloud and may choose to migrate some or all of their computing needs at their own pace.
On-premises software enables customers with particular requirements relating to geo-location of their data, security or service level agreements to determine that their preferred cloud platform would best meet their needs if it were deployed by a third party (such as a local hoster), or deployed internally.
Cloud platforms should address this need by providing tools and services to ease migration, including support for virtual machine portability for cloud platforms that provide "infrastructure as a service" services. Further, cloud platforms should support appropriate and commonly used infrastructure services including identity and management. In the case of identity services, cloud platforms should promote federation between identity systems (e.g., Active Directory and LDAP) using web standards whenever possible.
Developer Choice
Cloud platforms that enable multiple programming languages, runtimes and access to cloud resources through Web services will facilitate the development of interoperable customer solutions. This approach will also broaden the community of developers that write for a given cloud platform and therefore enhance the quality of services that the platform will offer to customers.
Engaging in the Conversation
Ultimately, what really matters is understanding what customer and partner scenarios will benefit from interoperability, and how best to meet those needs without compromising the performance, reliability, privacy, security and control customers have come to expect from business software. As a result of our discussions with customers and the community at large, we’ve identified these interoperability elements of a cloud platform that we’d like to generate a broader conversation around over the coming weeks. We’d love to have your input:http://blogs.msdn.com/b/interoperability/