How Microsoft Builds Software
How does Microsoft develop software? This is a first attempt at pulling the public resources together. There is an excellent paper called "How Microsoft Builds Software" by Cusumano and Selby, though it requires a paid account on the ACM portal. Resources based on the article are provided below in PowerPoint and Acrobat formats.
The best public resources on the topic may be the Release Team's Weblog by Chris Dias and ScottGu's Weblog by Scott Guthrie. Chris is the Group Program Manager for the Developer Division Release Team and he does an excellent job of defining specific terms. Scott's blog explains how the process is used with "real-world" references to the ongoing Whidbey cycle. Rounding out the collection is Corporate Vice-President S. "Soma" Somasegar's weblog. It's great to see a VP excited about C++/CLI, VB's My namespace, and Edit and Continue in C#.
On to the resources. They begin with overview documents and proceed roughly through Microsoft's production cycle. If you have additional resource, comment!
Resources
Summary of "How Microsoft Builds Software" (PowerPoint Overview) - San Diego State University
Summary of "How Microsoft Builds Software" (Acrobat PDF) - University of Maryland
Transparency and Community Feedback - Soma
"The ongoing two-way dialog and feedback is an
absolutely critical part of ensuring that we together build
the right product for our customers."
Design Change Requests (DCR) - Dias
The Release Manager - KC Lemson, Exchange Server
Ship Room (Video) - Mike McKay, Visual Studio
As Release Manager, Mike's role is to drive the ship
room for the next version of Visual Studio. He talks about
what he and his team does to get Visual Studio to get to
Zero Bug Bounce (ZBB).
Tell Mode and Ask Mode - Whidbey Product Team.
Product Metrics and Release Criteria - Dias
"Product Metrics / Release Criteria are a main
guiding principle in assuring we are shipping the right
quality product."
"Going Dark" - Dias
A technique for approaching ZBB.
Zero Bug Bounce (ZBB), Security Push, Tell Mode, and Ask
Mode (Guthrie) [Summarised by Benjamin Mitchell]
Scott writes about stabilizing code, regression
testing and triage.
ZBB - Eric Lippert, VSTO Frameworks dev team
Security Development Lifecycyle - Soma
Dogfooding, Showstoppers, and the Endgame - Guthrie
Exit Criteria (Video) - Mike McKay
Exit criteria are the shipping rules that a team sets for
itself. For instance, one of the rules is "we won't ship
with a known security issue."
The War Room and War Team - Paul Thurrot