Team System Tips
I've been working with Team System and Team Foundation Server for quite some time now so I thought I'd share some tips that I have learned.
A bit of background, the first version of Team Foundation Server I worked with was July CTP. Back then, installation was horrible, and everything was just hard to do. Since then, things have improved drastically and setup has been much improved. That's not to say there aren't certain things I would like to see simplified, but it's getting there.
So here are some tips for working with TFS:
- A couple of acronyms you will see commonly:
VS2005, VS2k5 = Visual Studio 2005
TFS = Team Foundation Server
TE = Team Explorer
VSTS = Visual Studio 2005 Team System
WSS = Windows Sharepoint Services
- Everytime I talk about TFS to newcomers, people are confused about how VS2005, VSTS, and TFS are related to each other. Once you know the basic differences, it's quite simple.
VS2005 is the version of Visual Studio without all the new Enterprise features. VS2005 is just the IDE, compilers, and some tools strictly to build your applications.
VSTS includes all the new fandangled features in addition to the features of VS2005 geared towards Enterprise developers. When I say Enterprise, I mean developers who create applications that need planning, design, and testing. Of course everyone could use these features, but it's mostly Enterprise developers who have the money to pay for these added features. There are 4 editions to Team System: Architect, Developer, Test, and Suite. As you might suspect, these editions are geared towards a user with a specific role, or the Suite edition which includes everything for the user who fills multiple roles.
Finally TFS is the server product that brings Visual Studio 2005 (all editions) together. With an integrated work tracking, reporting, and of course a brand new source control system, TFS is what you need to install to get all your users linked together through a specific project process.
- Team Explorer is the name of the client piece of Team Foundation Server. This is essentially a Visual Studio addin that allows VS to talk with TFS. If you have VS 2005 installed (any edition), then TE will integrate with your existing installation. However if you do not have VS 2005, then setup will install a VS 2005 shell for TE to install into. This allows you to work with all the functionality of TFS even if you are using another environment (ie. Visual Studio .NET 2003).
Improvements I would like to see:
- Integrated security manager. I'm sure everyone who tried TFS for the first time has encountered the problem where they could access TFS and the source control, but not the Sharepoint site. The answer is to this problem is a result of TFS being a cross-server platform. Not only do you have to configure your permissions for TFS, but you will also need to configure the permissions individually across the 2 other servers TFS uses: SQL Reports Server and Windows Sharepoint Server. Since these 2 are separate products with their own security design, TFS does not propogate security settings to those servers.
Seems to me it wouldn't be too difficult to write a wizard that would make the security changes to TFS, then make the necessary changes to SQL Reports and WSS. Good news is according to this post, it looks like they're working on such a tool. In fact just last Friday, Rob Caron/Kannan Sundararajan announced a new TFS Permissions Manager Tool! Cool, can't wait!
- Better error messages in setup. Most of my installations of TFS have been pretty straight forward. However, certain instances where my installation failed, I would get weird, cryptic error messages. For example, one common error I keep getting when trying to install TFS on a certain server configuration is:
The installer has encountered an unexpected error installing this package. This may indicate a problem with this package. The error code is 26105.
Can anyone decrypt this error message? I've seen this error so many times that the number 26105 is now tattoo'd into my brain! Looking at the log files helped me pinpoint the error, but I still couldn't figure out the problem. A setup application similar to the new SQL Server 2005 would be great!
- Rollback errors! This issue is just unacceptable. We tried to create a new team project but it failed someplace. Turns out our project is now in an "unfinished" state. The project appears to have not been created, but if we look in the security properties, the new project groups are there. There needs to be better protection against cases like this.
Team System encompasses a whole lot of new features so I've only scratched the surface here. If this is your first time learning about the features of Team System, definitely give it a try by downloading the demo of VSTS and/or TFS Beta 3 Refresh (from your MSDN subscription) or by reading up about it on the main homepage. Of course with any new product, there's bound to be some flaws. Hopefully all these issues I've encountered are just beta issues and the RTM release coming sometime soon will correct these!