Work flow isolation
Hi,
We have a common workflow for 3 work item types. Now we want to seperate the workflow and keep individual workflows for each of the work item type. What will happen if i use the duplicate work flow option? I need the same workflow. I do this in order restrict few permissions on the specific work item. My another query is that what will happen to state of the work items which previously shared the workflow? Will it change the state of the old work items?
Thanks,
Adhithya
2 answers
Hi Adhithya,
Using the duplicate workflow feature would make a human readable copy of the workflow and its constituent states but RTC still recognizes this duplicate as a different workflow with different states from the original. Consequently, making duplicates of your workflow and assigning the duplicates to the different work item types that currently share a workflow would result in stranding already created work items. So no, RTC wouldn't change the state of old work items.
Using the duplicate workflow feature would make a human readable copy of the workflow and its constituent states but RTC still recognizes this duplicate as a different workflow with different states from the original. Consequently, making duplicates of your workflow and assigning the duplicates to the different work item types that currently share a workflow would result in stranding already created work items. So no, RTC wouldn't change the state of old work items.
Note that when you change the workflow, all of the workitems that existed prior to the workflow change retain the properties of the old workflow, and only new workitems will reflect your workflow changes. It used to drive me crazy when I would be trying to test out workflow changes, because I would have a bunch of test data that didn't seem to act as if I had changed anything.
Also keep in mind the impact of workflow changes on your dashboard widgets. Some of those widgets may look a little strange at first, due to the different workflows being represented for the same work item types. To see an example of this, try creating a widget that displays the status of two different work item types (like story and task). You will see a mix of states, with "Closed (Story)" and "Closed (Task)" being two different states.