Most of you are already aware of the Visual Studio 2005 Community Technology Previews (CTP) and are familiar with the philosophy and benefits of the CTPs – you get working bits more frequently, great opportunity for feedback from you to the product teams (using Ladybug), potential of finding issues earlier than RTM, ability for you to verify requested fixes and lots of other good stuff. We are working on striking a balance between releasing CTPs frequently, the amount of time we spend verifying their quality and their effect on the main product schedule.
We have now released the July CTP, which is available to our MSDN subscribers. The SKUs already released in the July CTP includes the VS Pro, VS Std, VSS, VSTO, VS SDK and VS PPE. VSTS and VSTF will be released next week.
So, what really happens behind the scenes before you get the bits? Basically, a group of people work together and start cranking the CTP machine J Just to give you an idea, let me walk through my life as a PM on the release team before the release of Phase 1 of the Visual Studio 2005 July CTP, which was scheduled to release in 3 phases to account for the large number of SKUs:
Phase 1: VS SDK, VS PPE, VS STD due on July 8th
Phase 2: VS Pro, VSS, VSTO due on July 15th
Phase 3: VSTS, VSTF and VS SDK (compliant with the phase 3 bits) due in late July
June 28th- 29th:
Phase 1 work starts a week in advance. I started to scout the Main branch to select a build that would be released as our July CTP. Some people ask “A week early? Can we not just wait until July and then pick a build a day before it is released?” While that is the ideal case, we want to make sure that our customers get a minimum quality of bits. To do this, we need to allow sufficient time (as you will see in the rest of this blog) for install and uninstall testing as well as media verification (For example, virus scans need to be run so that you don’t get viruses as part of the download). To gauge quality, I look at each build to see if it had passed the Integration tests that we run daily on all builds. In this case, Murphy’s law prevailed - the Main lab, which was doing just fine the week before, suddenly had some build issues so I had to wait for those to be resolved and wait for a new build to be generated.
June 29th- July 1st:
- Selected a build as the CTP build since it had passed all the Integration tests.
- Created a save request for the build as new daily builds routinely replace older builds.
- Discussed SQL Server Express dependency with the Yukon team to determine the build of SSE to ship with the July CTP.
Came into work (thanks to an issue with my smart card not allowing me to VPN into the corporate network) to request actual media to be burned for the CTP. This will ensure that the requests are seen by whoever first walks into the burn lab on Tuesday. Media needs to be burned for purposes of QA who test whether the images on the bits (actually being posted) match the bits of the CTP build on the build drop server.
10:00 AM – So, our detection logic is causing SQL Server Express installation to look like it failed (as the post-install check looks for the version the build was generated with). Decide to push this into Known Issues that accompany the download as the install actually succeeds but only looks like it has failed. Also, its too late now as the media is being burned as we speak.
-Quickly hand over all the media to the test team and create media verification requests for all the SKUs.
-4:00 PM - Test verification finds that the VS Pro un-install fails! After remembering to breathe, I find the Setup devs - Is there a fix? Can we investigate and fix it fast enough to turn around and ship this thing? So, I move the Pro SKU to ship with Drop 2 so that we can get the fix into the build.
- Request MSDN to stage the bits so that the bits will be available when we want to go live as this step usually takes 2-3 days for all the bits to propagate.
- Created a request to post the public symbols on the Internet server so that customers can debug their applications
Create internal CTP site so that folks have one place to view everything about CTPs and their schedule. Provide MSDN with all the documentation they need and the marketing blurb and give them the go-ahead to post the bits.
The bits are live on MSDN! Drop 1 goes out to our customers right on schedule and I periodically check MSDN to ensure that the bits have been replicated. But, what is this – the content looks a little different than what I sent out. Where are the Known issues? I picked up the phone and called the MSDN contact and turns out the content was indeed different. A quick change and a couple of emails later, the content looks good. I then send out a status email to the whole Division informing them of the same. Start to work on Phase 2………
Known issues (July CTP - Drop 1 and 2):
While we haven’t released an official “Known Issues” document and these are also published as Notes in the download location, I wanted to post these here:
1) At the end of the Visual Studio 2005 installation, it might indicate that SQL Server Express is not installed, even though SQL Server Express was installed successfully. Look at Add/Remove Programs to confirm that the SQL Server Express has been installed.
2) Installing on Win2k3 gold will fail until you install MSI 3.1
As you can see, there is still a long way to the realization of our vision where we are releasing builds on a daily basis. We are constantly thinking about ways in which we can streamline these processes and automate as much as of them as we can. But, we are constantly improving on releasing bits “over the wall” to you in a predictable, consistent manner.