As a part of doing some competitive analysis, we've installed the latest Beta of Microsoft's Visual Studio Team Suite, including the Team Foundation Server. Due to be released sometime later this year (in theory), the latest version of the .NET IDE includes some powerful integration tools for team developers, including integrated management tools for source code control, builds, code analysis and testing, as well as our area of focus, Work Item Tracking. In order to get a feel for everything, we setup the Team Foundation Server, Team Build Server and the Visual Studio Team Suite here, with the intent on using the system for a small project. After tracking down the latest instructions (http://blogs.msdn.com/robcaron/archive/2005/04/23/411192.aspx), our install was up and ready to go. Here are some of my installations after settings things up and playing around for a day or so:
- The setup, as it stands right now, is fairly complex, requiring a very specific environment to be able to test the entire suite successfully. I've read that as we get closer to release, certain requirements will start disappearing (e.g., TFS currently uses AD/AM to store security information, which will migrate to be stored in SQL by release).
- The initial impression of everything is quite favorable. I really like having all the different tools (SCM, Build systems, unit testing, work item tracking) in a single application, all very tightly interwoven. As an example, when you check in a change to the source control server, you can associate the changeset with one or more work items. Later, when you perform a team build, you can see a list of all the changesets and all the work items that went into that build. This would be stellar for developers in larger organizations, wondering if their changes got merged into the build or not.
- There are some things that seem lacking. As it stands right now, you can set up email notifications when certain things happen, but there are only 4 "alert triggers", and the interface you use to define who gets what email isn't very robust. Currently you just enter in email addresses in plain text; I'm kind of surprised there isn't a way to integrate w/ Exchange Server somehow.
- Also, a work item has a (seemingly) fixed number of fields you can enter data in, there doesn't seem to be a way to enter in any custom fields. Also, with only a couple exceptions that I found, you can't customize the data that goes into any (non-text) fields. So for the status of a bug, for example, there's only 3 or 4 choices that you can pick from. I think these choices (and other pick list values) are defined by the methodology you chose when setting up the project initially. In Beta 2, only MSF Agile is available, but you can export it to disk, edit it, and then reimport it to get your own methodology. As far as I know, the data for each process is stored in a collection of XML files, so the editing is easy, but I don't know how much guidance you can expect from MS at this stage.
There's a lot of features in the suite that I don't think I've even delved into yet, so I'm excited to be able to play around with it some more over the next few days. I'll post more impressions here as I get them. :)