Today's announcement that Microsoft and Intuit are to marry up their cloud platforms with a software development kit makes perfect sense to me. Some of my ZDNet colleagues have been less impressed — Dennis Howlett calls it more PaaS to put in your aaS environment while Mary Jo Foley says it's to shore up Redmond's small-business cloud play. I don't argue with either of those viewpoints (TechMeme has more) but I think there's a lot more to it. To understand why, we need to delve under the covers of a cloud platform.
Last year, I started a long-term project to develop a framework for evaluating cloud platforms (disclosure: Intuit funded some of the initial work, which was published as an analyst report in October, Redefining software platforms, but it's progressed independently since then). It's timely today to discuss some of the core principles and what they tell us about the marriage brokered between Windows Azure and the Intuit Partner Platform.
Cloud platforms share many of the ingredients of conventional software platforms, but they add several crucial new ingredients. One thing that hasn't changed is the need to build momentum among developers and customers for the platform. Intuit and Microsoft have plenty of both, which guarantees attention for what they've announced today. But the tie-up between these two giants is important too for the light it shines on the special characteristics of cloud platforms and how they change the game in so many ways for ISVs, developers and platform vendors.
Whatever its market reach, any platform stands or falls on its native capabilities. For a conventional software platform, those capabilities are really all about the functional scope of the development platform — what it empowers developers to create on the platform. Where cloud platforms differ crucially from conventional software platforms is that their native capabilities have to extend into three additional, distinct elements beyond the core functional scope. This is mapped out in the diagram alongside.
On the horizontal axis, the breadth of infrastructure extends beyond the development functionality to embrace the entirely new element of service delivery capabilities. This is a platform's support for all the components that go with the as-a-service business model, including provisioning, pay-as-you-go pricing and billing, service level monitoring and so on. Conventional software platforms have no conception of these types of capability but they're absolutely fundamental to delivering cloud services and SaaS applications.
With Microsoft's heritage so firmly rooted in conventional platforms, Windows Azure has huge functional scope, but it has very limited service delivery capabilities. It sits firmly on the left-hand side of the diagram. In contrast, Intuit's strengths lie more to the right-hand side. It has gone out of its way to build sophisticated service delivery capabilities into its Partner Platform — to the extent that developers can choose to continue hosting their applications on the functional platform of their choice, and just use IPP's service delivery and go-to-market capabilities. This is precisely the configuration that the Azure SDK supports (with the option of linking into IPP's data services too, which is especially useful for integrating to existing data the customer holds in Intuit packages such as QuickBooks).
To put it another way, the link-up combines Microsoft's strengths in developer tools and functional scope with Intuit's advanced skills and investment in service delivery on IPP.
The icing on the wedding cake of this marriage made in the cloud is the promise of Microsoft Online Services adding its BPOS offering into Intuit's App Center. This places a very appealing milestone on the roadmap that encourages developers to start building to the Azure-Intuit platform in the knowledge that, by the end of the year, they'll be able to connect in a range of email and collaboration capabilities based on Microsoft's familiar, market-accepted application suite. It's also an illustration of the sort of capability that comes in on the upper layer of the diagram, against the vertical axis of platform bandwidth. I'll talk about these in more detail in a future post, because I'm just about out of time and space here, but suffice to say that the ability to connect into other services like BPOS is an example of what is meant by 'cloud reach'.