过程配置 XML 元素引用

Azure DevOps Server 2022 - Azure DevOps Server 2019 |TFS 2018

流程配置定义了团队可以使用 Web 门户敏捷工具访问的默认配置和功能功能。 这些工具包括产品积压工作、冲刺积压工作、看板和任务板,可针对添加到项目中的每个团队进行自定义。

配置元素指定工作项类型 (WIT)、默认列、工具使用的字段以及其他元素。 通过定义流程配置 XML 定义文件的 PortfolioBacklogRequirementBacklog 和 TaskBacklog 部分,进行的主要配置确定将为项目组合、产品和冲刺 积压工作 显示哪些项。 此外,进程配置为所有需要映射的 WIT 定义状态到状态类别的工作流映射。

过程配置 XML 元素

有关可通过用户界面配置的内容的摘要,请参阅 自定义工作跟踪、添加团队和配置其 Scrum 和看板工具

可以通过 ProcessConfiguration 自定义的区域:

注意

  1. 带有星号的项为项目设置默认值。 可以通过 团队设置为每个团队更改这些项目。
  2. 支持托管 XML,本地 XML 支持 TFS 2015.2 或更高版本。
  3. 支持托管 XML,本地 XML 支持 TFS 2017.2 或更高版本。

重要

如果要自定义项目以添加要在积压工作或板上显示的自定义工作项类型或添加自定义项目组合积压工作,请参阅 将工作项类型添加到积压工作和板添加项目组合积压工作

更新进程配置

注意

若要访问最新版本的进程模板,请安装最新版本的 TFS 并使用 进程模板管理器下载模板

若要更新项目的进程配置,请导出 XML 定义文件,对其进行编辑,然后导入文件。 可以通过导出 进程 或导出 进程配置定义文件来导出这些文件。

导出 ProcessConfig 定义文件编辑 XML 定义文件导入 WIT 定义文件刷新并验证更改

提示

使用 witadmin,可以 导入和导出定义文件。 可以使用的其他工具包括进程编辑器 (要求你已安装 Visual Studio) 版本。 从 Visual Studio 市场安装进程模板编辑器

提示

使用 witadmin,可以 导入和导出定义文件。 可以使用的其他工具包括进程编辑器 (要求你已安装 Visual Studio) 版本。 从 Visual Studio 市场安装 TFS 进程模板编辑器。 可以使用此版本的进程编辑器来修改旧式工作项表单。 不能使用它来编辑与 新 Web 窗体关联的表单

或者,可以使用 TFS 团队项目经理,这是 GitHub 提供的开源客户端。

配置积压工作 (backlog)

可以为产品积压工作 (backlog)、冲刺 (sprint) 积压工作 (backlog) 和组合积压工作自定义以下元素:

  • 状态类别映射:将工作流状态映射到状态类别 (以前称为元状态) 。 这些映射支持显示所有 Agile 计划工具,包括看板和任务板。

  • 快速添加面板:指定为快速将项目添加到积压工作而出现的 WIT 和工作项字段。

    若要更改被视为积压工作项或任务的工作项类型,请将它们添加到相应的类别中。 有关示例,请参阅 将 bug 添加到任务板或积压工作

  • 列字段:定义默认字段和列序列。

你可以在以下示例中显示的 XML 节内配置积压工作 (backlog):

<PortfolioBacklogs>
      <PortfolioBacklog category="Microsoft.EpicCategory" pluralName="Epics" singularName="Epic" workItemCountLimit="1000">
. . . 
      </PortfolioBacklog>
      <PortfolioBacklog category="Microsoft.FeatureCategory" pluralName="Features" singularName="Feature" parent="Microsoft.EpicCategory" workItemCountLimit="1000">
. . . 
      </PortfolioBacklog>
</PortfolioBacklogs>
<RequirementBacklog category="Microsoft.RequirementCategory" pluralName="Stories" singularName="User Story" workItemCountLimit="1000">
. . . 
</RequirementBacklog>
<TaskBacklog category="Microsoft.TaskCategory" pluralName="Tasks" singularName="Task" workItemCountLimit="1000">
. . . 
</TaskBacklog>

注意

根据与 ProcessConfiguration 文件(AgileScrumCMMI)关联的过程, pluralNameRequirementCategory 将对应于 Stories (Agile) 、 Backlog Items (Scrum) 或 Requirements (CMMI) 。 这三者都类似:它们描述了要交付的客户价值和要执行的工作。

PortfolioBacklogs 元素的语法

元素

说明

Portfoliobacklog

可选。 项目组合积压工作 (backlog) 的容器元素。

Portfoliobacklog

可选。 最多五个实例。

定义项目组合积压工作的状态类别映射、默认列和快速添加面板的容器元素。

<PortfolioBacklog category="PortfolioCategory" parent="ParentCategory"  
pluralName="PluralName" singularName="SingleName" workItemCountLimit="MaximumLimit>  
<States> . . . </States>  
<Columns> . . . </Columns>  
<AddPanel> . . . </ AddPanel>  
</PortfolioBacklog >  

为特性赋值,如下所述:

  • category:指定在类别定义文件中为包含要与此积压工作类型关联的 WIT 的项目定义的类别的名称。

  • parent:指定表示层次结构中父项目组合积压的类别的名称。

  • pluralName:指定引用与此积压工作类型关联的 WIT 时要使用的复数标签。 例如,情景、目标、方案或长篇故事。

  • singularName:指定引用与此积压工作类型关联的 WIT 时要使用的单数标签。 例如,情景、目标、方案或长篇故事。

  • workItemCountLimit:指定整数。 默认值为 1000。 积压工作 (backlog) 和板会限制基于此限制来限制显示的项数。

RequirementBacklog

必需。 仅一个实例。

用于定义产品积压工作的状态类别映射、默认列和快速添加面板的容器元素。 产品积压工作显示团队积压工作中的所有活动项。

<RequirementBacklog category="RequirementCategory"  
pluralName="PluralName" singularName="SingleName"   
workItemCountLimit="MaximumLimit" >  
<States> . . . </States>
<Columns> . . . </Columns>
<AddPanel> . . . </ AddPanel>
</RequirementBacklog >

TaskBacklog

必需。 仅一个实例。

用于自定义冲刺积压工作布局的容器元素。

<TaskBacklog category="Microsoft.TaskCategory" pluralName="Tasks" 
singularName="Task workItemCountLimit="MaximumLimit">
. . . 
</TaskBacklog > 

实现说明

  • 默认情况下,每个积压工作限定为总共 1000 个工作项。 可以通过为 属性指定值来 workItemCountLimit 更改此限制。
  • 分配给 CategoryName 的值必须对应于为项目定义的类别组。 在 “类别”的定义文件中指定类别组
  • 使用 项目组合积压工作 来组织积压工作、查看较低级别的积压工作项汇总,以及查看多个团队的进度。 新项目和升级项目包含两个项目组合积压工作级别:“功能”和“长篇大论”。 最多可以添加三个附加级别。 只有顶级项目组合积压工作不指定父类别。
  • 产品积压工作对应于项目计划,即团队计划交付的路线图。 它列出其 WIT 属于要求类别的工作项。 为了管理与默认项目提供的不同 WIT,可以将 WIT 添加到“要求类别”,并将工作流状态映射到状态类别。
  • 冲刺或迭代积压工作会显示你和你的团队在特定冲刺周期中承诺的一组要求,以及你已链接到这些要求的任务。 可使用父子链接类型将任务链接到需求。 由于这些积压工作 (backlog) 上显示的 WIT 对应于产品积压工作 (backlog) 上显示的相同类型,因此你在产品积压工作 (backlog) 上执行的许多自定义工作都将定义冲刺 (sprint) 积压工作 (backlog) 的功能。

将 WIT 类别工作流状态映射到状态类别

多个 WIT 要求将其工作流状态映射到状态类别。 工作流状态定义了工作项从首次激活或创建状态转换为已关闭或已完成状态的方式。 例如,为 Scrum 产品积压工作项定义的状态定义了从 “新建”、“ 已批准”、“ 已提交”到 “完成”的四个状态,还包括第五个状态“ 已删除”,以说明未实现从积压工作中删除的状态。 工作流状态与 value 属性相关联。

另一方面,状态类别决定了敏捷规划工具如何处理每个工作流状态。 积压工作和任务板使用的主要状态类别是 “建议”、“ 正在进行”“完成”。 状态类别与 type 属性相关联。 若要了解详细信息,请参阅 工作流状态和状态类别

通过将每个工作流状态关联到状态类别,为显示积压工作和任务板而执行的后台操作知道如何正确解释每个工作项的状态。 例如,为 Scrum 产品积压工作定义以下映射。

<RequirementBacklog category="Microsoft.RequirementCategory" pluralName="Backlog items" singularName="Backlog item">
      <States>
      <State value="New" type="Proposed" />
      <State value="Approved" type="Proposed" />
      <State value="Committed" type="InProgress" />
      <State value="Done" type="Complete" />
      </States>
 . . .
</RequirementBacklog>

有三组状态类别:敏捷、Bug 和反馈。 下表介绍了映射特性和值。

WIT 类别 (状态元素的语法)

元素

说明

State

必需。 将工作流状态分配给状态类别。

<State value="ValueName" type="TypeName" />

ValueName 的有效值对应于分配给类别组的 WIT 的 WORKFLOW 节中分配给 STATE 的值。

TypeName 的有效值对应于以下枚举值之一:

  • Agile:用于所有工作项类型。
  • 建议:指示新工作项、尚未提交或尚未处理的工作项。
  • InProgress:指示已提交或正在处理的工作项。
  • 完成:指示已实现的工作项。 要使 看板 有效,必须将一个工作流状态映射到 “完成 ”状态类别。 如果需要表示其他工作流状态,则可以将其映射到 “已解决 ”状态类别。
    工作流状态转换为与 Complete 元状态关联的状态后,关联的工作项将从产品积压工作中掉落。 但是,它将继续列在看板的最后一列中。

    工作流状态中未映射到状态类别之一的工作项不会显示在积压工作或板上。
  • Bug:仅用于在 Bug 类别中已分组的工作项类型。 除了敏捷状态类别之外,还包括已 解决 状态类别,该类别指示已解决的 bug。

注意

只能将 “已解决 ”状态类别分配给 BugWorkItems 元素下指定的工作流状态。

  • 反馈:仅用于反馈请求类别或反馈响应类别中已分组的工作项类型。 已请求已接收已审阅拒绝

状态

指定将 WIT 工作流状态与状态类别关联的 State 元素的集合。

以下父元素的必需元素:

  • BugWorkItems
  • Portfoliobacklog
  • RequirementBacklog
  • TaskBacklog
  • TestPlanWorkItems
  • TestSuiteWorkItems
  • FeedbackRequestWorkItems
  • FeedbackRequestWorkItems

设置默认列

指定要在 “列” 部分中每个积压工作上显示的字段。 通过“ 列选项 ”对话框所做的更改将一直保留,直到再次更改这些更改。

“积压工作 (Backlog)”页面的默认列及其顺序

下面是 Scrum 过程模板为产品积压工作定义的默认配置。

<Columns>
      <Column refname="Microsoft.VSTS.Common.Priority" width="400" />
      <Column refname="System.Title" width="400" />
      <Column refname="System.State" width="100" />
      <Column refname="Microsoft.VSTS.Scheduling.Effort" width="50" />
      <Column refname="System.IterationPath" width="200" />
</Columns>

Columns 元素的语法

元素

说明

“列”

指定 Column 元素的集合。 积压工作元素的必需元素: PortfolioBacklogRequirementBacklogTaskBacklog

指定要在积压工作 (backlog) 上显示为列的字段。

<Column refname="FieldReferenceName"  width="FieldWidth" />

任务板列标题

显示在任务板上的列标题对应于为分配到任务类别的默认 WIT 分配的工作流状态。 列顺序对应于工作流转换的自然进度,从左向右移动。 若要修改列布局,你需要修改分配给任务类别的 WIT 的工作流。 必须为任务类别中的默认任务类型定义的工作流状态分配给有效的状态类别,如 映射工作项类型类别的状态类别中所述。

自定义快速添加面板

你可以为任何快速添加面板添加字段。 例如,以下示例将 业务价值 添加到产品积压工作面板。

添加“业务价值”字段后的“积压工作(Backlog)”面板

面板仅显示所选 WIT 的 WIT 定义的 “字段” 部分中包含的字段。 例如,如果选择 bug WIT,则仅显示“游戏”,因为未为 bug 定义业务价值。 若要向面板添加另一个 WIT,请将其添加到“要求类别”,如 向积压工作和板中添加工作项类型中所述。

以下代码对应于 Visual Studio Scrum 和 MSF for Agile 过程模板中定义的默认分配。

<AddPanel>
      <Fields>
      <Field refname="System.Title" />
      </Fields>
</AddPanel>

AddPanel 元素的语法

元素

说明

AddPanel

用于指定“快速添加”体验的容器元素,这些字段显示在定义新积压工作项的面板区域内。

Fields

指定 Field 元素的集合。

字段

指定要显示在产品积压工作 (backlog) 的面板内的工作项字段。

<Field refname="FieldReferenceName"/>

同一字段应显示在积压工作 (backlog) 类别中包括的每个 WIT 的工作项窗体中。

设置工作项的任务板数

出于性能原因,任务板限制为最多显示 1000 个工作项。 当你打开任务板时,所有工作项都会加载到缓存中。 限制工作项的数目可能会缩短加载时间。 可以通过为 TaskBacklog 元素的 属性指定值workItemCountLimit来更改此限制。

例如,可以通过指定 workItemCountLimit="800"来降低限制:

<TaskBacklog category="Microsoft.TaskCategory" pluralName="Tasks" singularName="Task" workItemCountLimit="800" >
. . .
</TaskBacklog>

映射特定于工具的工作项类型的状态类别

状态类别映射是为其他 WIT 类别定义的。 对于 Scrum 过程模板,这包括反馈请求和响应类别的映射。 对于 MSF Agile 和 CMMI 过程模板,它还包括 Bug 类别的映射。 (Scrum 包括要求类别中的 bug,因此在 RequirementBacklog 节中定义状态类别映射。)

<FeedbackRequestWorkItems category="Microsoft.FeedbackRequestCategory" pluralName="Feedback Requests" singularName="Feedback Request">
      <States>
      <State value="Active" type="InProgress" />
      <State value="Closed" type="Complete" />
      </States>
</FeedbackRequestWorkItems>
<FeedbackResponseWorkItems category="Microsoft.FeedbackResponseCategory" pluralName="Feedback Responses" singularName="Feedback Response">
      <States>
      <State value="Active" type="InProgress" />
      <State value="Closed" type="Complete" />
      </States>
</FeedbackResponseWorkItems>

下表描述了用于定义特定于工具的工作项类型的状态类别映射的其他元素。 有关分配实际状态值和类型的信息,请参阅 映射工作项类型的类别 的状态类别。 CategoryName 必须对应于为项目定义的类别。

特定于工具的状态类别映射元素的语法

元素

说明

BugWorkItems

可选。 定义分配给 Bug 类别的工作项类型的状态类别映射的容器元素。 除了如何在显示敏捷工具时使用这些映射外,它们还控制团队资源管理器中的 “我的工作” 功能在开发人员使用 “我的工作”移动 bug 时如何更新 bug 状态。 若要了解详细信息,请参阅 (TFVC) 查看代码

<BugWorkItems category="CategoryName"  
pluralName="PluralName" singularName="SingleName">
<States>
. . .
</States>
</BugWorkItems>

FeedbackRequestWorkItems

必需。 不要自定义。 容器元素,用于定义分配给反馈请求类别的工作项类型的状态类别映射。

<FeedbackResponseWorkItems category="CategoryName"  
pluralName="PluralName" singularName="SingleName">
<States>
. . .
</States>
</FeedbackRequestWorkItems>

FeedbackRequestWorkItems

必需。 不要自定义。 容器元素,用于定义分配给反馈响应类别的工作项类型的状态类别映射。

<FeedbackResponseWorkItems category="CategoryName"  
pluralName="PluralName" singularName="SingleName">
<States>
. . .
</States>
</FeedbackResponseWorkItems>```

TestPlanWorkItems

仅当自定义测试计划的工作流状态并支持从随 Visual Studio 2013.2 或更早版本安装的 Test Manager 版本连接到项目时,才需要。

容器元素,用于定义分配给测试计划类别的工作项类型的状态类别映射。 例如:

<TestPlanWorkItems category="Microsoft.TestPlanCategory"  
pluralName="Test Plans" singularName="Test Plan">
<States>
<State type="InProgress" value="Design" />
<State type="InProgress" value="Testing" />
<State type="Complete" value="Signed Off" />
</States>
</TestPlanWorkItems>

TestSuiteWorkItems

仅当你自定义 Test Suite 的工作流状态并支持从随 Visual Studio 2013.2 或更早版本安装的 Test Manager 版本连接到项目时才需要。

容器元素,用于定义分配给测试套件类别的工作项类型的状态类别映射。 例如:

<TestSuiteWorkItems  
category="Microsoft.TestSuiteCategory"  
pluralName="Test Suites" singularName="Test Suite">
<States>
<State type="Proposed" value="Authoring" />
<State type="InProgress" value="Testing" />
<State type="Complete" value="Completed" />
</States>
</TestSuiteWorkItems>

注意

功能可用性: 若要映射 TestPlanWorkItemsTestSuiteWorkItems的状态类别,必须将应用程序层服务器升级到 TFS 2013.3 或更高版本。 然后,你可以自定义测试计划和测试套件的工作流状态。 若要了解详细信息,请参阅 测试计划和测试套件功能

分配敏捷工具字段

可以更改用于计算容量、燃尽图 (burndown chart)、预测和速度的工作项字段。 你对某个默认分配所做的任何更改都应与对用于定义和捕获该值的信息的 WIT 所做的更改对应。

例如,如果更改分配type="Activity"refname ,则应在分配给捕获活动信息的“任务类别”的 WIT 定义中包含相同的字段。

<TypeFields>
    <TypeField refname="System.AreaPath" type="Team" />
    <TypeField refname="Microsoft.VSTS.Scheduling.RemainingWork" type="RemainingWork" format="format h" />
    <TypeField refname=" Microsoft.VSTS.Common.BacklogPriority" type="Order" />
    <TypeField refname="Microsoft.VSTS.Scheduling.Effort" type="Effort" />
    <TypeField refname="Microsoft.VSTS.Common.Activity" type="Activity" />
    <TypeField refname="Microsoft.VSTS.Feedback.ApplicationStartInformation" type="ApplicationStartInformation" />
    <TypeField refname="Microsoft.VSTS.Feedback.ApplicationLaunchInstructions" type="ApplicationLaunchInstructions" />
    <TypeField refname="Microsoft.VSTS.Feedback.ApplicationType" type="ApplicationType">
        <TypeFieldValues>
            <TypeFieldValue value="Web application" type="WebApp" />
            <TypeFieldValue value="Remote machine" type="RemoteMachine" />
            <TypeFieldValue value="Client application" type="ClientApp" />
        </TypeFieldValues>
    </TypeField>
</TypeFields>

TypeFields 元素的语法

元素

说明

TypeFields

必需。 指定 TypeField 元素的集合。

TypeFields

必需。 指定一个字段的引用名称,该字段的值支持功能区域的一类活动。 指定的字段应与你在 WIT 中用来捕获功能信息的字段对应。

<TypeField refname="FieldReferenceName"  
type="NameOfType" [format="{0} TimeUnitString"] / >

仅当 时 type="RemainingWork"指定格式。 可以指定 TimeUnitString 的任何文本字符串,这些字符串要显示在当前冲刺积压工作和任务板上的容量条上。

对于 Agile 工具:

  • 活动:用于支持按活动的容量功能。 指定在分配给任务类别的 WIT 中使用的同一字段。

注意

容量工具显示的值反映为项目集合实例内所有项目中的字段定义的所有值的联合。 因此,若要限制针对冲刺容量显示的值,必须在分配给 type="Activity"的字段的所有项目中使值匹配。

  • 工作量:用于计算团队速度。 指定在分配给需求类别的 WIT 中使用的同一字段,你使用此需求类别捕获实现积压工作项所需的工作量的估计工作量级别、故事点或大小。

  • 订单:用于定义积压工作和板上的项的排序顺序。 系统根据此类型的字段定义的升序顺序在列出工作项。

注意

可以通过在积压工作 (backlog) 或板上的列表中上下拖动项来移动它们。 移动项时,后台进程会更新分配给 的 type="Order"字段。

  • RemainingWork:用于计算剩余工时和燃尽图表。 指定分配给任务类别的 WIT 中使用的同一字段,你使用任务类别捕获完成任务所剩的小时数、天数或其他度量单位。
    格式 指定的值将在报告剩余工时所在的冲刺积压工作和任务板上使用。 例如,当报告逐事件容量或每个团队成员容量,或者在任务板上任务状态的列标题旁边时。
    对于 TimeUnitString,请指定要用于反映时间值的任何文本字符串,例如小时或天。
    例如,下列元素均有效:
    format="{0} h"
    format="{0} hours"
    format="hours {0}"
    format="time {0}"
  • 团队:用于将积压工作与团队相关联。 默认值为 System.AreaPath。 若要将团队与区域路径分离,可以指定其他字段,如 使用团队字段而不是区域路径来支持团队中所述。
    对于反馈请求表单:

注意

不应更改为以下 TypeField 元素进行的默认分配。 这些分配对应于用于捕获分配给反馈请求类别的 WIT 中相应信息的字段。

  • ApplicationStartInformation:用于捕获执行应用程序的路径。

  • ApplicationLaunchInstructions:用于捕获启动指令。

  • ApplicationType:用于捕获应用程序的类型。 列出的类型对应于反馈请求的 WIT 定义中指定的允许值。

TypeFieldValues

在 时type="ApplicationType"TypeFieldValue 是必需的。 指定反馈请求表单中使用的 TypeFieldValue 元素的集合。

TypeFieldValues

必需。 不要自定义。 指定要显示在反馈请求表单上的应用程序类型的名称。

<TypeFieldValue value="ApplicationTypeName" type="TypeApp"/>

默认分配对应于反馈请求表单的类型定义中指定的允许值。

<TypeFieldValues>
<TypeFieldValue value="Web application" type="WebApp" />
<TypeFieldValue value="Remote machine" type="RemoteMachine" />
<TypeFieldValue value="Client application" type="ClientApp" />
</TypeFieldValues>

实现说明

  • 如果更改 TypeFields 部分中的 字段,则应在 WIT 定义中进行相应的更改。 例如,如果更改分配给捕获工作 工作量的字段,则应在产品积压工作项的 WIT 定义中对 Scrum) 的 bug (进行相同的更改。

  • 可以使用此 索引查找字段的引用名称。

设置非工作日

容量规划工具和燃尽图表进行的计算中删除非工作日。 默认进程(敏捷ScrumCMMI)将星期六和星期日指定为非工作日。 创建项目后, 每个团队都可以设置其特定的非工作日

<Weekends>
   <DayOfWeek>Saturday</DayOfWeek>
   <DayOfWeek>Sunday</DayOfWeek>
</Weekends>

周末元素的语法

元素

说明

DayOfWeek

Weekends 元素的必需子元素。

指定一周中对应于非工作日的一天。

<DayOfWeek>NameOfADay</DayOfWeek>

有效名称对应于一周中的英语日期: 星期日星期一星期二星期三星期四星期五星期六

注意

必须以英文指定星期几,无论本地 TFS 的安装语言如何。

周末

可选。 用于指定非工作日的容器元素。

如果你想在计算容量和燃尽图 (burndown chart) 时考虑非工作日,请指定非工作日。

更改工作项类型的颜色

在查看查询结果或积压工作时,可以根据分配给 WIT 的颜色和图标,一目了然地区分 WIT。 系统将为工作项类型定义的颜色应用于 为 WIT 指定的图标

显示智慧颜色、图标和状态颜色的查询结果

Scrum 过程模板定义以下颜色分配。 这些颜色分配对于 Agile 和 CMMI 模板是相似的。

<WorkItemColors>
      <WorkItemColor primary="FF009CCC" secondary="FFD6ECF2" name="ProductBacklogItem" />
      <WorkItemColor primary="FF773B93" secondary="FFEEE2F2" name="Feature" />
   <WorkItemColor primary="FFFF7B00" secondary="FFFFD7B5" name="Epic" />
      <WorkItemColor primary="FFF2CB1D" secondary="FFF6F5D2" name="Task" />
      <WorkItemColor primary="FFCC293D" secondary="FFFAEAE5" name="Bug" />
      <WorkItemColor primary="FFFF9D00" secondary="FFFCEECF" name="Code Review Request" />
      <WorkItemColor primary="FFFF9D00" secondary="FFFCEECF" name="Code Review Response" />
      <WorkItemColor primary="FFFF9D00" secondary="FFFCEECF" name="Feedback Request" />
      <WorkItemColor primary="FFFF9D00" secondary="FFFCEECF" name="Feedback Response" />
      <WorkItemColor primary="FFFF9D00" secondary="FFFCEECF" name="Impediment" />
      <WorkItemColor primary="FFFF9D00" secondary="FFFCEECF" name="Shared Step" />
      <WorkItemColor primary="FFFF9D00" secondary="FFFCEECF" name="Test Case" />
   <WorkItemColor primary="FFFF9D00" secondary="FFFCEECF" name="Test Plan" />
   <WorkItemColor primary="FFFF9D00" secondary="FFFCEECF" name="Test Suite" />
   <WorkItemColor primary="FFFF9D00" secondary="FFFCEECF" name="Shared Parameter" />
</WorkItemColors>

WorkItemColors 元素的语法

元素

说明

WorkItemColors

可选。 用于指定工作项类型的颜色的容器元素。

WorkItemColor

指定用于在 Web 门户中显示 WIT 的颜色。 在列表显示中使用主颜色。 不再引用辅助颜色,但必须指定它才能验证语法。

指定颜色时,始终在六位数十六进制颜色代码前面加上 FF ,表示颜色应完全可见。

<WorkItemColor primary="HexColorCode" secondary="HexColorCode"  
name="witName" />

指定属性和行为

可以设置的前两个属性, BugsBehaviorHiddenBacklogs 设置项目的默认值。 但是,每个团队都可以通过其团队设置更改行为。 第三个属性 StateColors 定义与所有 WIT 的工作流状态关联的颜色。 设置的值将用于整个项目中的所有团队。

示例 Properties 配置:

 <Properties>  
      <Property name="BugsBehavior" value="AsTasks" />  
      <Property name="HiddenBacklogs" value="Microsoft.EpicCategory" />  
      <Property name="StateColors" value="Active=#FF00FF00,Resolved=#FFFF0000" />
      <Property name="WorkItemTypeIcons" value="Epic=Icon_Crown,Feature=Icon_Trophy,User Story=icon_book,
        Task=icon_clipboard,Bug=icon_insect,Issue=icon_traffic_cone,
        Test Plan=icon_test_plan,Test Suite=icon_test_suite,Test Case=icon_test_case,Shared Steps=icon_test_step,
        Shared Parameter=icon_test_parameter" />  
  </Properties>  

属性 BugsBehavior 确定 bug 以及 Bug 类别中定义的其他 WIT 如何显示在积压工作和板上。 基本上,可以配置 bug 是被视为要求、任务还是不会出现在积压工作 (backlog) 和板上。 有关详细信息,请参阅 显示积压工作和板上的 bug

属性 HiddenBacklogs 确定默认情况下显示的积压工作/项目组合积压工作。 默认设置是仅显示产品积压工作和一级项目组合积压工作,即功能积压工作。 团队可以确定是否要激活 Epics 积压工作,或进行其他更改。 有关详细信息,请参阅 组织积压工作、激活团队的积压工作级别

Properties 元素的语法

元素

说明

属性

可选。 用于指定默认属性和行为的容器元素。

属性

指定在更新具有新功能的项目时对新团队或现有团队进行的默认分配。 团队可以通过其团队设置选择所需的行为。

有效的属性名称为:

  • BugsBehavior 为“ 在积压工作和板上显示 bug”设置默认值。 允许的值对应于:
  • AsRequirements — 积压工作和板上出现 Bug 类似于 Scrum 进程) (默认设置的要求
  • AsTasks — 积压工作和板上出现的 Bug 类似于敏捷和 CMMI 流程 (默认任务)
  • 关闭 - Bug 不会出现在积压工作或板上
  • HiddenBacklogs 指定 默认情况下处于非活动状态的积压工作
  • StateColors 设置工作流状态的颜色值。 (需要 TFS 2017 或更高版本)
    属性的值是状态名称和十六进制颜色的逗号分隔列表。 在六位数的十六进制颜色代码前面加上 FF,表示颜色应完全可见。
    <Property name="StateColors" value="stateName1=color1, stateName2=color2,..." />

注意

功能可用性: 如果使用托管 XML,或者对于本地 XML,已升级到 TFS 2015.2 或更高版本,则可以指定工作流状态颜色。
有关更多详细信息,请参阅下一部分 指定工作流状态颜色

  • WorkItemTypeIcons 定义要为每个工作项类型显示的图标。 图标显示在工作项列表和工作项窗体中。 敏捷过程的默认条目如下所示。 只能从 支持的图标列表中指定图标

<Property name="WorkItemTypeIcons" 
value="Epic=Icon_Crown,Feature=Icon_Trophy,  
User Story=icon_book,Task=icon_clipboard,Bug=icon_insect,  
Issue=icon_traffic_cone,Test Plan=icon_test_plan,Test Suite=icon_test_suite,  
Test Case=icon_test_beaker,Shared Steps=icon_test_step,Shared Parameter=icon_test_parameter" />

注意

功能可用性: 如果使用托管 XML,则可以自定义用于工作项类型的图标,或者对于本地 XML,已升级到 TFS 2017.2 或更高版本。

指定工作流状态颜色

注意

功能可用性:若要指定工作流状态颜色,必须升级到 TFS 2015.2 或更高版本。

与工作项状态关联的颜色将在产品中显示。 这包括以下方面:

下面我们展示了它在工作项窗体中的显示方式:

Bug 工作项表单标题,显示状态颜色

注意

客户端工作项窗体中或客户端窗体中的旧链接控件中不显示任何颜色。

详细信息:

  • 必须将颜色指定为八位数的十六进制值,类似于用于为 WIT 定义的颜色
  • 若要添加或编辑颜色,只需使用更新的属性重新导入进程配置
  • 状态颜色由所有工作项类型的名称定义,也就是说,无法将用户情景的“活动”颜色设置为一种颜色,而对于 Bug 则为不同的颜色
  • 未映射的颜色在运行时根据其元状态映射默认
  • 未定义颜色且没有元状态映射的状态将显示一个空圆圈。

指定 WIT 图标

注意

功能可用性: 如果使用托管 XML,则可以自定义用于工作项类型的图标,或者对于本地 XML,已升级到 TFS 2017.2 或更高版本。

下面显示了可为工作项类型指定的受支持图标集。

icon_airplane、icon_asterisk、 icon_book、icon_car、icon_chart、icon_chat_bubble、icon_check_box、icon_clipboard、icon_code_response、icon_code_reviewicon_palette、icon_crown、icon_database_storage、icon_diamond、icon_flame、icon_gavel、icon_gear、icon_gift、icon_government、icon_headphoneicon_insect、icon_key、icon_list、icon_megaphone、icon_paint_brush、 icon_parachute、icon_response、icon_review、icon_ribbon、icon_sticky_noteicon_star、icon_test_beaker、icon_test_parameter、icon_test_plan、icon_test_step、icon_test_suite、icon_traffic_cone、icon_trophy

注意

Azure DevOps Services 和 TFS 2017.3 及更高版本支持标有星号的图标。

系统将为工作项类型定义的颜色应用于图标。 颜色和图标显示在显示工作项的 Web 门户中。 这包括 PR 中的 相关工作 、链接列表、 项目 页面以及 工作 积压工作、板、查询和计划。

例如,此处显示列表视图...

Web 门户,包含图标的工作项列表

在这里,图标显示在工作项窗体中。

Bug 工作项窗体标题,显示的工作项类型图标

通过以下附加主题详细了解 Web 工作项表单以及如何对其进行自定义:

如果已添加自定义 WIT 并想要将其添加到积压工作或任务板,则可以。 你只是不能让它们同时出现在这两个位置。 阅读 将工作项类型添加到积压工作和版块,了解如何操作。