We’re still ironing out a few more wrinkles in preparation for the dogfood upgrade, but I wanted to go let folks know that it’s going to require two server machines to install. With beta 2 we had a setup that would allow you to install it all on a single machine, which was great for getting a system set up for evaluation. Unfortunately, I was told that the July CTP won’t be able to do that. You’ll need separate machines for the application tier and data tier. You can still install a client (VS 2005) on the application tier box. You could also run the application tier in a virtual PC that runs on the machine with SQL server to reduce the physical machine requirements to one (if you use Virtual PC, make sure you give it enough memory).
The July CTP has a lot of good changes in it. We’ve cleaned up the names across most everything. The assembly names have been changed and no longer contain code names. Likewise, the namespaces have been cleaned up. Some of the executables, such h.exe, still need to be renamed. Overall, you’ll find there’s been a lot of clean up.
Also in the July CTP we’ve tried to get in all of the protocol changes. Some of those changes were name changes. Others were significant overhauls of particular web methods. Going forward, we want to minimize the protocol changes, partly because we’ll be using the live development client binaries with the dogfood server. The code developers build on their machines will be what’s used to get work done, such as check out files and change work items.
Other changes are a little less noticeable. We’ve cleaned up the database names and cleaned up the schemas. We’ve updated the names of the web services. Active Directory Application Mode (AD/AM) is gone, so backing up the server is little more than backing up the SQL Server databases.
As you might imagine, there have also been a lot of bugs fixed in the product over the four months or so since the code was frozen for beta 2. Some of the bugs fixed have been reported in the Visual Studio Team Foundation MSDN forum.
After the cut for beta 2, there were a number of design change requests (DCR) that were approved and implemented. These are effectively features that either needed to be added or improved significantly based on either customer feedback or our own use of the product. For source control, these DCR’s included re-working the conflict resolution experience (resolve dialog), improved administration features, support for files larger than 4 GB, support for uncompressed files (e.g., files, such as JPEG files, that grow rather than shrink with GZip won’t be stored compressed), and a caching proxy server.
The caching proxy server was the biggest source control DCR and provides support for geographically distributed teams by caching the files that are downloaded from the server. After the first request for a version of a file, all subsequent requests can be fulfilled locally using the local caching server. The caching proxy stores each version of each file that is requested, and its ability to cache files is limited only by the amount of disk space that it is given. This DCR was driven by customer feedback (when something comes up often enough, it gets addressed). It also is something we’re looking forward to using with the new dogfood upgrade because we (the source control team) are in North Carolina.
Speaking of making things faster, the most important changes in the July CTP are the overall performance improvements. We’ve made a lot of significant performance improvements across all of Team Foundation Server when compared to beta 2. Work item tracking bulk updates are faster, as well as integration with Excel and Project. The analysis and reporting services use less memory and run faster. The warehouse code is more efficient (you hopefully shouldn’t need to change the warehouse interval any more).
One area that has improved greatly is the performance of the TFS source control integration in VS 2005. We spent quite a bit of time making it faster by changing how and how often it calls the server, as well as tuning the server for some of the calls that it uses most often. While we’re not completely done with performance improvements, I think you’ll find the difference to be significant and worth the time to upgrade if you are using beta 2.
On separate note, be sure to check out the slides from Doug Neumann’s presentation on TFS source control from TechEd 2005: DEV 466 Enterprise-Class Source Control. Doug includes topics like promotion modeling and the aforementioned caching proxy server in his presentation. He’s no longer the only source control PM, as Mario Rodriguez joined the team recently (he used to work on the XBOX team).