Geeks With Blogs

News

This blog has moved to ericnelson.wordpress.com

 Subscribe in a reader

Add to Google Reader or Homepage


Links
View my teams slideshare
These postings are provided "AS IS" with no warranties, and confer no rights.



IUpdateable has moved to ericnelson.wordpress.com Please visit http://ericnelson.wordpress.com

I was discussing with one of our TFS specialists the costs of going down the route of Visual Studio Team System and Team Foundation Server – specifically in the context of comparing it with purchasing Visual SourceSafe (VSS). This conversation was kicked off by the poll I did in the UK MSDN Flash on source control system usage. The results were pretty interesting with 37% using Microsoft products (21% using SourceSafe, 16% Team System) and 32% Subversion.

I wanted to explore the SourceSafe vs Team System a little further and share some interesting numbers I found out during that discussion. But first a confession…

SourceSafe and I fell out a long time back

I want to be very open about my personal view of SourceSafe. I don’t trust it. I don’t trust it at all. Not for a moment. Why? Many years back SourceSafe corrupted the files on a large project I was working on. This is not something you ever forget OR ever forgive. That said, I know there are an amazing number of companies and more importantly developers happily using SourceSafe. They tell me it is fine for them, it does what they need well, it is easy to use, they have no issues etc. But … I was burnt badly by SourceSafe, so for me SourceSafe is just not an option, ever. I do have other issues and concerns with SourceSafe but as it happens Mike Hadlow sums them up rather nicely (copied here for simplicity – tx Mike):

  • Commits are not atomic. If a file is changed you have no way of linking a set of file changes that implement a particular feature or fix a bug.
  • Lacks usable branching support.
  • It doesn’t keep a history of file renames. If you rename a file and than get a version previous to the rename, the file will have the new name.
  • Permanently deleting a file also deletes its history. This means that versions of the software prior to the deletion are not valid.
  • Requires a file share to work and does not perform well over slow connections.
  • Randomly corrupts its own database.
  • Many other issues, detailed here.

In contrast Team Foundation Server (TFS) is a very fine, modern source control system (and a lot more) that we use very successfully on our own internal projects. Check out this post on TFS adoption at Microsoft. Yep, over 14000 users, 43 million files and 2500 projects. I think we can safely say it works!

BUT … is TFS prohibitively expensive given it delivers much more in the box than just source control? The expectation of companies I meet is that it will cost a lot more. Lets look at the numbers for “small” and “larger” development teams.

Small Development Teams: 1 to 5 users

It turns out that the ‘cheapest’ way to get a copy of TFS is to buy a copy of Team Developer. Purchased without an MSDN subscription, this will come in at somewhere in the region of £3,350. The Team Developer license allows a copy of TFS Workgroup Edition to be installed, which can then be used by up to a total of 5 users. This means that 4 additional users in effect get TFS access for free. The cost is therefore:

  • Two person team: in the region of £1,675 per person
  • Five person team: in the region of £670 per person
  • In comparison, SourceSafe costs about £340 per person. 

TFS is approximately double the cost of SourceSafe for a five man team. However that extra money buys you peace of mind (see my experiences above), a more capable source control system and all of the benefits of TFS:

  • work item tracking
  • reporting
  • enterprise source control and a portal
  • Team Build which allows things like Unit Testing, Code Coverage Testing and Code Analytics to be run as part of the build process.

Larger Development Teams: 6 users and above

What happens when you go above five users? At that point you need to buy a TFS License as the Workgroup Edition is limited to 5 users. All of the users (including the original four ‘free users’) also need a TFS client access license. A TFS Server license will cost somewhere in the region of £1,850. TFS CALs are in the region of £485. Which means:

  • Twenty person team: the ‘basic’ TFS Solution (i.e TFS server plus CALs) is in the region of £11,500 (£575 per person)
  • In comparison a SourceSafe solution is in the region of £6,800.

Ultimately TFS is more expensive than SourceSafe but I don’t think it is prohibitively so. IMHO with TFS the extra spend is easy to justify as it gets you a far better source control system plus a lot more to help teams deliver great solutions.

But what about Subversion?

I can hear some of you now saying “Interesting Eric, but … Subversion is free?”. Absolutely true but remember that Subversion is ‘just’ a Source Control solution, where as TFS manages the whole of the development lifecycle (or ALM - Application Lifecycle Management). With Subversion you would need to “stitch” together a number of different tools (either commercial or free) to create a level of functionality equivalent to TFS. Fun to do but that takes time and effort that simply isn’t needed with TFS.

Posted on Thursday, April 9, 2009 2:58 PM Misc , UK | Back to top


Comments on this post: How much does Team Foundation Server REALLY cost vs SourceSafe?

# re: How much does Team Foundation Server REALLY cost vs SourceSafe?
Requesting Gravatar...
Agreed, TFS provides much more than just S/C. But what a shame you can't buy just the S/C features to get started!

VS has a nice smooth "upgrade" path: Express (free) -> VS (£250) -> VS Pro (£750) -> MSDN Sub (£1200).

This lets a small company grow, and allows hobbyists to explore.

If TFS *starts* at over £3000, that's an awfully high first step! Faced with that, a small company is almost always going to pick Subversion/VSS. And of course, once a company has its source in one system, there is inertia against switching, even if it can by then afford to.
Left by Stu Smith on Apr 09, 2009 4:24 PM

# re: How much does Team Foundation Server REALLY cost vs SourceSafe?
Requesting Gravatar...
Hi Stu - how you doing?

I find myself in 100% agreement. I think Sourcesafe vs TFS pricing looks ok for 5 person teams and above. But for smaller teams TFS is a lot more. What I would like to see is a TFS Express edition which is source control only (+ maybe some tasters) and is targeted at small teams who just want to stop using SourceSafe :-)
Left by Eric on Apr 09, 2009 11:58 PM

# re: How much does Team Foundation Server REALLY cost vs SourceSafe?
Requesting Gravatar...
Hi Eric, doing well ta.

It's true, everywhere I've ever worked we've used cobbled together systems that "sort of" work. (At my last job I knocked up a very rough-and-ready bug graphing system, running ouff our in-house bug-tracking system, so we could all see whether we were making progress or not). For a "lead dev" role, being able to properly tie together and visualise S/C, bugs, features, and so forth would be fantastic.

If MS could introduce a stepped approach to TFS (both in terms of price and features), they'd make a lot of people and companies very happy. I'll keep my fingers crossed.

Hope you have a good Easter!

Stu
Left by Stu Smith on Apr 10, 2009 11:53 AM

# re: How much does Team Foundation Server REALLY cost vs SourceSafe?
Requesting Gravatar...
Very interesting article Eric.

We don't currently have any source control in place and have been looking at all three of the options you present.

I know you are not a licensing man but I was interested to see your prices were without subscription to MSDN.

Well, we have MSDN. How does that affect the pricing?
Left by Nick Allport on Apr 14, 2009 11:51 AM

# re: How much does Team Foundation Server REALLY cost vs SourceSafe?
Requesting Gravatar...
We have just licensed Team Foundation Server 2008 for our team of 12-15. I think there is some great potential in the product that is yet to be unlocked - the out the box product isn't ideal.

Regarding source control, we have just set up a branching/merging strategy for our projects and really like how TFS works - anything the IDE cant do, such as moving multiple files from one directory to another, your trusted command line app TF.EXE will help! :)

Looking forward to VSTS 2010 and really hope that there will be some major improvements!
Left by Tom Hall on Apr 27, 2009 10:15 PM

# re: How much does Team Foundation Server REALLY cost vs SourceSafe?
Requesting Gravatar...
Interesting. You may also try SCM Anywhere, which is a SQL Server-based software configuration management (SCM) tool with fully integrated version control, bug tracking and build automation.

More info: http://www.scmsoftwareconfigurationmanagement.com/

It's only $289.00/user.

Best.

Left by Catherine on May 19, 2009 9:27 AM

# re: How much does Team Foundation Server REALLY cost vs SourceSafe?
Requesting Gravatar...
Subversion, or better yet Mercurial or git, are open source alternatives that are rock solid. Mercurial and git in particular offer distributed SCM, something which TFS does not offer as far as I know... and once you try DSCM, you'll never go back.

As for the claim that you need to expend lots of effort to get multiple tools to work to get TFS's functionality... balderdash. Check out Redmine and Hudson. That is two - count them, 2 - tools that will give you project management and automatic continuous integration. And the raves about these two open source tools are very good.

I've used all three personally, and would choose them every day over ANY proprietary solution.
Left by Ahmed on Nov 12, 2009 3:01 AM

# re: How much does Team Foundation Server REALLY cost vs SourceSafe?
Requesting Gravatar...
Thanks for taking the time Ahmed.
Left by Eric on Nov 12, 2009 10:13 PM

# re: How much does Team Foundation Server REALLY cost vs SourceSafe?
Requesting Gravatar...
In my experience, git or Mercurial are far better tools for that kind of task. I've been using subversion since 2001. TFS is mostly a subversion clone.

But what git and Mercurial get right (and TFS NOT) is efficient and almost conflict-free branching and merging. This allows it to separate features in different branches and small, isolated commits. Also, the distributed nature of these systems means that they are very fast. And this means that work time of developers is spent more efficiently. It also means that you don't have the catch 22 of either developers submitting prematurely to a integration repository (thereby disrupting the work of others) or accumulating changes and then commit large, partly unrelated changesets way too late (which inibiting efficient merges which are needed precisely when you are going to need them in order to ship your product.)

Read http://www.joelonsoftware.com/items/2010/03/17.html

for more details on this.

And the whole thing with "Application Lifecycle Management" ... to be honest, that sounds a bit like bullshit bingo to me. Integration of tools for different tasks isn't necessarily a good thing, and in this case, I see no convincing reason. In the case of TFS, Microsoft is at least eleven years behind the distributed alternatives. It's like having missed the invention of the internet.

Left by Zafolo on Oct 02, 2010 12:26 PM

Your comment:
 (will show your gravatar)


Copyright © Eric Nelson | Powered by: GeeksWithBlogs.net | Join free