Over the last few months my project team as been piloting TFS. Our inital reaction to TFS was wow, this stuff is great. Look at all this integration and niffy capabilities!
Well, the POC is now wrapping up and the end result is not in favor of continuing with TFS, so I thought I'd do a little public post-mortum....
After discussing the POC, expressing concerns/risks/likes/dislikes we went around the room and each stakeholder put in his/her final thoughts. Overwhelmingly the reponse was the same: While TFS has great promise, ultimately it's too inmature for large-scale, critical development.
While we're a group of smart techie guys who love the cutting edge, in our project full of risks the one risk we can't afford to have is a immature SCM package that wasn't really compelling for the users. We kept saying, can we use TFS, sure; but are we excited by it, are we aching for it, MUST we have it? No.
The cool TFS bells and whistles? Some of them are real, some are not so. (For example, why isn't TFS fully integrated with MS Project/Project server?) TFS has lots of eye-candy, but substance is lacking.
The development team was most concerned about source code control and build management:
- The IDE is CLUNKY, various features spread out, hidden in odd places, some functionality here, some there.
- We had some issues around continuous integration that forced us to rely on CruiseControl for part of our build process
- Tools and utilities are lacking. The TFS Powertoys are a start but most of those features should be in the base product....
Cost, of course should be mentioned, although in our case it was not a deciding factor, it certainly was an influcing one. It's not cheap, and it's major compitition for us is open source....
So what will we be using? Well, a combo of my old favorites, SVN, Tortoise-SVN, CruiseControl.NET, and possiblity Bugzilla or Trac for issue management. It's simple, solid, proven, mature technology with a large user community and rich tools.
We'll still use MSBuild for our build scripting, while it's got some rough edges and lacks some features NAnt had, it's a no-brainer being THE build system of VS2005. Testing? I don't know, we had already started down the MS-Test path, but now with TFS out of the picture, I suppose we'll we go back to NUnit? The two are so similar it doesn't really matter, but I'm sure that will be hashed out soon.
So how to I feel about the decision? I'm sad really. I really wanted TFS, I wanted it to work. I drank the cool-aid and was ready for the big TFS world. A couple of releases, a couple of years, maybe then...
You know what they say, Microsoft never gets it right until version 3....
-Andy