Migrating Scrum for Team System 3.x to MS Scrum 2.0

 A lot of you have probably used the Scrum for Team System process template from Conchango in previous versions of Team Foundation Server (pre 2012). Scrum for Team System is now an open source project on Codeplex and I haven’t seen any plans to a TFS 2012 versions. For those of you wanting to use the new TFS 2012 features I have two recommendations:

  1. The easiest way is to create a new TFS project and start using it
  2. If you want to upgrade an existing project read my blog below.

Download Work Item type definitions

  1. Download the process template for MS Scrum 2.0 and Scrum for Team System 3.0x with the Process Template Manager for example to C:MyDownloadedTemplates.  If you have modified the Scrum for Team System with fields of your own you should download those instead.

Change Work Items

  1. Identify and copy fields that you use that differ from Scrum for Team System to the MS Scrum Work Item definitions and identify the state changes between the templates. Some of them also include name changes of the Work Item type definition. If you have added fields of your own you should also include them.
Conchango WI MS Scrum WI Field mapping States mapping
Product backlog item Product backlog Item
  •   Business value (Scrum) – Business Value
  •   Storypoints – Effort

 

 

  •   In progress – Comitted
  •   Not Started – New
  •   Deleted- Removed
  •   Descoped-Removed
  •   Broken –  Removed
  •   Depricated – Removed
Sprint backlog task Task
  • Task Priority (Scrum) – Backlog Priority
  • Work Remaining (Scrum) Remaining Work
  •   Task Priority (Scrum) – Backlog Priority
  •   Work Remaining (Scrum) Remaining Work
  •   Not Started – To Do
  •   Deleted – Removed
  •   Descoped – Removed
Bug Bug  
  •   Active – New
  •   Ready For Test – Done
  •   Closed – Done
  •   Deleted – Removed
  •   Ignored – Removed
Acceptance test Test Case  
  •   Not Implemented – Design
  •   Deleted – Closed
  •   Ready for Test -Ready
  •   Passed – Ready

 

 

Here is what the PBI modification may look like

Here is what the Task modification may look like. Note that I have changed the name of the MS Scrum Task to Sprint Backlog Task so that is will overwrite the existing WI definition, it will be renamed later.

 

Upload Work Item Type definitions

Upload the modified WIs from the MS Scrum template to the project that is to be modified with witadmin.exe.

1. Start a Visual Studio command prompt and run the command below

CD C:MyDownloadedTemplatesMicrosoft Visual Studio Scrum 2.0WorkItem TrackingTypeDefinitions

2. Upload the product backlog Item WI

witadmin importwitd /collection:http://MYTFSSERVER:8080/tfs/MyCollection /p:”MyProject” /f:”ProductBacklogItem.xml”

3. Upload the Task WI

witadmin importwitd /collection:http://MYTFSSERVER:8080/tfs/MyCollection /p:”MyProject” /f:”Task.xml”

4. Change name of the WI from Sprint Backlog Task to Task

witadmin renamewitd /collection:http://MYTFSSERVER:8080/tfs/MyCollection /p:”MyProject”  /n:”Sprint Backlog Task” /new:”Task”

5. Upload the Bug WI

witadmin importwitd /collection:http://MYTFSSERVER:8080/tfs/MyCollection /p:”MyProject” /f:”Bug.xml”

6. Upload the TestCase WI

witadmin importwitd /collection:http://MYTFSSERVER:8080/tfs/MyCollection /p:”MyProject” /f:”TestCase.xml”

7. Change name of the WI from Acceptance Test to Test Case

witadmin renamewitd /collection:http://MYTFSSERVER:8080/tfs/MyCollection /p:”MyProject”  /n:”Acceptance Test” /new:”Test Case”

8. Upload the Impediment WI

witadmin importwitd /collection:http://MYTFSSERVER:8080/tfs/MyCollection /p:”MyProject” /f:”Impediment.xml”

9. Upload the Shared step WI

witadmin importwitd /collection:http://MYTFSSERVER:8080/tfs/MyCollection /p:”MyProject” /f:”SharedStep.xml”

Copy fields using excel

Use Excel to copy fields between the old and the new fields that differs. Also use Excel to change the stare model.

Remove WIs that are not used.

The following WIs are not used in the MS Scrum template, remove them.

witadmin destroywitd /collection:http://MYTFSSERVER:8080/tfs/MyCollection /p:”MyProject” /n:”Sprint Retrospective”

witadmin destroywitd /collection:http://MYTFSSERVER:8080/tfs/MyCollection /p:”MyProject” /n:”Release”

witadmin destroywitd /collection:http://MYTFSSERVER:8080/tfs/MyCollection /p:”MyProject” /n:”Sprint”

witadmin destroywitd /collection:http://MYTFSSERVER:8080/tfs/MyCollection /p:”MyProject” /n:”Team Sprint”

 

Work Item Queries

1. Create a new WIq folder called Old and move all old Queries there

2. Copy WIQs from a project  Created with MS Scrum with copy-paste

3. Modify queries under the Current Sprint folder to match your sprints

 

Change sharepoint

You may not be able to access the SharePoint site because old web parts might be missing, to fix this follow these steps.

  1. Go to Site settings, http://MyTFSserver/sites/MyCollection/MyProject/_layouts/settings.aspx
  2. Activate sites features Scrum Dashboards with reporting and Team Collaboration Lists
  3. Go to http://MyTFSserver/sites/MyCollection/MyProject/Dashboards/Forms/AllItems.aspx
  4. Select ”Open with  Windows Explorer”
  5. Copy Release.aspx and overwrite Default.aspx
  6. Go to Site settings, choose ”Title, Description and Icon”
  7. Change the Icon URLto /_layouts/Microsoft.TeamFoundation/images/tfstitlegraphic.gif
  8. Click update the user interface

Add new reports

  1. Remove the old reports
  2. If you haven’t installed Team Foundation Power Tools, install it.
  3. Run tfpt addprojectreports to add the new reports

tfpt addprojectreports /collection:http://MYTFSSERVER:8080/tfs/MyCollection /teamproject:”MyProject” /processtemplate:”Microsoft Visual Studio Scrum 2.0″ /force

Add TFS 2012 functionality

1. Start TFS Web access for the project

2. Click Backlog

3. Click Configure

4. Click Verify

5. Click Configure

6. Click Close

 

You now have I migrated project with a new process template. Next step is to set dates to your Iterations and add members to your team!

4 comments to “Migrating Scrum for Team System 3.x to MS Scrum 2.0”

You can leave a reply or Trackback this post.

  1. Thomas Berger - July 24, 2013 at 10:19 am Reply

    Dear Magnus
    What i don’t realy understand is the part about the state mapping. Do i have to add the old and the new State fields and then update the “new” State field with the corresponding value?
    Could you upload the addapted xml files as samples?
    Kind Regards
    Thomas

    • Thomas Berger - July 25, 2013 at 3:33 pm Reply

      Dear Magnuns
      Meanwhile i managed to understand your post 🙂 i only need to update the “old” states to the new available states by hand in excel. (And after following some steps from the following post, i was able to get the new features running: http://blogs.microsoft.co.il/blogs/shair/archive/2013/07/18/tfs-2012-upgrade-process-template-guide.aspx )

      My problem now is, that my old Product Backlog Item to Task LinkType is “Implemented By” and should be “Child” (respectively “Hierarchy”). With this different Link Type the Tasks are not shown in the Backlog – Board.

      Thanks in Advance!

      Kind Regards
      Thomas

      • Magnus Timner - August 2, 2013 at 6:38 pm Reply

        Hi Thomas,

        Sorry I havnt ansered your posts, I have been avay on vacations.
        You have two ways to change your linktypes:
        1. Manually with Visual Studio or TFS Web Access
        2. Automaticaly with code:
        ,,,,
        // Replace a link type with another
        dManager.ReplaceLinkType(ref workitem, “Scrum.ImplementedBy”, “System.LinkTypes.Hierarchy”);
        ,,,,,
        Send me your email and a will mail you the complete code (magnus.timner@transcendentgroup.com)

Leave a Reply

Your email address will not be published.