At 60,000+ employees, Microsoft is the biggest mainstream software development shop that I’m aware of. For the last few years, the behemoth has been focused on delivering its successor to Windows XP. That project was first called Longhorn, and is now called Vista.
The word “vista” is a noun used to describe a pleasing view. With Windows Vista, there’s nothing to look at it, so I recommend that Microsoft does another name re-alignment and dubs it “Vapor.” That seems appropriate considering that the CorporateSuits just announced this week that Vista would be delayed until the end of 2006.
After multiple delays, no one is really surprised to see it slip again. However, I do find one thing interesting about this particular slippage:
Microsoft is cutting scope!
That’s right, they are eliminating pesky features like 64-bit computing and the media center options from the first set of Vista releases. What!? Aren’t these the things that people actually want and that their own marketing machine is carping about? It’s no wonder they can’t be bothered to support EFI…
Previous accounts I’ve read suggested that Microsoft has roughly 20,000 people involved in the development of Vista. I don’t know how factual that number is, but it’s safe to assume that the actual number of developers is VERY high. Now suppose that only a 25% of those are doing actual software development work when you factor out QA folks and miscellaneous process monkeys.
To the layman, it might seem that an army of 5,000 software developers could create a mountain of software, but the truth is that their mountain would probably just be a landfill. I’d say organizing programmers is like herding cats, but that would do a disservice to the feline population of this world. Have you seen the crazy cat ladies with 5+ cats in a single household? They’re a bit batty, and cats do not hold a candle to programmers.
Microsoft gets a lot of press for the use of agile development methodologies and XP in particular, so something is amiss when you take that many developers and fling them at a project. In my own experience, any more than 7 developers on a single team and the process becomes less productive. The integration of change sets and communication become more difficult as the number of developers involved increases. No matter how many teams those 5k developers at Microsoft are broken into, that’s an awful lot of overhead.
Suppose that Vista development is broken down into many efficient teams, each consisting of 7 highly motivated developers. That’s a whopping 714 teams. Suppose you round down to 700 for the sake of simplicity. Does anyone really believe there are 700 sub-projects that Vista development can be broken into? I don’t think so. As a result, one must infer that Microsoft has aggressively ramped up the number of developers per team. In a project as complex as Vista, that pushes the barriers of sanity into the red zone.
In the immortal words of Fred Brooks:
“Adding manpower to a late software project makes it later.”
The size of the teams and overall complexity of the project have already induced multiple release slips. Now take in account the announced “reduction in scope.” It seems likely that the programmers whose features got cut from the release will be reassigned now in order to help stop the other teams from slipping even further. I can think of no better way to guarantee the software ship evens LATER. I wonder if it’s possible derive a lemma from Brooks’s law to say that “Late software will be bloated, buggy and counter-intuitive to the user?”
I wonder how many bugs this version of Windows will have at the time of its release. I remember when 2000 came out with approximately 60,000 bugs and a service pack was available immediately. That’s a high standard to contest, but I feel that Microsoft is capable of producing a product that has a known bug count in excess of 10^5. They have the technology.
But more importantly, will anyone care when Vista finally arrives? If you’re a Windows user, XP (or even 2000) probably does what you need already. If you’re a Mac user like me, the idea of running Vista probably makes you shudder.