将错误添加到任务板TFS 2013 Update2

时间:2014-07-27 11:58:59

标签: tfs azure-devops tfs2013 tfs-workitem

我在TFS2013 Update2中托管了一个敏捷/ Scrum,并希望将错误显示为任务而不是积压项目。 这个问题之前被提出过TFS 2012 Here。但它似乎即使在不同的更新中,故事也是不同的。根据MSDN guid this issue通过更改配置文件的某些部分。本文档是为视觉工作室2013所以我想它必须是TFS 2013!

首先忘记将MSDN代码复制到XML Config文件中。至少在我的情况下这是一个很大的错误。所以这是第一步

1 - 编辑Bug工作项定义:将活动和剩余工作字段添加到FIELDS和FORM部分。

虽然可以添加到FORM部分的元素必须是不同的。否则实现将引发Microsoft.VSTS.Common.StackRank& Microsoft.VSTS.Common.Priority。 所以MSDN说(你可以简单地复制在任务工作项类型中定义的组并替换那里的组)我复制了我的:

<Group Margin="(10,0,0,0)">
      <Column PercentWidth="50">
        <Group Label="Status">
          <Column PercentWidth="100">
            <Control FieldName="System.AssignedTo" Type="FieldControl" Label="Assi&amp;gned To" LabelPosition="Left" />
            <Control FieldName="System.State" Type="FieldControl" Label="Stat&amp;e" LabelPosition="Left" />
            <Control FieldName="System.Reason" Type="FieldControl" Label="Reason" LabelPosition="Left" ReadOnly="True" />
          </Column>
        </Group>
      </Column>
      <Column PercentWidth="50">
        <Group Label="Details">
          <Column PercentWidth="100">
            <Control FieldName="Microsoft.VSTS.Scheduling.RemainingWork" Type="FieldControl" Label="Remaining Work" LabelPosition="Left" />
            <Control FieldName="Microsoft.VSTS.Common.BacklogPriority" Type="FieldControl" Label="Backlog Priority" LabelPosition="Left" />
            <Control FieldName="Microsoft.VSTS.Common.Activity" Type="FieldControl" Label="Activity" LabelPosition="Left" />
            <Control FieldName="System.AreaPath" Type="WorkItemClassificationControl" Label="&amp;Area" LabelPosition="Left" />
          </Column>
        </Group>
      </Column>
    </Group>

并且有这条线导致错误所以我忽略了这一行:

<Control FieldName="Microsoft.VSTS.CMMI.Blocked" Type="FieldControl" Label="Blocked" LabelPosition="Left" />

无论如何向前迈进第二步

2 - 编辑类别定义:将Bug添加到任务类别并​​将其从需求类别中删除。

没问题(惊讶!!)。下一步:

3 - 编辑流程配置定义:映射任务类别的已解决状态,并将其从需求类别中删除。

这就麻烦了!一旦你越过第二步就必须更正进程配置文件,否则你甚至无法实现当前版本(必须是这些文件之间存在依赖性的原因).MSDN说(Map the Resolved任务类别的状态)首先,在这个版本中没有名为RESOLVED的状态。(你可以在他们自己的配置文件中找到每个项目的状态,例如BUG的状态是它自己的XML并且被列为此

<STATES> <STATE value="Done"> <FIELDS> <FIELD refname="Microsoft.VSTS.Scheduling.Effort"> <READONLY /> </FIELD> </FIELDS> </STATE> <STATE value="Removed" /> <STATE value="New"> <FIELDS> <FIELD refname="Microsoft.VSTS.Common.ClosedDate"> <EMPTY /> </FIELD> </FIELDS> </STATE> <STATE value="Approved"> <FIELDS> <FIELD refname="Microsoft.VSTS.Common.ClosedDate"> <EMPTY /> </FIELD> </FIELDS> </STATE> <STATE value="Committed"> <FIELDS> <FIELD refname="Microsoft.VSTS.Common.ClosedDate"> <EMPTY /> </FIELD> </FIELDS> </STATE> </STATES> ) 这是当前值:

    <States>
  <State type="Proposed" value="To Do" />
  <State type="InProgress" value="In Progress" />
  <State type="Complete" value="Done" />
</States>

这是最后一步,但我不能再进一步了。我已被Committed或者甚至已批准更换为RESOLVED,但总会出现如下错误:

TaskBacklog /国家。 TF400536:此元素定义待办事项中显示的工作项的状态。每个工作项类型的初始状态值必须与此元素中定义的状态之一匹配。以下工作项类型的初始状态未包含在已定义的状态中:&#39; Bug&#39;。

并且依赖于状态部分中的项目(有时我只是将NEW&amp; Done)这次发生了同样的错误&#39;任务&#39;

任何类似的尝试!?有没有人做过这样的事情或任何提示!?

2 个答案:

答案 0 :(得分:1)

Ok.solve it finally!它似乎在新模板中已解决变为已提交,如前所述。所以这次我没有用MSDN替换原始代码。这次我合并了代码,所以它变成了:

  <State type="Proposed" value="To Do" />
  <State type="Proposed" value="New" />
  <State type="Proposed" value="Approved" />
  <State type="InProgress" value="In Progress" />
  <State type="InProgress" value="Committed" />
  <State type="Complete" value="Done" />

我可以上传自己的模板,没有任何错误!

答案 1 :(得分:0)

您必须使用Scrum模板而不是Agile模板。在Agile模板中,bug已经是任务。虽然我认为错误是敏捷团队反模式的任务,但您可以通过以下方式对其进行配置:

  1. 从“任务”工作项复制工作流程部分,并用它替换Bug工作流程。
  2. 添加任务所需的字段:剩余工作
  3. 上传您的新Bug。

    然后更新类别以从&#34; BacklogItems&#34;中删除Bug。并将其添加到&#34; TaskCategory&#34;。这应该是为你完成的。