Hi. Really sorry if this comes up a lot but I am migrating our team from TFS2010 to 2013 and I am using the opportunity to make some changes, basically a re-implementation. I am reasonably experienced in TFS and I have seen it used in horrible ways in the past. I understand that there is no single solution as it simply varies based on who you are and what you do.
I have done a lot of research online and I have read a lot from the ALM rangers and I have a proposed setup that I just want to run past a few of you to sense check. If you have any suggestions, please say so.
Company Info:
We are a team of 15-20 developers and we are an online eCommerce business with 3 teams: Front-end, Back-end and PHP (for other businesses). We have a suite of .NET applications which we regularly enhance and defect fix and we are agile (or trying to be at least!). Our customer is the business and the PBIs and defects are driven predominantly by them
Our work:
We will have many different projects ongoing at a single time and we will also run defect sprints regularly. For example, it is possible for a member of Team 1 to be working with someone from Team 2 on Project A, 2 developers from Team 1 to be working on project B whilst at the same time different developers from Teams 1,2 & 3 each have their own teams monthly/bi-weekly defect sprints.
Current setup:
With TFS 2010, we have 1 Team Project Collection with multiple Team Projects. A Team Project represents a .NET Application (as a VS Solution). We have 1 Area per Team Project which is just the same name as the TP. Teams from front and back end generally have their own solutions but there is some overlap. We do not currently use TFS for work item and defect management, we use another system.
My plan:
I plan to use 1 TFS Team Project Collection with 1 TFS Team Project and I plan to make use of TFS work item and defect management. This team project will use Areas to represent our physical software splits (These are individual .NET solutions and we have about 10). The important thing (and the part I have found most difficult) is that we need to be able to manage multiple backlogs. I plan to enable the Team field in TFS like this: https://msdn.microsoft.com/en-us/library/dn144940.aspx and use 'Teams' to represent an agile scrum team. I plan to use the default Scrum template.
In order to facilitate this, I plan to create the following teams (The BAU teams are for defect and small feature sprints):
- Back-end BAU Team
- Front-end BAU Team
- PHP BAU Team
- Project A Team
- Project B Team
- Project xxx Team
Where there will be a new team created for each physical project that we work on. Each project will have multiple sprints and each BAU team will contain multiple sprints. The first 3 teams will constantly have sprints progressing whilst the other teams will complete and eventually be archived.
Basically this whole write up here results to one question: does this sound like proper use of the team field or have I misused it here?
I'd appreciate and comments or suggestions you have.
Many Thanks
Rod