Listen to this article
Microsoft ploughs more than $6bn (£3.3bn) a year into research and development and, as even its fiercest rivals admit, has amassed the most impressive collection of brainpower in the software industry.
So why does Google hog the limelight as the most innovative company in the new business of delivering software-based services over the internet? And why is the next generation of Windows, due out late next year, two years behind schedule and only a slimmedscaled-down version of the original plan?
Those are vital questions, not just for Microsoft but for any big company that faces a fast-moving and disruptive rival. Money and brainpower alone are not enough. Turning those superior resources into a steady flow of hit products requires something more: internal processes that can overcome the inevitable drawbacks of working in a large and complex multidivisional company.
The issue, however, reaches beyond process to strategy: at what point does an established company abandon a product approach that has worked for years in order to compete with a new rival that follows a different development model?
Steve Ballmer, chief executive officer, has made no secret of his own impatience at the misfiring of Microsoft’s main development engine. As he said last week of the forthcoming Windows Vista, which will arrive five years after the previous version of the operating system: “In terms of significant new innovation between releases, it’s been a long wait.” This, clearly, has been an experience Microsoft has no intention of repeating.
“It is not that they aren’t innovating,” says Charles Di Bona, software analyst at Sanford C Bernstein. “But they aren’t getting [new ideas] out fast enough into products.”
Mr Ballmer vowed that Microsoft had already made changes to its development processes and would release more frequent, less ambitious versions of Windows
– though exactly what changes have been made remains unclear.
To some extent, the problems stem from scale and ambition, as well as a broader corporate strategy that revolves around two big products: Windows and the Office suite of software applications.
Ray Ozzie, one of three chief technical officers reporting to Bill Gates, says that, with very clear and straightforward goals, it should be possible to turn out quick results for almost any software project. Referring to Groove Networks, his former company, which was acquired by Microsoft, he says: “We got a lot done with a small amount of people in a relatively short space of time.”
The creator of Lotus Notes and a widely respected figure in the software industry, Mr Ozzie’s arrival at Microsoft earlier this year appeared to signal a willingness on Mr Gates’ part to consider new approaches.
For giant projects like Windows, says Mr Ozzie, things get more complex. However, Microsoft may well have compounded the problem by the scale of its ambition and a corporate strategy that relies on bundling as much as it can into the operating system.
As Mr Ballmer concedes: “We attempted something that was beyond the planning and the conceptualisation of the system.” A development machine that was accustomed to turning out bigger and ever-more complex versions of the operating system finally hit a wall.
“The code base has become enormous,” says Michael Cusumano, a professor at the Massachusetts Institute of Technology’s Sloan School of Management. “It becomes very difficult to build and test. Everything slows down to a crawl.”
At the heart of this development approach, says Prof Cusumano, lies a process that can no longer cope with the scale of Windows. Like others in the industry, Microsoft carries out a “daily build”: all the code being worked on by its various engineering teams is assembled each day into a working prototype. That way, different groups can see how well their code fits together.
“With the scale they have got to, that doesn’t work any more,” says Mr Cusumano. It takes only a single error for the process to grind to a halt, and the work necessary to test how all of the
parts work together grows exponentially.
Only “brute engineering force” will let Microsoft ever complete the next version of Windows, he adds. With more than 50m lines of code and a team of engineers estimated at 7,000-10,000 people, it is attempting something on a scale never before seen in the software world.
The obvious response, say software experts, is to “unbundle” Windows into a series of separate software components, each linked together by standard interfaces. That way, each part can be built independently and “bolted together” at a later stage.
“Everything is intertwined,” says one former Microsoft developer. “They are trying to disentangle
the spaghetti” – although
it is unclear from the comments of Microsoft executives how far down this road they have gone.
“This is the only way out of the mess that they have got themselves into,” says Prof Cusumano.
Besides streamlining the development process, taking a more “modular” approach to development would also make it possible to make more frequent, small-scale changes to parts of Windows without overhauling the entire system.
This could be one answer to the new competitive threat represented by Google. By releasing new products – or new versions of existing products – at frequent intervals and making them available immediately over the web, Google has been able to steal a march on Microsoft.
“They are behind Google in the productisation of their ideas,” says Mr Di Bona says they are behind Google in turning their ideas into products.
Other new rivals have also encroached on the core Windows business in this way. The Firefox web browser,
an open source software product released over the web, has quickly won 10 per cent of the browser market. Microsoft’s response: to bring forward the next version of its own browser, “unbundling” it from the wider operating system so that it is not delayed by the need to complete Windows.
That approach, however, raises wider questions about Microsoft’s future. Packing ever more features into the Windows code base has been at the heart of the company’s strategy. It has been used to justify the regular upgrades that customers make to their PC operating systems. It has also been used as a defence against antitrust regulators, who have challenged whether Microsoft needs to subsume so many other software categories – from browsers to media players – into its operating system.
By redesigning the system as a more loosely-connectedr collection of components, there is a risk that Microsoft will find it harder to maintain its familiar argument that each is an integral part that cannot be removed without detriment to the overall system, says Mr Cusumano.
“They need to componentise in a way that doesn’t threaten their business model,”They need to restructure in components in a way that doesn’t threaten their business model, adds the former Microsoft developer. “They need to get out more variations of their products.”
For Mr Gates, who has long pushed for what he calls “integrated innovation” – an approach to product development that is meant to tie Microsoft’s products together tightly in ways that enhance their overall benefits, this represents a fundamental design challenge.
Speaking at the company’s annual analysts day recently, the Microsoft chairman and co-founder made no secret of the biggest task the software company faces.
“The challenge is having such a broad technology portfolio and having all of these things come together,” he said. “We’ve always wanted to be a company
that gets the benefits of
With Google breathing down its neck, this may be an approach that is due for a more fundamental rethink.
■ July 2002. Bill Gates, chairman and founder of Microsoft, announces that Longhorn, the next version of Windows, is likely to arrive in 2004, a year later than first planned.
■ February 2004. Work on Longhorn slows dramatically as developers are moved to tackle security issues with Windows.
■ August 2005. Microsoft releases a test version of the new operating system – now renamed Windows Vista – to independent software developers.
■ December 2006. Microsoft aims to make the software available to users by the holiday period, more than five years after the launch of Windows XP, the last version.
Microsoft has encountered difficulties in managing a project that is the size and scope of Longhorn, the next version of its Windows PC operating system:
■ Integration vs modularity. Any change to one part of the software meant multiple changes were needed elsewhere. Microsoft is now considering unbundling parts of the software so that they can be developed independently.
■ Speed and frequency of release. A modular approach allows for more frequent, less ambitious releases.
■ Streamlined development. Unbundling would also allow the company to make more efficient use of its thousands of developers.