by jesfer 26. June 2012 16:18

Starting with TFS 2012 we are now faced with the options of using either Team Foundation Server or Team Foundation Service as our ALM platform of choice. The big question is which one to choose. One is installed locally while the other is hosted in the cloud. This is an important difference but not the only one you need to consider. I'll list the most important points to consider here.


The cloud

If for some reason you are not allowed to handle your work items or source code in the cloud then Team Foundation Service is out of the question as it is based on Microsoft's Windows Azure platform.


Installation and administration

Installing Team Foundation Server has become much easier than it was back in 2005 but can still be a bit tricky. Using Team Foundation Service is basically a matter of supplying a name for your instance. If you dont want the hassle of server installation and administration then you should consider Team Foundation Service.



Process templates are not customizable in Team Foundation Service. If you think you will have to make adjustments to the process template (like adding new fields to work items) then you probably want to go with Team Foundation Server instead. Unless you are ready to wait, because this will change in the future.


Document management

If you want solid document management features then Team Foundation Server is the way to go as it includes Sharepoint. Team Foundation Service currently has no document management features. This will change in the future with Office 365 integration (see Brian Harry's first response in the comments).



One of the many nice features of Team Foundation Server is all the reports you get out of the box. Apart from sprint burndown charts you get no reports at all in Team Foundation Service. This might be perfectly fine for some or a complete deal breaker for others. This will probably change in the future but I've been unable to find anything to support this claim. Windows Azure SQL Reporting is available though so hopefully only a matter of time before it is integrated into the Team Foundation Service offering.


Price tag

There is actually a pricing preview for Visual Studio 2012 (and Team Foundation Server)  but very limited information about Team Foundation Service pricing.


There are other differences but this should cover the most important aspects. If you want to dig deeper, have a look at the Team Founation Service whitepaper.

Tags: , ,


Bug fix for SharePoint document links in VS vNext

by jesfer 16. June 2011 09:05

Submitted another bug to Microsoft, this time regarding the fact that you cannot edit a SharePoint document opened from a work item in the VS IDE. After I submitted a screen capture of the bug yesterday Microsoft has confirmed that this is a bug in VS ALM 2010. The good news is that they will fix this in VS vNext where “we now launch the external browser rather than the internal VS browser when opening hyperlinks”. Until vNext arrives we will have to use work arounds. Fortunately there are several of those. Because the source of the problem is the VS internal browser opening the document in any other way you can think of does not cause this bug to appear.

Tags: , , ,

TFS | Troubleshooting

TFS Power Tool bug fix

by jesfer 16. February 2011 14:43

Back in October I submitted a bug to Connect regarding the Process Editor and the fact that it makes background changes to the WIT xml files without notifying the user. Yesterday Microsoft posted a reply that this will be fixed in the next version of TFS Power Tools. When the next version will be released is not known, but February and Q1 2011 has been mentioned. I can’t wait, it is going to save me some serious headaches when editing work items! 

Tags: , ,

TFS | Troubleshooting | Power tools

Misleading error message when setting up TFS Warehouse

by jesfer 18. November 2010 14:02

Encountered a stupid error message yesterday. Had a TFS 2010 instance where reporting services had been disabled. When trying to enable it again we got an error message saying "Object reference not set to an instance of an object". SQL instance was correct, database names (Tfs_Warehouse and Tfs_Analysis) were correct and I had a valid username and password for the TFSService account. However, as the original installation was done properly, using the TFSReports account for reporting services, we got this error message when trying to re-enable reporting services.

Now, even though the error was "correct", I would have appreciated an error message that was a little bit more informative... 

Tags: ,

TFS | Troubleshooting

TFS Azure

by jesfer 29. October 2010 12:58

Yesterday at the PDC keynote it was announced that a CTP of TFS on Windows Azure will be avilable in early 2011. From what I've seen soo far this looks really interesting. All the new Azure stuff should provide som very interesting benefits. I'm envisioning a really simple way to handle virtual machines for Lab Management, build servers, load test etc. And no more worries about single or multi server deployment. Cant wait to hear more about this!

Tags: , ,


ASP.Net vulnerability affects TFS

by jesfer 24. September 2010 08:39

All versions of TFS are affected by the security vulnerability discovered recently. Brian Harry has blogged about this and attached a document on how to work around this problem until a patch is released. If you are a TFS admin you have some work to do...

Tags: , , ,

ASP.NET | TFS | Troubleshooting

Work Item Link Filters

by jesfer 20. August 2010 13:20

Interesting fact regarding work item link filters when working with the Process Editor to create a new process template:

"Include all" does not equal "Include" + selecting all link types.

  • "Include all": link types from all installed process templates will be shown to the users.
  • "Include" + check all boxes: Only the links types in the current process template will be shown to the user.

In my experience, "Include all" is never a good option for a work item link filter. It will only serve to confuse users and break reports. But when working with the Process Editor "Include" restricts your selection of link types to only include those specified in you process template. If you want to use link types from your template and some of the system defined link types (like parent/child) you will have to edit the XML markup manually.

Tags: , ,


TFS Backup Plan

by jesfer 20. August 2010 07:53

Brian Harry recently blogged about a cool new feature in the next version of TFS Power Tools (no date yet). Backing up and Restoring your TFS Server is the most exhaustive post and makes for some interesting readin while Backing up your TFS Server with Sharepoint and Reporting more or less just states that you can backup the Sharepoint and Reporting parts of TFS as well.

Now, lets hope they add a tool for restoring the backups as well Smile

Tags: ,


Messing up TFS with LinkControls and Fields

by jesfer 18. August 2010 14:28

I recently stumbled across a interesting case using TFS 2010 where you could end up unintentionally setting a field on a work item that is not supposed to use the field at all. This is probably best explaned with a simple example.

Lets say you team project is based on the MSF for Agile v5 template. You want to modify the Task WIT so that the LinkControl in the Links tab includes a column for severity. This way, whenever a Task is linked to a Bug you will know the severity of the bug without opening it up. Perfect! Lets do it!

I'll skip the details of how to do this, the interesting part is that even though Task does not use the field Severity you will need to add it to the Task WIT in order to show it as a column in the LinkContol. Name, Field type and Ref name must be identical to what is used in the Bug WIT. And this is where you might make a small but potentially very annoying mistake. If you also copy the rules of this field from the Bug WIT (easily done if you copy/paste between XML-files or if you are just very thorough and decide to specify the field exactly as it is on the Bug WIT) all your Tasks will from now on be asigned the severity level "3 - medium".

And why is this bad? Well, you'll probably not notice it for some time. If you are lucky you wont ever notice it and if so, good for you! But chances are that sooner or later someone will get a very wierd result from a work item query or report. Lets say you have a report that counts the number of bugs of each severity level. Depending on the laziness of the person who designed the report, it might not check the work item type because only bugs used to have a severity level... and now this report is telling you that the number of bugs of severity level "3 - medium" is increasing at an alarming rate!

Good news is this that the mistake is fairly easy to solve. Remove all rules for the severity field on the Task WIT, create a query to return all tasks with severity "3 - medium", export to excel, remove severity value from all tasks and publish the changes back to TFS. Done! Unless your report keeps track of history as well...

Tags: ,


Another reason for moving to TFS 2010

by jesfer 16. August 2010 17:07

Recently one of my clients (who uses TFS 2008) encountered the TF14083 warning when merging two branches. This is the warning message:

The item '{0}' has a pending merge from the current merge operation, please resolve and check in the current merge and merge again to pick up this change.

In most cases this is nothing to worry about, all you need to do is just what it says in the message. Resolve, check in and merge again.
But a cautious user might start to think along the lines of "so,what happens if the second merge fails? I've already checked in the first part of the merge!". The simple answer would be that you do a rollback to the previous changeset using TFS 2008 Power Tools.
However, in TFS 2008 the rollback will only rollback the actual changes but the merge history will not be affected and this will cause trouble when you try to redo the merge operation as TFS believes the two branches have already been merged. You can probably solve this dilemma by doing the merge using TFS command line tool and use the /force option but by now most people are thinking something along the lines of "this is stupid, TFS should be able to handle all this".

And if you move to TFS 2010 it can! Not only has one of the main reasons for the error above been fixed, but rollback is now part of the standard TFS command line tools and has an option for keeping merge history or not. There, another good reason why you should move to TFS 2010! Smile 

Tags: , ,

TFS | Troubleshooting

About me

My name is Jesper Fernström, I live in Uppsala, Sweden. I work as an ALM and TFS expert at Solidify. I'm also a Professional Scrum Trainer with and a member of the Visual Studio ALM Rangers.


Solidify’s processes for software development allow you as a development manager, CIO or business developer to focus your resources effectively. The result is more software of better quality, produced faster and at a lower cost. Solidify has received Microsoft Western European ALM Partner Awards five years running.


Month List