TFS 2010 Burndown, Completed Work, and Remaining Work–“Zero” is the Magic Number

As the leader of your agile project, you’ve been tasked by management to keep your project running and ensuring that you can accurately ascertain what work is completed vs. what is still not completed.  In my previous post, Soup to Nuts – TFS 2010 Agile Iteration Backlog Workbook utilized in the Real World, I shared with you how to manage keeping your project running smoothly using the Excel workbooks provided as part of the MSF Agile Process Template.

In  your recent Sprint Review, you demo’d all the “work” accomplished in the sprint and everything set forth was completed.  Then, as is with most Agile teams, you focused on how things went in the Sprint Retrospective.  BAM!  You noticed that your burn down chart was not equaling zero and you can’t understand how this was missed by your teammates.

Remaining Work, meet project manager, project manager meet Remaining work.  You can if you like run a simple TFS query on a regular basis that would tell you if any of your evil teammates failed to set their work to zero.  This causes this issue where your burn down doesn’t equally reality.


NOTE:  If the remaining work is not (!=) then you should go see the teammate.  This is another post for another day.

In today’s post, I wanted to share with  you how to effectively set your Work Item Template to avoid this from occurring It is possible to ensure that any work item, whether it be task or bug, is to setup that during the transition from Active to Resolved/Closed that the remaining work is set to “0”.  This will be the focus of our post today.

Editing your Work Item Template – Setting up Action on Transition to Resolved and/or Closed

In this first step, we will open the “Task” work item type for a specific project using the TFS Process Template editor which is available as part of the TFS Power Tools.

  1. Open Visual Studio
  2. Click Tools, Process Editor, Work Item Types, and then Open from Server (See Note Below)image
  3. If not connected, choose the collection when prompted
  4. For the project you’d like to edit, select the work item type you’d like to edit (e.g. Task, Bug, etc.)
  5. Click the Workflow Tabimage
  6. Right-click on the top Transition (there should be a couple if using Task or Bug)image
  7. Under Open Details, click Fields tab


It is imperative that you maintain a copy of your work item templates. For our environment, we store them in Source Control to ensure that we always have relevant changes in case anything happens. Because of this, it is highly recommended that you do not edit directly on the Server and instead that you export your WIT and edit offline.

Adding Microsoft.VSTS.Scheduling.RemainingWork Rule to Zero

To ensure that no project hours remain on the item, you do the following to add a rule to set Remaining Work to zero.

  1. Click New
  2. For Field Reference, in the dropdown select Microsoft.VSTS.Scheduling.RemainingWorkimage
  3. Click Rules
  4. Click New
  5. Select Copy from a Select a Rule Type image
  6. For the copy rule, set From: to equal value and the value to 0image
  7. Click OK
  8. Click OK
  9. Click OK

After you’ve successfully updated this value, your Workflow Transition list should now have Remaining Work in the list!  Time to test….


Testing Your Change – Create New Task in Project & Watch it in Action

This is the real test.  If you’ve followed these instructions closely you’ve learned how to easily and effectively save yourself some grief and even some of your teammates.  To test this, you’d create a new work item and save it.  After saving, move it to the next transition (in this case, Closed) and when you do this you will see the remaining work get Zero’d out.


It’s as easy as 1..2..3.  If it was, we’d all be doing it and since this isn’t the case I thought I would share with my fellow TFS buddies how to ensure that the software projects they are managing doesn’t have non-zero work items floating around.  Here’s to projects who end smoothly each sprint with no remaining work!