October 29, 2008, 10:09 AM — While much will be said about Microsoft's cloud-computing strategy introduced Monday, at the heart of Windows Azure is a fairly simple goal: inspire corporate developers to rethink the way they develop software so applications can take better advantage of the Web.
Microsoft is trying to differentiate its Azure cloud-based development environment, unveiled in a keynote at the Microsoft Professional Developers Conference in Los Angeles, from competitive offerings like Amazon's Elastic Compute Cloud (EC2) by saying Azure does more than just take traditional software and put it in the cloud.
In an interview Monday at the conference, Microsoft Chief Software Architect Ray Ozzie described how traditionally software has been built according to a scale-up model, which isn't practical for the current era of the Web, when applications must be flexible and accessible to a large number of users both inside and outside the corporate firewall.
"The systems we've built for enterprises are really the scale-up model," he said. "We build a system and we try to add hardware to make it get bigger and bigger and support bigger and bigger enterprises, but eventually that kind of falls apart."
With Azure, developers can build software in a scale-out model, which Ozzie described using an analogy involving tennis balls, and how a person or persons might handle them if someone was throwing balls at them.
"Let's say [someone] throws 100 balls at me," he said. "There are limits to the scale-up model and if I fail, all the balls will fall to the ground."
However, in a scale-out model, an application can distribute the task of catching the balls, which gives it more flexibility, Ozzie said. "There's a chance that by just adding more people, we can take any number of balls that he'll throw at us. And if one falls down, then maybe the guy next to him will pick it up, but he'll keep going."
Azure, then, allows developers to build applications according to this model, which means an application won't break down as it tries to process all the different connections -- to users behind the firewall, on the Internet and to myriad devices -- that the current wave of Web applications must juggle.
Ozzie used the example of Microsoft's Hotmail e-mail service as an application developed according to a scale-out model because the company knew from the beginning it would have to serve millions of users coming in from various connected environments. However, it didn't build its e-mail server software, Exchange, in this way, and had to rearchitect the application later to fit this development model, he said.
"There's a process you use to take an enterprise app and change it and rethink it to be that broad, horizontal thing," Ozzie said. "We've done that with Exchange, and we're doing that with more and more."
In offering a cloud development and deployment platform, Microsoft has a harder task than competitors like Amazon or Salesforce.com, both of which started their businesses on the Web. With its software legacy, Microsoft has to tend to millions of developers who use its platforms to build software meant to live on premise in a corporate data center while balancing the rapidly evolving needs of more sophisticated Web applications.
James Governor, principal analyst for analyst firm RedMonk, had a more simplistic and tongue-in-cheek description of the scale-out model Azure is trying to provide for corporate applications, comparing it to "wearing your underpants on the outside of your clothes."
Developers need to find a way to expose their applications to as many users as possible but still keep the security, scalability and other factors intrinsic to corporate computing environments in mind, he said.
"This externalization and rethinking the role of IT -- it's something important that all enterprise organizations are going to have to face," he said. "How do you build applications that scale and include different constituencies? How do you extend identities on the Web?"
Pitney Bowes Management Services, a subsidiary of Pitney Bowes that outsources business services such as mailing, communications and shipping to Fortune 1000 companies, is one company that is facing this problem. Pitney Bowes Management Services is working with Microsoft to test a version of its dMail digital mail conversion service running on Azure.
Terry Doeberl, director of business development for Pitney Bowes Management Services, said one benefit to a Web-based development model for applications is that it will make applications independent of the desktop operating systems, which he called "the bane of many companies' existences" because of how difficult it can be to install new applications across desktop PCs.
As described by Microsoft, Azure abstracts the application from the OS using virtualization technology, which means the two can act independently of each other.
Doeberl said the separation between the application and the OS also simplifies the maintenance of support of individual desktop users while making the applications more accessible from mobile devices.