Many customers are upgrading from TFS 2010 or earlier versions to TFS 2012 and in near future will upgrade to TFS 2013.
As Microsoft making the upgrade process of TFS a very smooth process there are still things we need to upgrade in our Team Project process template things that will not happened in the TFS Upgrade Process.
So which things? the Team Project Process Template – Work Items, Queries, Reports, Categories and more.
There are couple of scenarios you interesting in:
- Upgrade the same Process Template to the latest version.
- Change the Process Template to a different Process Template.
Upgrade the same Process Template to the latest version
To upgrade your Process Template to the latest version (After TFS Upgrade) you need to run the Feature Wizard.
If you’re not a team project administrator, get permissions. Only project administrators or TFS administrators can run the wizard.
Open the administration page for your team project from a supported browser (http://ServerName:8080/tfs/CollectionName/ProjectName/_admin).
If you see a Configure Features link, run the wizard.
If you don’t see this link, your features have been enabled.
If you receive a message similar to the one shown below, you can configure your team project. If more than one process template is available, accept the recommended version.
If the dialog box doesn’t contain a Configure option, then you’ll need to apply the updates manually.
In most cases, the wizard will configure all the new features and you’ll receive a success message.
Occasionally, the wizard will partially update your team project and return error messages that require resolution. Make a note of the errors that you receive and perform manual updates to resolve each error.
When the wizard is unable to update a team project, it will return a message indicating that there are no process templates available to support the update. Then you need to follow the second step I’ve describe below.
Change the Process Template to a different Process Template
This scenario is very popular because after upgrading from TFS 2010 to TFS 2012 many customer want to change the Current Agile Process Template to Scrum Template.
This means that you need to change the Work Items Names, Add new Work Items, Change Process Categories and more, in this post I’ll describe the main points you need to perform in order to change the Team Project Template.
First let’s open Visual Studio with TFS Administrator permission and open “Process Template Manager”.
The Process Template Manager will show you all the available templates under TFS and you can download the entire template to your local machine that contains all the information and data for the current template. In this demo I’ll download the Scrum 3.0 Template.
After the download completed (few seconds) you can browse the Process Template and see all the data that makes the process template.
Now let’s start with the Upgrade.
If you want to change the process template, let’s say from Agile to Scrum you need to change the name of “User Story” to “Product Backlog Item”, you don’t want to loose that data. (Also for Issue and Impediment)
the witadmin command line tool change a renamewitd option that changes the display name of a work item type within a specific project. After you run this command, work items of this type show the new name.
You can find the witadmin command line tool under the following path: %programfiles%\Microsoft Visual Studio 11.0\Common7\IDE
witadmin renamewitd /collection:CollectionURL /p:Project /n:TypeName /new:NewName [/noprompt]
The second part is adding new Work Item Types, you don’t want to override existing work item type (you might made some changes to the work item and override existing work items will remove you customization)
To add new Work Item Types download TFS Power Tools, this will add the Process Editor feature to you Visual Studio. The Process Editor allows you to import new work items types.
There are four Work Item Types you need to add (As part of the Agile to Scrum Upgrade)
For each upgrade you need to verify what and if there is new work item types you need to add to the target project.
To Upgrade an existing Work Item Type – Such as Bug, Task Test Case etc… This require more manual work.
Once you open the Scrum, Bug template you need to start with the customizations, each custom field you add to Bug in Agile Project needs to be inside the Scrum Bug Template, some fields needs to be created also such as Microsoft.VSTS.Common.StackRank, in Scrum we are using Effort but not adding this field will cause loosing the StackRank value (After the upgrade we can copy the values from StackRank to Effort)
After you finished the Bug Template repeat the process for every work item and at the end Import the modified work items into the new project.
Finally we need to import new Categories, Adding the correct categories will start the main configuration efforts and configures which of the work item types are viable, which are hidden and which sit is which category.
witadmin importcategories /collection:http://tfs:8080/tfs /p:ProjectName /f:C:\WorkItem Tracking\categories.xml"
Finally you need to import the Agile and Common Configuration files:
witadmin importcommonprocessconfig /collection:http://tfs:8080/tfs /p:ProjectName /f:"C:\WorkItem Tracking\Process\CommonConfiguration.xml"
witadmin importagileprocessconfig /collection:http://tfs:8080/tfs /p:ProjectName /f:"C:\WorkItem Tracking\Process\AgileConfiguration.xml"
The upgrade process might require TFS Admin so the process will be successful and easy but if you still want to do yourself perform each of the describe steps and everything should be fine.