Trip to market was a long one for Vista
Kevin Johnson, the head of Microsoft's Windows division, is very clear on this: "Never ever, ever" — he repeats "ever" six times...
Seattle Times technology reporter
Kevin Johnson, the head of Microsoft's Windows division, is very clear on this:
"Never ever, ever" — he repeats "ever" six times, pounding the table for emphasis — "ever again."
Microsoft finally completed Windows Vista this month, five years after the release of the version it's replacing. The company's flagship product will never go so long between releases, Johnson and other top Microsoft executives have vowed.
Several delays, the last of which pushed the consumer release of Vista to Jan. 30, blemished Microsoft's reputation and potentially cost the technology industry billions in holiday sales. That came after Microsoft detoured to build better security for Windows XP and removed features in Vista, which is coming out at least a couple of years later than expected.
What went wrong with Vista? And how can Microsoft ensure that building the next version of Windows will be smoother?
At its essence, an operating system connects software such as video games or spreadsheets with hardware. It's referred to as the "plumbing" of a computer, performing tasks such as deciding where to store data and setting priorities for programs.
Microsoft tried to pack more into Vista than ever before.
"They're like some of us when we get to a buffet and our eyes are bigger than our stomach," said Michael Cherry, an analyst with Directions on Microsoft and a former Microsoft employee. "They know all the things they want to do and they start doing them with the best intentions."
To build a feature such as the ability to record television — something the higher-end Vista has — programmers had to write a scenario for how it would work in an ideal world, draw up specifications and write the programming code, making lots of tradeoffs among things like hardware capabilities and development time.
They also had to build testing tools to put each feature through its paces, identify as many bugs as possible and make changes to fix them.
"It's kind of like lather, rinse, repeat," Cherry said.
But each change could cause other bugs to spring up. And it could get even more complicated when scores of features are integrated into a single system. Changes in one area could cause problems in others.
An early permutation of Vista, code-named Longhorn at the time, was plagued by "spaghetti-like" code prone to this unpredictable ripple effect, said Michael Cusumano, a Massachusetts Institute of Technology professor who co-authored a book about software development at Microsoft in the mid-1990s.
"It was so huge that it just became an impossible engineering task," he said.
The size of the team building Windows — thousands of programmers today compared with hundreds in the 1990s — added to the complexity. Microsoft introduced a new set of tools to automate testing and help coordinate the work of so many.
It scrapped years of work on the Longhorn code and started again, this time with the goal of building features in separate chunks, then putting them together, Cusumano said. "This is largely how Office has been developed with Word, Excel and PowerPoint seen as separate branches and then periodically integrated into the main product," he said.
Microsoft has moved top executives from Office, which amassed an admirable on-time record, to the Windows team. Steven Sinofsky, in charge of engineering for Windows, is already laying the foundation for future versions, said Johnson, co-president of the Windows division.
He said Sinofsky and other new Windows leaders are changing the structure of the group to eliminate layers of management.
"Every time you have a layer of management, there's another opportunity for someone to layer in their strategy, or set their direction," Johnson said.
Cherry wants to see Microsoft continue its ambition for future versions of Windows, but to take smaller, more frequent trips through the buffet.
Benjamin J. Romano: 206-464-2149 or firstname.lastname@example.org