views:

958

answers:

5

The question of TFS versus OSS has already been asked, with most answers tending toward OSS as the better alternative.

I'm in a position where my employer (an ISV with a mix of onshore, offshore development staff) is about to take the plunge to TFS. We currently develop with VS 2008, subversion, and various supporting toolsl NUnit, NCover, etc.

I've read the marketing hyperbole but I'm unconvinced.

Can anyone speak from experience of the benefits of TFS or Team System for the individual developer? Has your coding life improved?

+10  A: 

Here is the thing about TFS, if you use it just as a source control mechanism than you are going to be un-happy. If you use it as a project management tool, meaning source control, tickets, project planning, reporting, building, etc, you will love the tool. Because the alternative is to get systems like SVN, Trac, and CruiseControl plus other things all working together for the same goal, which also isn't hard, but you still have to be using tools from 3 different vendors.

So my experience has been great, and I wouldn't choose anything else from my project management. However, that being said when I just need a source control, I use SVN.

Nick Berardi
+2  A: 

TFS scales very well particularly in the environment you described - mixture of onshore and offshore development staff. In particular the proxy server ensures good performance for the remote teams.

Furthermore, there is very good security features that allows granular access - and a good "alert'ing" system - say you want to limit what branches your offshore partner has access to and get emails every time they check into a particular branch you are only reluctantly giving them access to.

The environment is all integrated both in the VS IDE and an excellent web access portal (ie the former Team Plain - not Sharepoint). All of this is incorporated in a single tool (as opposed the need to integrate multiple different Open Source tools). It is well documented and supported with a large community around it.

But the biggest benefit is that all of the data is incorporated into a Data Warehouse. You should be able to track the productivity and more importantly quality of your various teams by seeing how much work they are getting done (task completion) check-ins, bugs, broken builds, failed tests and so on. How would you capture that with the various tools?

Furthermore, if you do want to stick with particular open source (or otherwise) tools, such as nUnit over MSTest, nCover for code analysis over Microsofts, you CAN do this with extensibility - even publishing the results in the warehouse.

fuzzbone
+1  A: 

I think the biggest benefit to TFS is simply the VS integration; Honestly, if you take that away, I'd use something else. If you put together a really slick plugin for SVN/trac/cruisecontrol in VS, I'd switch in a heartbeat (well, in the next heartbeat after I convince management that is :) ).

Chris Shaffer
+1  A: 

I too would Like integration into VS of Trac or similar.

TFS Version control is disappoint in comparison with SVN (both TFS2005 and TFS2008). Branching and merging is just not as powerful or intuitive and there is no revision graph to help you out. And as far as getting CruiseControl SVN and Trac to work together, I have to point out that TFS Requires You To get MSSQL + Reporting Services and SharePoint to Play nice with TFS It self so it is no less involved and some would argue more frustrating (especially Sharepoint)

Also the entire interface feels unfinished and in desperate need of: * streamlining * clarifying (confusing terminoligy in branching and merging) * improvement (compare and merge tools seem to be the exact same ones found in VSS - personally I prefer something like WinMerge which makes a huge difference in my life)

A: 

You'll got the feeling that all of your computer resources are working for you :) (100% CPU and memory usage)

shatl
Can you be more specific? I haven't experienced this.
John Saunders
TFS uses much more resources than SVN/CC.Net/other bug-tracker bundle. TFS Requires SharePoint/MS SQL/Reporting Service.
shatl