Backlog Planning Using Team Foundation Server (TFS)

With new tools coming onto the market, there are increasing numbers of options for companies to use out-of-the-box functionalities for better planning of Agile projects. I have been using Team Foundation Server (TFS) for managing Agile projects, and I would like to share my experiences. I use TFS along with MS Project and MS Excel for Backlog Planning. TFS projects are created using MSF for Agile Software Development 6.2 Template.

Below are the steps to follow for backlog planning:

1. Define iterations in TFS:

2. Create areas in TFS:

I usually create two areas, namely "Product Backlog" and "Defect Backlog." All user stories are created under Product Backlog, and bugs go under Defect Backlog.

3. The product owner creates user stories in TFS and provides a "Stack Rank" to all the stories:

Note: User stories are created in the Default Area and Iteration Path. The figure shown above is a Tree Query, to show all the user story work items in the current project.

4. Export the TFS query in MS Excel and initiate a requirement grooming session with the team and product owner:

5. Have a Planning Poker session, after you have an understanding of the requirement. The outcome of this session should be to have story points for all user stories.

After entering the story points, click on "Publish" to update the data into TFS.

6. Have a release planning session to break down user stories into smaller, more meaningful chunks. The outcome of this session should be smaller user stories and an iteration-wise release plan for these user stories.

Using "Add Child," new user stories linked to parent user stories can be created.

Publish the release plan to TFS using the "Publish" feature in the "Team" tab.

7. Export the query to MS Project. Break up the user story into tasks and create a plan for the iteration. Publish the plan to TFS using the "Publish" feature in MS Project.

The duration committed in MS Project is linked to the "Remaining" field in the "Efforts" section.

8. Refresh Excel and all tasks will be updated. By default, the duration estimated is not shown in the Excel file. Select "Choose Column" and add "Remaining Work."

A similar breakdown should be done for other user stories. The output of this exercise gives us data points to use to assess the release plan and modify it if required.

The data below comes out of this exercise:
Iteration-wise effort available versus effort planned:

The graph shows that less work is planned for Iteration 1 and more for Iteration 2. The release plan can be updated accordingly to have a balance in effort availability. This data point can be updated at the start of every iteration for analysis.

Another analysis gives a trend on how the estimates (story points) convert to efforts in hours:

This analysis shows how effort varied with story points. High-level estimation can be derived with the velocity of the sprints using this. An input from this can be used for resource planning of future sprints.

Disclaimer: I am a user (not a developer) of TFS in my organization, and the process documented above comes from the user perspective.

Tags:

Opinions represent those of the author and not of Scrum Alliance. The sharing of member-contributed content on this site does not imply endorsement of specific Scrum methods or practices beyond those taught by Scrum Alliance Certified Trainers and Coaches.

Article Rating

Current rating: 3.1 (9 ratings)

Comments

Thanks I have been using Team Foundation Service (the managed service version not server) because I can access it anywhere and the service comes with the Scrum template for free (teams of less than 5 that is).

Personally I rate TFS's scrum template because out of the box it works were by other products like Jira and Target Process require a lot of configuration to make the workflow work very well. Though still a big fan of ScrumWise which also just works.

Have a go with the Scrum template in TFS because it will make planning, organising and monitoring so much easier thanks to the dashboard, management flow etc.

Have a look here: http://msdn.microsoft.com/en-us/library/vstudio/ff731587.aspx

It seems the Scrum template was born out of MS's adoption of the Scrum process used in developing visual studio.

We use TFS2010 (moving to 2012 now). Several pain points: Visualisation of Product Backlog. Visualisation of Story Board. Visualisation or Hierarchy and Dependencies of Product Backlog Items. Fragmentation of User Experience-> import/export to Excel to do analytics.

I also use these processes for tracking sprint progress in TFS 2012; however, I am accustomed to setting these projects up in the Agile process template. There is an initiative to make the Scrum process template the default; I am finding the Scrum process template less flexible. What process template are your projects set up in?