1

在 TFS 2010 中,需求工作项还有一个实现和一个更改请求选项卡。

在此处输入图像描述

在 TFS 2012 中,需求工作项还具有文档中所写的实现和更改请求选项卡,但是新创建的需求的图片不再显示这些选项卡。

现在,在 TFS 2015 中不再提及这两个选项卡,尽管 CMMI 流程将工作项层次结构显示为 Epic > Feature > Requirement > Task

我在 CMMI 项目的标准配置中缺少实现和更改请求选项卡,因为它们在跟踪从定义功能到需求的整个工作以及它们的测试实现以及后续更改请求方面非常有用。

有没有办法在标准配置中取回这些选项卡?我不喜欢更改预定义的工作项类型,因为您现在永远不会在 TFS 的下一次升级中发生什么。

4

1 回答 1

0

我不得不一直回到 2010 年才能找到您缺少的选项卡定义。您无法在不更改流程定义的情况下“配置”TFS 以显示其他选项卡。要将它们重新添加,您有两个选择。

  1. 创建自定义模板。
  2. 创建项目后修补需求表单定义。

后一个选项应该与使用功能激活向导“升级”现有流程模板的方式结合使用,尽管使用新的工作项表单和在 Visual Studio Team Services 上完成流程模板定制的新方式,这不足为奇我什么时候下一个版本的 TFS 升级后需要人工干预。

1.创建自定义模板

使用 Visual Studio 从 TFS 下载 CMMI 流程模板,更新流程模板定义 ( ProcessTemplate.xml) 文件并为其指定新名称和 GUID:

在此处输入图像描述

然后转到 WorkItem Tracking\TypeDefinitions 文件夹并编辑Requirement.xml. 重新添加两个旧选项卡和链接控件:

          <Tab Label="Implementation">
            <Control Type="LinksControl" Name="HierarchyForm" LabelPosition="Top">
              <LinksControlOptions>
                <WorkItemLinkFilters FilterType="include">
                  <Filter LinkType="System.LinkTypes.Hierarchy" />
                </WorkItemLinkFilters>
                <WorkItemTypeFilters FilterType="include">
                  <Filter WorkItemType="Requirement" />
                  <Filter WorkItemType="Task" />
                </WorkItemTypeFilters>
                <ExternalLinkFilters FilterType="excludeAll" />
                <LinkColumns>
                  <LinkColumn RefName="System.ID" />
                  <LinkColumn RefName="System.WorkItemType" />
                  <LinkColumn RefName="System.Title" />
                  <LinkColumn RefName="System.AssignedTo" />
                  <LinkColumn RefName="System.State" />
                  <LinkColumn LinkAttribute="System.Links.Comment" />
                </LinkColumns>
              </LinksControlOptions>
            </Control>
          </Tab>
          <Tab Label="Change Requests">
            <Control Type="LinksControl" Name="ChangeRequestsForm" LabelPosition="Top">
              <LinksControlOptions>
                <WorkItemLinkFilters FilterType="include">
                  <Filter LinkType="Microsoft.VSTS.Common.Affects" FilterOn="reversename" />
                </WorkItemLinkFilters>
                <WorkItemTypeFilters FilterType="include">
                  <Filter WorkItemType="Change Request" />
                </WorkItemTypeFilters>
                <ExternalLinkFilters FilterType="excludeAll" />
                <LinkColumns>
                  <LinkColumn RefName="System.ID" />
                  <LinkColumn RefName="System.WorkItemType" />
                  <LinkColumn RefName="System.Title" />
                  <LinkColumn RefName="System.AssignedTo" />
                  <LinkColumn RefName="System.State" />
                  <LinkColumn LinkAttribute="System.Links.Comment" />
                </LinkColumns>
              </LinksControlOptions>
            </Control>
          </Tab>

使用 Visual Studio 上传自定义流程模板并使用该模板创建新的团队项目。

2.更新现有项目

用于witadmin从现有项目中导出需求工作项类型的定义:

witadmin exportwitd /collection https://server/tfs/DefaultCollection /p MyProject
    /n Requirement /f Requirement.xml

使用您最喜欢的文本编辑器(我使用 Visual Studio Code)编辑 XML 文件并重新添加上述 XML 片段。现在您已经有了正确布局的需求定义,您可以将其推送到现有项目。首先,验证您的更改:

witadmin importwitd /collection https://server/tfs/DefaultCollection /v
    /f Requirement.xml

如果没有发现错误,导入定义:

witadmin importwitd /collection https://server/tfs/DefaultCollection /p MyProject
    /f Requirement.xml
于 2016-06-14T11:38:22.233 回答