Changes between the 2012 Update 2 and the 2013 RTM Process Template

EDIT 10/25/2013: Added the step to add git to the Process Template

In TFS 2013 we have added the portfolio backlogs to manage the work one level above the product backlog. The shipped templates contain one portfolio level called the Feature backlog, but you can customize what shows up in the portfolio following the article “Add a backlog to Agile portfolio management”. This blog post describes the differences between the 2012 version of the process templates and the 2013 version and how you can upgrade your custom template. If your current version of TFS is 2012 RTM or 2012 Update 1, you might want to first follow the steps to upgrade your team project to 2012 Update 2.

If you are interested to upgrade your team project, you can use these steps, but it is much easier to use the Configure Feature wizard.

In this release we have made these changes to the process templates:

  1. Added Feature work item type definition
  2. Added FeatureCategory work item category
  3. Merged the files AgileConfiguration and CommonConfiguration into a single file called ProcessConfiguration
  4. Added the Feature Portfolio backlog to the ProcessConfiguration
  5. Added git support
  6. Updated the Progress and Overview reports. See also Update your Overview and Progress reports to support the Portfolio backlogs for more information why we did this change

How to get the files discussed in the post

To get a local copy of the files used in this post, download the process template that matches your process templates best to your local disk. This post assumes the downloaded process template is stored in the local folder “c:ptshipped”. Also the blog post assumes the location of your custom process template is stored at “c:ptcustom”.

Add the Feature work item type

  1. Copy the file Feature.xml from “c:ptshippedWorkItem TrackingTypeDefinitions” to “c:ptcustomWorkItem TrackingTypeDefinitions”
  2. Open the file “c:ptcustomWorkItem TrackingTypeDefinitionsWorkItems.xml” in the editor of your choice
  3. Add the following line to the WORKITEMTYPES section
         <WORKITEMTYPE fileName=”WorkItem TrackingTypeDefinitionsFeature.xml” />
  4. Save the file “WorkItems.xml”

Add the Feature category

  1. Open the file “c:ptcustomWorkItem TrackingTypeDefinitionsCategories.xml” in the editor of your choice
  2. Add the following lines to the file
      <CATEGORY name=”Feature Category” refname=”Microsoft.FeatureCategory”>
        <DEFAULTWORKITEMTYPE name=”Feature” />
  3. Save the file “Categories.xml”

Merge the AgileConfiguration and CommonConfiguration into ProcessConfiguration

  1. Rename the file “c:ptcustomWorkItem TrackingProcessCommonConfiguration.xml” to “ProcessConfiguration.xml”
  2. Open the file “c:ptcustomWorkItem TrackingTypeDefinitionsWorkItems.xml” in the editor of your choice
            <CommonConfiguration fileName=”WorkItem TrackingProcessCommonConfiguration.xml”/>
            <AgileConfiguration fileName=”WorkItem TrackingProcessAgileConfiguration.xml”/>
            <ProjectConfiguration fileName=”WorkItem TrackingProcessProcessConfiguration.xml”/>
  4. Save the file “WorkItems.xml”
  5. Open the file “c:ptcustomWorkItem TrackingProcessProcessConfiguration.xml” in the editor of your choice
  6. Rename the root node from (don’t forget the closing tag in the bottom of the file!)
  7. Update the node RequirementWorkItems
           <RequirementWorkItems category=”Microsoft.RequirementCategory” plural=”Backlog items”>
           <RequirementBacklog category=”Microsoft.RequirementCategory” pluralName=”Backlog items” singularName=”Backlog item”>
  8. Update the node TaskWorkItems
           <TaskWorkItems category=”Microsoft.TaskCategory”>
           <TaskBacklog category=”Microsoft.TaskCategory” pluralName=”Tasks” singularName=”Task”>
  9. Update the node FeedbackRequestWorkItems
         <FeedbackRequestWorkItems category=”Microsoft.FeedbackRequestCategory” plural=”Feedback Requests”>
         <FeedbackRequestWorkItems category=”Microsoft.FeedbackRequestCategory” pluralName=”Feedback Requests” singularName=”Feedback Request”>
  10. Update the node FeedbackResponseWorkItems
         <FeedbackResponseWorkItems category=”Microsoft.FeedbackResponseCategory” plural=”Feedback Responses”>
         <FeedbackResponseWorkItems category=”Microsoft.FeedbackResponseCategory” pluralName=”Feedback Responses” singularName=”Feedback Response”>
  11. Add the work item colors (optional)
             <WorkItemColor primary=”FF009CCC” secondary=”FFD6ECF2″ name=”Product Backlog Item” />
             <WorkItemColor primary=”FF773B93″ secondary=”FFEEE2F2″ name=”Feature” />
             <WorkItemColor primary=”FFF2CB1D” secondary=”FFF6F5D2″ name=”Task” />
             <WorkItemColor primary=”FFCC293D” secondary=”FFFAEAE5″ name=”Bug” />
             <WorkItemColor primary=”FFFF9D00″ secondary=”FFFCEECF” name=”Code Review Request” />
             <WorkItemColor primary=”FFFF9D00″ secondary=”FFFCEECF” name=”Code Review Response” />
             <WorkItemColor primary=”FFFF9D00″ secondary=”FFFCEECF” name=”Feedback Request” />
             <WorkItemColor primary=”FFFF9D00″ secondary=”FFFCEECF” name=”Feedback Response” />
             <WorkItemColor primary=”FFFF9D00″ secondary=”FFFCEECF” name=”Impediment” />
             <WorkItemColor primary=”FFFF9D00″ secondary=”FFFCEECF” name=”Shared Steps” />
             <WorkItemColor primary=”FFFF9D00″ secondary=”FFFCEECF” name=”Test Case” />
  12. Open the file “c:ptcustomWorkItem TrackingProcessAgileConfiguration.xml” in the editor of your choice
  13. From the AgileConfiguration, copy the Columns and AddPanel sections from the ProductBacklog node, and paste it to the RequirementBacklog node in the ProcessConfiguration file.
  14. From the AgileConfiguration, copy the Columns section from the IterationBacklog node, and paste it to the TaskBacklog node in the ProcessConfiguration file.
  15. Save the file “ProcessConfiguration.xml”
  16. Delete the file “c:ptcustomWorkItem TrackingProcessAgileConfiguration.xml”, as it is no longer used

Add the Portfolio backlogs to the ProcessConfiguration

  1. Open the file “c:ptcustomWorkItem TrackingProcessProcessConfiguration.xml” in the editor of your choice
  2. Add the following lines 
        <PortfolioBacklog category=”Microsoft.FeatureCategory” pluralName=”Features” singularName=”Feature”>
            <State value=”New” type=”Proposed” />
            <State value=”In Progress” type=”InProgress” />
            <State value=”Done” type=”Complete” />
            <Column refname=”System.WorkItemType” width=”100″ />
            <Column refname=”System.Title” width=”400″ />
            <Column refname=”System.State” width=”100″ />
            <Column refname=”Microsoft.VSTS.Common.BusinessValue” width=”50″ />
            <Column refname=”System.Tags” width=”200″ />
              <Field refname=”System.Title” />
  3. Save the file “ProcessConfiguration.xml”

Add git support

  1. Open the file “c:ptcustomVersion ControlVersionControl.xml” in the editor of your choice
  2. Add the following lines  in the taskxml secion. If you don’t want to use these defaults, you can specify your own permissions
            <permission allow=”GenericRead, GenericContribute, ForcePush, Administer, CreateBranch, CreateTag, ManageNote” identity=”[$$PROJECTNAME$$]$$PROJECTADMINGROUP$$” />
            <permission allow=”GenericRead, GenericContribute, CreateBranch, CreateTag, ManageNote” identity=”[$$PROJECTNAME$$]Contributors” />
            <permission allow=”GenericRead, GenericContribute, CreateBranch, CreateTag, ManageNote” identity=”[$$PROJECTNAME$$]Build Administrators” />
            <permission allow=”GenericRead” identity=”[$$PROJECTNAME$$]Readers” />       
  3. Save the file “VersionControl.xml”

Note: if you want to update a process template that was shipped before VS 2012, you need to use the security group Builders instead of Build Administrators.

Update the reports

  1. Open the folder “c:ptshippedReports”
  2. Copy the files “____ Overview.rdl” and “____ Progress.rdl”files
    NOTE: the name of the rdl file depends on the process template. Also be aware that the Scrum template does not have the Progress reports
  3. Paste the files in “c:ptcustomReports”


Upload the new process template

Now that you have updated your process template, you want to upload it to the collection.