How to implement a multiple team strategy in Team Foundation Server 2013

Lately I have been working with several customers who are exploring a multiple team strategy when creating projects within Team Foundation Server. As these conversations have progressed they follow a common theme. There are some good MSDN articles that help you setup teams, groups, areas, etc. but I was not able find an article that walks through the entire process for the scenario I was encountering. So I decided I may as well write one of my own for others to take advantage of.

Scenario // 

For the customers I work with, most of the teams have more work than they can handle and need some visibility into their overall work pipeline. Many times a request or change will come from a project managers or user, but they are not sure what team or project it should be assigned to. Setting up a single project team strategy would be hard in this case as it is difficult to share product backlog items (pbi, or user story if you are using agile template) across team projects within TFS. As a solution, we will use a multiple team strategy under a single team project. We will collect the pbi's and place them in an oversight queue that will be reviewed by either an individual or committee. Then these pbi's will get moved as they get assigned to teams and projects. We also need to setup security in way so that the individual teams don't have permissions to get in and monkey around with other teams backlog, queries, or code. 

Download // 

Download the document to walk through the entire scenario. You may not need the level of security as documented, but if you are setting up a multiple team strategy in TFS it's good to understand the concepts, capabilities, and restrictions.

Download the Multiple Teams Walk through using Team Foundation Server 2013

Other Good Resources // 

Visual Studio TFS Team Project and Collection Guidance

Agile Portfolio Management whitepaper

Add another team

Add team members

Portfolio backlogs

Creating groups for restricting access