There is not really a need to enable this feature, until Microsoft allows to choose between having bugs on the product backlog or the sprint backlog. The feature is introduced to allow MSF teams to show bugs on the backlog. For Scrum projects it essentially results in bugs being hidden from the backlog. If this is what you want (or want to control easily), this is how to do it.
For more information, also read the following two blog posts:
To fix the error you need to remove the Bug work item from the Microsoft.RequirementCategory
and add it to the Microsoft.BugCategory
:
Standard solution
In the Categories.xml
:
<CATEGORY name="Bug Category" refname="Microsoft.BugCategory">
<DEFAULTWORKITEMTYPE name="Bug" />
</CATEGORY>
<CATEGORY name="Requirement Category" refname="Microsoft.RequirementCategory">
<DEFAULTWORKITEMTYPE name="Product Backlog Item" />
<WORKITEMTYPE name="Bug" />
</CATEGORY>
And add this to the ProcessConfiguration.xml
:
<BugWorkItems category="Microsoft.BugCategory" pluralName="Bugs" singularName="Bug">
<States>
<State value="New" type="Proposed" />
<State value="Approved" type="Proposed" />
<State value="Committed" type="InProgress" />
<State value="Done" type="Complete" />
</States>
</BugWorkItems>
There is a bug in MTM at the moment though, which will prevent you from adding a Requirement Based Suite for a Bug when you enable this.
Advanced solution
The following change works around the bug in MTM:
In the Categories.xml
:
<CATEGORY name="Bug Category" refname="Microsoft.BugCategory">
<DEFAULTWORKITEMTYPE name="Bug" />
</CATEGORY>
<CATEGORY name="Requirement Category" refname="Microsoft.RequirementCategory">
<DEFAULTWORKITEMTYPE name="Product Backlog Item" />
<WORKITEMTYPE name="Bug" />
</CATEGORY>
<CATEGORY name="Planning Category" refname="Custom.PlanningCategory">
<DEFAULTWORKITEMTYPE name="Product Backlog Item" />
</CATEGORY>
And then configuring the Product Backlog to look at the Custom.PlanningCategory
instead of the Microsoft.RequirementCategory
by updating the ProcessConfiguration.xml
:
<RequirementBacklog
category="Custom.PlanningCategory"
parent="Microsoft.FeatureCategory" pluralName="Product Backlog"
singularName="Product Backlog Item">
And add this to ProcessConfiguration.xml
as well:
<BugWorkItems category="Microsoft.BugCategory" pluralName="Bugs" singularName="Bug">
<States>
<State value="New" type="Proposed" />
<State value="Approved" type="Proposed" />
<State value="Committed" type="InProgress" />
<State value="Done" type="Complete" />
</States>
</BugWorkItems>
This basically allows you to show bugs on the backlog or not. It doesn't allow you to choose whether to show the bugs on the product Backlog or the Sprint backlog.