Willy's Reflections - Visual Studio ALM Rangers

| Willy-Peter Schaub | Visual Studio ALM Rangers | In search of IT simplicity, quality and tranquility |

TFS Integration Tools (Platform) … The world of TFS Project Template (Agile, Scrum) migrations – Part 3

TFS Integration Tools (Platform) … The world of TFS Project Template (Agile, Scrum) migrations – Part 3

  • Comments 8

Continued from posts TFS Integration Tools (Platform) … The world of TFS Project Template migrations - Part 1 and TFS Integration Tools (Platform) … The world of TFS Project Template (MSF Agile v4 to v5) migrations – Part 2.

In the recent post we looked at the MSF Agile v4 and v5 migrations and some of the configuration features used in the template and other features that may be relevant. In this post we list three additional templates that Richard Banks created in the field.

The other template configurations …

MSF v4 to Emc Scrum v3.xml

This template maps the Task and Bug work item types in the source, to the Sprint Backlog task and Bug work item types in the target, moving from MSF Agile v4 to Emc Scrum v3. For more information on the Emc Scrum process template, refer to: http://scrumforteamsystem.com/.

   1: <SettingXml>
   2:   <WITSessionCustomSetting xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
   3:     <Settings />
   4:     <WorkItemTypes>
   5:       <WorkItemType LeftWorkItemTypeName="Task" RightWorkItemTypeName="Sprint Backlog Task" fieldMap="TaskToTask" />
   6:       <WorkItemType LeftWorkItemTypeName="Bug" RightWorkItemTypeName="Bug" fieldMap="BugToBug" />
   7:     </WorkItemTypes>
   8:     <FieldMaps>
   9:       <FieldMap name="TaskToTask">
  10:         <MappedFields>
  11:           <MappedField LeftName="*" RightName="*" MapFromSide="Left" valueMap="" />
  12:           <MappedField LeftName="Microsoft.VSTS.Common.Issue" RightName="" MapFromSide="Left" />
  13:           <MappedField LeftName="Microsoft.VSTS.Common.Rank" RightName="" MapFromSide="Left" />
  14:           <MappedField LeftName="Microsoft.VSTS.Common.Discipline" RightName="" MapFromSide="Left" />
  15:           <MappedField LeftName="Microsoft.VSTS.Scheduling.TaskHierarchy" RightName="" MapFromSide="Left" />
  16:           <MappedField LeftName="Microsoft.VSTS.Common.ExitCriteria" RightName="" MapFromSide="Left" />
  17:           <MappedField LeftName="Microsoft.VSTS.Scheduling.BaselineWork" RightName="Scrum.v3.EstimatedEffort" MapFromSide="Left" />
  18:           <MappedField LeftName="Microsoft.VSTS.Scheduling.RemainingWork" RightName="Scrum.v3.WorkRemaining" MapFromSide="Left" />
  19:           <MappedField LeftName="Microsoft.VSTS.Scheduling.CompletedWork" RightName="" MapFromSide="Left" />
  20:           <MappedField LeftName="Microsoft.VSTS.Scheduling.StartDate" RightName="" MapFromSide="Left" />
  21:           <MappedField LeftName="Microsoft.VSTS.Scheduling.FinishDate" RightName="" MapFromSide="Left" />
  22:           <MappedField LeftName="Microsoft.VSTS.Common.StateChangeDate" RightName="" MapFromSide="Left" />
  23:           <MappedField LeftName="Microsoft.VSTS.Common.ActivatedDate" RightName="" MapFromSide="Left" />
  24:           <MappedField LeftName="Microsoft.VSTS.Common.ActivatedBy" RightName="" MapFromSide="Left" />
  25:           <MappedField LeftName="Microsoft.VSTS.Common.ClosedDate" RightName="" MapFromSide="Left" />
  26:           <MappedField LeftName="Microsoft.VSTS.Common.ClosedBy" RightName="" MapFromSide="Left" />
  27:           <MappedField LeftName="Microsoft.VSTS.Build.IntegrationBuild" RightName="" MapFromSide="Left" />
  28:         </MappedFields>
  29:         <AggregatedFields />
  30:         <UserIdentityFields>
  31:           <LeftUserIdentityFields />
  32:           <RightUserIdentityFields />
  33:         </UserIdentityFields>
  34:       </FieldMap>
  35:       <FieldMap name="BugToBug">
  36:         <MappedFields>
  37:           <MappedField LeftName="*" RightName="*" MapFromSide="Left" valueMap="" />
  38:           <MappedField LeftName="Microsoft.VSTS.Common.Issue" RightName="" MapFromSide="Left" />
  39:           <MappedField LeftName="Microsoft.VSTS.Common.Rank" RightName="" MapFromSide="Left" />
  40:           <MappedField LeftName="Microsoft.VSTS.Common.Discipline" RightName="" MapFromSide="Left" />
  41:           <MappedField LeftName="Microsoft.VSTS.Scheduling.TaskHierarchy" RightName="" MapFromSide="Left" />
  42:           <MappedField LeftName="Microsoft.VSTS.Common.ExitCriteria" RightName="" MapFromSide="Left" />
  43:           <MappedField LeftName="Microsoft.VSTS.Scheduling.BaselineWork" RightName="Microsoft.VSTS.Scheduling.OriginalEstimate" MapFromSide="Left" />
  44:           <MappedField LeftName="Microsoft.VSTS.Common.Triage" RightName="" MapFromSide="Left" />
  45:           <MappedField LeftName="Microsoft.VSTS.Test.TestName" RightName="" MapFromSide="Left" />
  46:           <MappedField LeftName="Microsoft.VSTS.Test.TestId" RightName="" MapFromSide="Left" />
  47:           <MappedField LeftName="Microsoft.VSTS.Test.TestPath" RightName="" MapFromSide="Left" />
  48:           <MappedField LeftName="Microsoft.VSTS.Common.StateChangeDate" RightName="" MapFromSide="Left" />
  49:           <MappedField LeftName="Microsoft.VSTS.Common.ResolvedDate" RightName="" MapFromSide="Left" />
  50:           <MappedField LeftName="Microsoft.VSTS.Common.ResolvedBy" RightName="" MapFromSide="Left" />
  51:           <MappedField LeftName="Microsoft.VSTS.Common.ResolvedReason" RightName="" MapFromSide="Left" />
  52:           <MappedField LeftName="Microsoft.VSTS.Common.Priority" RightName="" MapFromSide="Left" />
  53:           </MappedFields>
  54:         <AggregatedFields />
  55:         <UserIdentityFields>
  56:           <LeftUserIdentityFields />
  57:           <RightUserIdentityFields />
  58:         </UserIdentityFields>
  59:       </FieldMap>
  60:     </FieldMaps>
  61:     <ValueMaps />
  62:   </WITSessionCustomSetting>
  63: </SettingXml>
  64: <SettingXmlSchema />

Scrum v2 to Agile v5.xml

This template maps the Bug, the Sprint Backlog Item and the Product Backlog Item from the Scrum v2 template, to the Bug, Task and User Story Agile v5 template work item types respectively. For more information on Scrum v2, refer to http://www.scrumforteamsystem.com/ProcessGuidanceOld/v2/ProcessGuidance.aspx.

   1: <SettingXml>
   2:   <WITSessionCustomSetting xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
   3:     <Settings />
   4:     <WorkItemTypes>
   5:       <WorkItemType LeftWorkItemTypeName="Bug" RightWorkItemTypeName="Bug" fieldMap="BugToBug" />
   6:       <WorkItemType LeftWorkItemTypeName="Sprint Backlog Item" RightWorkItemTypeName="Task" fieldMap="SBIToTask" />
   7:       <WorkItemType LeftWorkItemTypeName="Product Backlog Item" RightWorkItemTypeName="User Story" fieldMap="PBIToUserStory" />
   8:     </WorkItemTypes>
   9:     <FieldMaps>
  10:       <FieldMap name="BugToBug">
  11:        <MappedFields>
  12:          <MappedField LeftName="*" RightName="*" MapFromSide="Left" valueMap="" />
  13:          <MappedField LeftName="Conchango.TeamSystem.Scrum.EstimatedEffort" RightName="" MapFromSide="Left" />
  14:           <MappedField LeftName="Conchango.TeamSystem.Scrum.WorkRemaining" RightName="" MapFromSide="Left" />
  15:           <MappedField LeftName="Conchango.TeamSystem.Scrum.Build.Environment" RightName="" MapFromSide="Left" />
  16:           <MappedField LeftName="Conchango.TeamSystem.Scrum.TestingImpact" RightName="" MapFromSide="Left" />
  17:           <MappedField LeftName="Conchango.TeamSystem.Scrum.DateDiscovered" RightName="" MapFromSide="Left" />
  18:          <MappedField LeftName="Conchango.TeamSystem.Scrum.DateClosed" RightName="" MapFromSide="Left" />
  19:           <MappedField LeftName="Conchango.TeamSystem.Scrum.Team" RightName="" MapFromSide="Left" />
  20:           <MappedField LeftName="Conchango.TeamSystem.Scrum.BusinessPriority" RightName="" MapFromSide="Left" />
  21:           <MappedField LeftName="Conchango.TeamSystem.Scrum.DeliveryOrder" RightName="" MapFromSide="Left" />
  22:           <MappedField LeftName="Conchango.TeamSystem.Scrum.HistoryDate" RightName="" MapFromSide="Left" />
  23:          <MappedField LeftName="Conchango.TeamSystem.Scrum.ReplicationActionDetail" RightName="" MapFromSide="Left" />
  24:         </MappedFields>
  25:         <AggregatedFields />
  26:         <UserIdentityFields>
  27:           <LeftUserIdentityFields />
  28:          <RightUserIdentityFields />
  29:        </UserIdentityFields>
  30:       </FieldMap>
  31:       <FieldMap name="SBIToTask">
  32:        <MappedFields>
  33:          <MappedField LeftName="*" RightName="*" MapFromSide="Left" valueMap="" />
  34:          <MappedField LeftName="Conchango.TeamSystem.Scrum.EstimatedEffort" RightName="Microsoft.VSTS.Scheduling.OriginalEstimate" MapFromSide="Left" />
  35:           <MappedField LeftName="Conchango.TeamSystem.Scrum.WorkRemaining" RightName="Microsoft.VSTS.Scheduling.RemainingWork" MapFromSide="Left" />
  36:           <MappedField LeftName="Conchango.TeamSystem.Scrum.Team" RightName="" MapFromSide="Left" />
  37:           <MappedField LeftName="Conchango.TeamSystem.Scrum.HistoryDate" RightName="" MapFromSide="Left" />
  38:           <MappedField LeftName="Conchango.TeamSystem.Scrum.TaskPriority" RightName="Microsoft.VSTS.Common.StackRank" MapFromSide="Left" />
  39:         </MappedFields>
  40:         <AggregatedFields />
  41:         <UserIdentityFields>
  42:           <LeftUserIdentityFields />
  43:          <RightUserIdentityFields />
  44:        </UserIdentityFields>
  45:       </FieldMap>
  46:       <FieldMap name="PBIToUserStory">
  47:        <MappedFields>
  48:          <MappedField LeftName="*" RightName="*" MapFromSide="Left" valueMap="" />
  49:          <MappedField LeftName="Conchango.TeamSystem.Scrum.EstimatedEffort" RightName="Microsoft.VSTS.Scheduling.StoryPoints" MapFromSide="Left" />
  50:           <MappedField LeftName="Conchango.TeamSystem.Scrum.WorkRemaining" RightName="" MapFromSide="Left" />
  51:           <MappedField LeftName="Conchango.TeamSystem.Scrum.Team" RightName="" MapFromSide="Left" />
  52:           <MappedField LeftName="Conchango.TeamSystem.Scrum.BusinessPriority" RightName="Microsoft.VSTS.Common.StackRank" MapFromSide="Left" />
  53:           <MappedField LeftName="Conchango.TeamSystem.Scrum.DeliveryOrder" RightName="" MapFromSide="Left" />
  54:           <MappedField LeftName="Conchango.TeamSystem.Scrum.HistoryDate" RightName="" MapFromSide="Left" />
  55:           <MappedField LeftName="Conchango.TeamSystem.Scrum.ConditionsOfAcceptance" RightName="" MapFromSide="Left" />
  56:         </MappedFields>
  57:         <AggregatedFields />
  58:         <UserIdentityFields>
  59:           <LeftUserIdentityFields />
  60:          <RightUserIdentityFields />
  61:        </UserIdentityFields>
  62:       </FieldMap>
  63:     </FieldMaps>
  64:     <ValueMaps />
  65:   </WITSessionCustomSetting>
  66: </SettingXml>
  67: <SettingXmlSchema />
  68:  

scrum v2 to v3.xml

This last snippet, looks at a possible Scrum v2 to Scrum v3 migration mapping, which primarily drops source fields at this point.

   1: <MappedField LeftName="Conchango.TeamSystem.Scrum.EstimatedEffort" RightName="" MapFromSide="Left" />
   2: <MappedField LeftName="Conchango.TeamSystem.Scrum.WorkRemaining" RightName="" MapFromSide="Left" />
   3: <MappedField LeftName="Conchango.TeamSystem.Scrum.Build.Environment" RightName="" MapFromSide="Left" />
   4: <MappedField LeftName="Conchango.TeamSystem.Scrum.TestingImpact" RightName="" MapFromSide="Left" />
   5: <MappedField LeftName="Conchango.TeamSystem.Scrum.DateDiscovered" RightName="" MapFromSide="Left" />
   6: <MappedField LeftName="Conchango.TeamSystem.Scrum.DateClosed" RightName="" MapFromSide="Left" />
   7: <MappedField LeftName="Conchango.TeamSystem.Scrum.Team" RightName="" MapFromSide="Left" />
   8: <MappedField LeftName="Conchango.TeamSystem.Scrum.BusinessPriority" RightName="" MapFromSide="Left" />
   9: <MappedField LeftName="Conchango.TeamSystem.Scrum.DeliveryOrder" RightName="" MapFromSide="Left" />
  10: <MappedField LeftName="Conchango.TeamSystem.Scrum.HistoryDate" RightName="" MapFromSide="Left" />
  11: <MappedField LeftName="Conchango.TeamSystem.Scrum.ReplicationActionDetail" RightName="" MapFromSide="Left" />
  12: <MappedField LeftName="" RightName="" MapFromSide="Left" />

Wrap-up

As mentioned in this blog series, these templates need loving tender care to evolve in the real-world scenario of process template migrations. They do, however, deliver a good base to refer to or work from and we are looking forward to your feedback, allowing us to evolve and enhance the configuration files. The hope is to create a template library, which can be used as a quick-start for future migrations using the TFS Integration Tools.

  • it would be great to see a configuration for migrating MSF for Agile v5 to the new Visual Studio Scrum 1.0 template.

  • A template for migrating from Scrum V2 to Visual Studio 1.0 would be good to post here (I am looking into making one now so thanks for the good start).  

    Scrum V3 changed a lot of stuff and I am guessing that many (like me) will be thinking that it would be nice to keep our same processes.  Visual Studio Scrum 1.0 seems like it will allow that.  If only I can convert my projects over....

  • OK, so I got around to making a template for Migrating from Scrum For Team System to Microsoft Visual Studio Scrum 1.0.  I posted a how to here:serverfault.com/.../how-to-transfer-from-scrum-for-team-system-v2-to-visual-studio-scrum-v1  

    And the actual template is posted here: gist.github.com/564034

    Enjoy (and vote me up if you use this)

  • Just made three templates for migrating to SfTS3.0 from MSF4.0, MS CMMI and SfTS2.2

    Downloadable from here blogs.isynch-d.com/PermaLink,guid,17fd97cd-cffe-4b0a-ace8-435e434e4b8a.aspx

  • Would support the request for a configuration for the migration from MSF Agile 5.0 to MS Scrum 1.0

  • Is there a template for migration from SfTS v3 to Scrum 1.0?

  • Does anyone have the template to migrate from MS Scrum 1.0 to MSF Agile 5.0?

    A Project Manager asked me if that was viable, but I'm a sysadmin, not a programmer...

    Thanks in advance!

  • Anyone have a template for migrating from MSF for Agile v5 to Visual Studio Scrum 1.0?

Page 1 of 1 (8 items)
Leave a Comment
  • Please add 4 and 6 and type the answer here:
  • Post