Can you prevent a Parent work item from "outrunning" it's children?
When you create children work items, is there a way to prevent the parent work item from getting into a STATE further along in the workflow than it's children? For example, I don't want a parent DEFECT to get to Resolved State if there is a child TASK in In-Progress State, or similar?
thanks"
Ken
thanks"
Ken
Accepted answer
Hi Ken,
There is a built-in precondition you can use that "Requires that a work item can only be resolved if all of its children are resolved." To use this precondition,
There is a built-in precondition you can use that "Requires that a work item can only be resolved if all of its children are resolved." To use this precondition,
- Open the Team Artifacts view in your Eclipse client
- Right-click on your project area and select Open
- Click on the Process Configuration tab
- In the Configuration section, expand Team Configuration
- Select Operation Behavior
- In the Operation Behavior table, in the Work Items section, in the Save Work Item (server) row, click on the Everyone cell
- In the Preconditions section, click Add
- Select All Children Resolved and click OK
- Save your changes
If you want something more specific, you can write your own custom precondition. https://jazz.net/wiki/bin/view/Main/RTCSDK20_ProcessPreConditionExample has more information on how to do this.
2 other answers
To add to Lauren's answer, you could create an advisor/precondition that checks the parent and prevents a state change based on the child states. See http://rsjazz.wordpress.com/2012/07/31/rtc-update-parent-duration-estimation-and-effort-participant/ on how to get to the parent (or to the children, which is the reverse) and http://rsjazz.wordpress.com/2012/11/01/restrict-delivery-of-changesets-to-workitem-types-advisordelivery-of-changesets-associated-to-wrong-work-item-types-advisor/ for how an advisor would look like. Running https://jazz.net/library/article/1000 is the best entry point to get started with development of such code. Please be aware that it is not trivial and you really have to follow the workshop in the details, otherwise you will likely struggle.
If you want to do this for parent child, then you can use the supplied Pre-condition as noted above, you have to enable it..
if you also want to do this for Depends On/Blocks links, that is NOT provided, but I posted the source for this pre-condition here
if you also want to do this for Depends On/Blocks links, that is NOT provided, but I posted the source for this pre-condition here