02 February 2007

TFS Bug Item Synchronizer 1.1 for Mercury Quality Center - Part 2

A couple of months ago I posted about a utility I happed across that synchronizes Team Foundation Server bugs with Mercury's Quality Center/Test Director product.  At that time I hadn't yet had the opportunity to try the utility out.  This past week I finally planned some time into my iteration to setup the utility and try it out.

Our development team currently uses Visual Studio Team System for development whereas our testers are currently using Mercury Quality Center to track defects.  On past projects I've actually went through the trouble of manually synchronizing defects in both systems (luckily we didn't write too many bugs :-)).  However, even with relatively low defect rates, it still took a good amount of time to keep the two systems in sync.  So, we thought we'd give this new utility a try.

When I first read the setup and configuration help file I was a little overwhelmed at the number of steps it took to complete the installation.  Some of the steps were pretty straightforward and simple - for example, turning on ASP.NET and allowing web services to be called.  Since I was installing this utility on our TFS build machine, these services were already setup and configured.

Next, I ran an MSI installer package that installed the utility's files.  However, even after running the installation, I still had to manually "install" three separate Windows services (via the InstallUtil utility).  It seems to me that this step could have been handle via the MSI package.

Once the services have been installed there is quite a bit of configuration to be setup.  For example, you need to specify your TFS server address and port number, the Quality Center URL, LDAP server (if used), and many others.  You then have to specify which fields map to each other between TFS and Quality Center.  This mapping is handled within XML files and is relatively easy to modify.  I did find that some of the documentation was out of date with what was actually expected in the configuration files but that wasn't too difficult to get around.

The synchronization utility does ship with an administrative tool to aid in the setup and configuration of the various files but there are still a few quirks that need to be ironed out (e.g. the "Defect ID" field not showing up in the TFS list of fields on the mapping tab - you could specify it directly in the XML file but I couldn't find it anywhere in the UI).

Although I ran into a few issues along the way and had several questions related to configuration and processes, I received very prompt and directed assistance (via e-mail) from the main developer of the tool (thanks Ilpo!).  We probably went through no less than 15 e-mail exchanges over the course of 24 hours.  However, at the end of that exchange, I had my Team Foundation Server synchronizing defects with Quality Center.  I was even able to get a few new features added in along the way (I believe two or three new builds were released during that two-day period as well).

So, as of right now, I'm pretty happy with the outcome.  We haven't really had a chance to fully put it through it's paces, but based on what I've seen so far it appears to solve our needs.

Given all that, I'd say the utility works very well but still needs some work on the installation and configuration process.

Click here for more information or click here for pricing.