It's almost impossible to believe now, but when Microsoft premiered its Windows Azure service back in October 2008, there was genuine speculation over whether the company would try to muscle its way into the cloud the way it did with Internet Explorer during the war with Netscape. What was the hook? What Windows service or feature would be so irresistible that would require Azure, that no other competitor would be able to gain a footing?

Most conspiracy theories seem stupid three years or so later, after they've failed to come to fruition. Now that Amazon is the leader (albeit amid good competition) in cloud-based virtual machines, VMware is the leader in virtualization services for the enterprise (with Citrix keeping it on its toes), Salesforce (it's still amazing to say it) has become the leader in cloud-based applications, and Heroku (a Salesforce product) is believed to be within striking distance of leadership in cloud-based apps platforms, it becomes not only feasible but practical to consider Azure in terms of relevance.

The feature that could put Azure back in contention in many customers' minds is persistent images, which Microsoft also refers to as "VM roles." It's the type of service that Amazon EC2, Rackspace, and GoGrid customers typically expect: deploying a server image to the public cloud that can then be used to host an application full-time. It's not rocket science, or at least it shouldn't be. Azure's had it in beta for nearly all of last year.

"A VM role gives you a high degree of control over the virtual machine," reads MSDN's current beta documentation, "while also providing the advantages of running within the Windows Azure environment: immediate scalability, in-place upgrades with no service downtime, integration with other components of your service, and load-balanced traffic. The VM role consists of an operating system that is constructed using a base virtual hard drive (VHD) and optionally one or more differencing VHDs. The use of the VM role also involves a service definition file and a service configuration file."

Rather than develop and run code to be managed by a .NET Framework running in the cloud, as Azure's principal PaaS service works now, users would deploy an operating system image and manage that image directly... the way Amazon users have been doing for years. My friend Mary Jo Foley has kept her unblinking eye (I can't do that myself without it burning) on the fact that MSDN documentation refers to "an operating system image" in a curiously agnostic fashion, as opposed to stating "a Windows Server image" or something else equally specific. This leads Foley to believe that the company is willing to open up Azure to host other types of server images, including Linux.

While such an event would finally bring Microsoft into the same topic of conversation as Amazon among customers, it won't make the company automatically an equal player. Even leveling the playing field may not be enough; Microsoft will need to create a competitive advantage, and do so the old-fashioned way.

Becoming a "full service" provider may not be enough, because as Amazon has demonstrated, different services appeal to different classes of customer. Microsoft maintains some advantages against Google in the SaaS field, where Google Apps remain too underpowered, limited, and unreliable to compete against Office. That said, Office Web Apps must still improve. In the PaaS field, Azure is by no means a weakling, though against competition from out of nowhere like Heroku, it will need several repeat performances like its embrace of Node.js last month, which broke Azure out of its .NET shell.

Among consumers, there needs to be more direct connection between Windows for PCs and Microsoft's cloud services. We've seen a few examples for Windows 8, but not nearly enough. Windows Live is still treated too much as "online" - a connotation that harks back to CompuServe and Prodigy. Consumers need to see the Microsoft cloud as the software, and they will need to perceive Office 15 (hopefully not "Office 2015") as the cloud.

But that won't elevate Azure's position in the enterprise, certainly not by itself. Microsoft will need to become something it historically has never been: cost competitive. Its success in staying relevant against tremendous competition in 2012 will be measured by three factors: 1) How many customers will Microsoft take away from IaaS leaders such as Amazon and Rackspace? 2) How will Microsoft expand its PaaS services beyond just Node.js support? 3) How soon will Microsoft's moves this year be answered by Amazon and others with price cuts?