Early this year, I met with Jim Allchin, co-president of Microsoft's Platform Products and Services Division. Allchin was on the road, talking up his favorite features in Windows Vista and explaining the remainder of the Vista time line. I spent a considerable amount of time asking him to clarify how Microsoft today's prerelease Vista versions released product. Here's what you know about the Vista development
Betas Out; CTPs In
Microsoft's software development projects have traditionally followed a major-milestone model: beta-quality releases followed by series of release candidate (RC) builds, and then the final release. But this model is growing outdated and has inherent inefficiencies, Allchin told me. For starters, there aren't enough milestones, so testers often use code that's several months old and report bugs that have already been fixed internally.
After shipping Vista Beta 1 in July 2005, Microsoft switched from the major-milestone model to a model that regularly seeds testers with up-to-date prerelease builds. These builds, called Community Technology Previews (CTPs), are released every month or two. Microsoft shipped the first Vista CTP in September 2005 at the Microsoft Professional Developers Conference 2005 and shipped subsequent CTPs in October and December 2005 and in February 2006.
Allchin said that Microsoft considered the December 2005 Vista CTP release to be an "Enterprise CTP" and provided it to hundreds of Technology Adoption Program (TAP) partners. TAP partners are typically large companies that work closely with Microsoft and get onsite support to test products in real-world situations. The February 2006 Vista CTP was the first feature-complete release. Allchin noted that the February CTP was the first time Microsoft had provided testers with complete OS features so early in a product's development cycle and that early testing was one of the benefits of the CTP system.
Microsoft is slated to ship its next Vista CTP in late May 2006, so by the time you read this, that CTP could be available. As with previous OS releases, the May CTP should be made available to the public as part of a Customer Preview Program (CPP). Although the May Vista CTP might be considered the Beta 2 release, Microsoft is moving away from the beta-naming convention with Vista. "Beta 2 is really the culmination of the three previous CTPs," Allchin told me. "It's really just a different approach for developing the product. We think about Windows Vista only in terms of CTPs. But you can it as Beta 2, the final Beta 2, or even RC0. We think the quality is going to good enough there that we won't even to do an RC0 release. And then the CTP will be RC1."
RC1 release, currently due in August, also be seeded to the public. That release should provide a nearly complete look at Vista, which Allchin says is still on track for a late 2006 release to manufacturing-(RTM). Since my discussion with Allchin, Microsoft announced that it will complete development of Vista on or before October 25, 2006. It will ship Vista versions to businesses in November and will ship consumer versions to retail stores in January 2007.
Although frequent releases of CTPs are a boon for testers and for Microsoft, one might wonder how the quality of those builds stacks up against the quality of less frequent beta milestones. Allchin told me that the CTP builds, by definition, will be rougher than beta releases. Not only is that to be expected, but it's preferred, he said.
"Everyone needs to understand that this is a work in progress," Allchin said. "Don't judge us on specific issues. Judge us on whether the quality and features are improving \[with each CTP\]."
I asked Allchin if he thought that other groups at Microsoft would drop the major-milestone model in favor of the CTP approach. "I don't know," he said. " Certainly, we're going to do it with this product, and we're getting a lot of good feedback. We'll have to see. Many of the things we think of as platforms are doing CTPs as well. But you still have to designate a CTP for a particular purpose, which is what the beta \[releases\] were for. The difference is that, instead of having a beta, followed by huge amounts of dead time, and then another huge drop, you have more constant updates. And we think that will speed up the development process."
Incidentally, Microsoft Longhorn Server is still using the old milestone model. Unlike Vista, Longhorn Server will have three major beta milestones and then a series of RCs. "We haven't spent much time talking about Longhorn Server yet," Allchin said. "It's on the same trajectory it has been on; there are no changes." According to Allchin, Longhorn Server Beta 2 is due in second quarter 2006 and a Beta 3 release will ship in the second half of 2006. Longhorn Server is still on track for release in the first half of 2007.
"It's one milestone behind Windows Vista," Allchin said. "They're being developed in lockstep, but there will be one additional major milestone for Longhorn Server. You'll \[also\] see a lot more CTPs in the future, including a very consequential one this year."
I recommend that you evaluate the most current Vista CTP you can get your hands on this year and start thinking about your Vista migration strategy. My usual advice about waiting for the first service pack still applies, although Microsoft had hoped to overcome that requirement with this release. As for Longhorn Server, it might be a while before we see a feature-complete version. The Beta 2 release is the time to consider evaluating that product.