自定义项目跟踪数据、窗体、工作流及其他对象

通过自定义用于跟踪工作项的一个或多个对象,可以自定义如何跟踪团队项目以及如何设计工作流、工作项窗体和数据字段。如下图所示,可以创建或自定义对象的八种类型。您管理类别,工作项类型,并处理团队项目的配置。可以管理团队项目集合的全局列表、链接类型和工作项字段。可以自定义团队项目或集合的全局工作流。

工作项跟踪对象

说明说明

有关为团队项目自定义公共领域的概述,请参见 自定义工作项跟踪和团队项目

除数据字段,可以从 Team Foundation 导出和导入每个对象的定义用于跟踪工作项作为 XML 文件。您可以创建或修改每组对象以满足您的需要。

说明说明

进程编辑器是一个强大的 Visual Studio 工具,您可以使用该工具创建和修改跟踪工作项的对象。您可以使用此工具导入和导出工作项类型的全局列表和类型,修改工作项类型,查看为集合定义的字段列表。此工具不受支持。有关更多信息,请参见 Microsoft 网站上的以下页面:Team Foundation server 增强工具.

团队成员可以使用工作项来跟踪要在项目中完成的工作。成员可以基于默认“工作项类型”(例如 Bug、要求、风险或任务)创建工作项。可用于团队项目的默认工作项类型的确切集合取决于创建该团队项目的过程模板。工作项类型是可用于创建该类型的工作项的模板。有关更多信息,请参见选择过程模板

您可以向默认集中添加自定义的工作项类型,以便 Team Foundation 能够更好地为团队使用的过程和您的通信方式提供帮助。例如,您可能希望为特定于项目的 Bug、更改请求、服务质量要求、管理风险和基于方案的任务创建工作项类型。

创建工作项之后,工作项将包含创建它所使用的工作项类型中定义的字段和行为。除了创建工作项类型,还可以修改现有的工作项类型。例如,为了更好地支持您的团队使用的过程,可以向工作项类型中添加字段或更改其工作流行为。

主题内容

  • 定义和自定义用于跟踪工作的对象

  • 计划您的自定义要求

  • 相关任务

定义和自定义用于跟踪工作的对象

对象

描述

相关主题

类别

类别定义可跟踪类似工作项但由不同名称表示的一组工作项类型。可以将同一团队项目中的一个或多个工作项类型分组到某个类别中。可以定义类别以支持查询运行、报表生成以及在特定实例中设置默认工作项类型。可以使用“在组中”运算符查找属于某类别的工作项。有关更多信息,请参见查询字段、运算符、值和变量

定义类别以分组工作项类型

字段

字段定义用于跟踪工作的数据类型。可以使用工作项字段跟踪工作项类型的数据、定义查询的筛选条件以及生成报表。必须定义每个非内置数据元素、过程模板不提供的每个数据元素以及您需要跟踪、用于定义工作流或在工作项类型窗体中显示的每个数据元素。使用 FIELD 元素,可以定义工作项类型的数据元素或全局工作流。

每个字段通过一个或多个特性进行定义,包括可以包含的数据类型、是否在报告中使用以及是否建立索引。还可以指定可选元素,以便使用工作项窗体限制、自动填充用户可以将字段设置为的值,或者为这些值指定条件。

您可以添加字段、移除字段或自定义如何使用其跟踪数据。有关如何定义工作项的信息,请参见本主题后面所述的定义和自定义数据字段。

定义工作项字段

工作项字段参考 (Visual Studio ALM)

添加和修改工作项字段以支持报告

全局列表

全局列表定义值列表(称为选取列表),可以跨工作项类型使用该列表控制用户可以在工作项中将字段设置为的一个或多个值。可以使用全局列表快速更新用于许多工作项类型的选取列表的内容。

尽管可以在工作项类型中定义全局列表,但是建议不要这样做,因为在导入工作项类型定义时,工作项类型定义将覆盖在其他位置定义的更改。最佳做法是通过全局列表或全局工作流的定义文件定义和导入全局列表。

定义全局列表

全局工作流

全局工作流定义可用于团队项目或集合的所有工作项类型的字段和全局列表。

自定义全局工作流

链接类型

链接类型定义规则和限制,以便控制用户可以在两个工作项之间建立的关系。除内置的链接类型之外,还可以创建链接类型来支持您的项目跟踪要求。开始在工作项之间创建链接之前,应分析如何使用链接来计划您的项目以及跟踪工作项的状态。

定义自定义链接类型

处理配置

处理配置元素控制积压工作和任务的敏捷工具的布局和功能提供 Team Web Access。

如果您的团队项目已使用创建过程模板除了 Visual Studio 提供的参数以外 ALM 或您自定义工作项的类型定义,您可能需要自定义支持进程配置的定义文件。然后,因此,如果自定义或工作项的添加的类型并且希望使用这些字段,则将若要确定如何修改进程配置元素匹配自定义的其他对象。

使用进程配置自定义积压工作和板页

工作项类型

工作项类型定义用于跟踪团队项目工作的对象,例如 Bug、要求或风险。下面的组件定义工作项类型:

  • 字段定义工作项包含的数据类型。可以通过在工作项类型或全局工作流的定义中包含 FIELDS(定义)部分来定义字段。

  • 工作流定义工作项如何从打开或活动状态转换为已关闭或已完成状态。通过定义工作流的初始状态、有效状态、这些状态之间的有效转换以及有权启动这些转换的用户或组,可以控制该工作流。工作项类型的 WORKFLOW 节控制如何跟踪工作项。

  • 窗体定义在窗体上显示的布局和内容,团队成员通过与窗体进行交互来跟踪工作项数据。通过更新工作项类型定义的 FORM 部分,可控制用户界面元素的显示方式。每个工作项类型必须只有一个窗体。但是,您可以为窗体定义一个或多个布局以面向不同客户端。您需要描述整个窗体,包括分组所有数据字段的方式。

所有 WITD XML 元素参考

定义和自定义工作项工作流

设计和自定义工作项窗体

添加和自定义工作项类型

创建工作项类型

返回页首

计划您的自定义要求

在定义和自定义用于跟踪工作的对象之前,请查看指南的以下各节以通知您的计划。

  • 自定义过程

  • 系统字段

  • 定义数据字段

  • 人名字段

  • 在 TFS 和 Microsoft Project 之间的映射字段

  • 更改现有字段

  • 使用的全局列表和全局工作流

ms243849.collapse_all(zh-cn,VS.110).gif自定义过程

计划创建或自定义跟踪工作的对象时,您应该考虑尽可能多地包含以下过程:

  • 标识用于自定义支持跟踪要求的工作项的最佳选项。更改跟踪工作项的对象时,应标识这些更改将如何影响现有和将来的团队项目。请参见 确定自定义要求的范围

  • 查看处于机智对象,敏捷计划,报告之间,并且,团队过程相互依赖关系。请参见 自定义团队项目和过程

  • 对于执行工作的用户和跟踪工作项的工作流中出现的用户,明确他们的角色和职责。

  • 自定义对象和修改部署时自动化并记录所做更改。

  • 像测试软件那样测试自定义对象。

  • 将过程模板和对象置于版本控制之下。请勿部署已定义但尚未存储在储存库中的对象。

  • 始终首先更改测试环境。确保测试环境中跟踪工作的对象与生产环境中的对象相似或相同。

返回页首

ms243849.collapse_all(zh-cn,VS.110).gif系统字段

多个系统字段可用于所有工作项类型的引用,即使未在每个类型定义中使用 FIELD(定义)元素显式定义这些字段。系统字段的名称都以“System”前缀开头(例如 System.ID)。其中大多数字段用于跟踪用途,并且用户只能通过用户界面修改少数字段。默认情况下,可以使用以下类型的所有字段:

  • 标识字段“标题”、**“说明”“指派给”**字段。这些字段有助于标识每个工作项,并且用户可以通过用户界面修改其值。这些字段通常包含在每个工作项类型的窗体中。

  • 跟踪字段“ID”“工作项类型”“团队项目”“修订号”,以及提供链接到工作项的项目数的字段,例如**“附加文件计数”“外部链接计数”“超链接计数”“相关链接计数”**。如果在工作项窗体中包含这些字段,则应该将这些字段设置为只读。在查找一个工作项或一组工作项以及生成报表时,这些字段很有用。

  • 审核字段“创建者”“创建日期”“更改者”“更改日期”“历史记录”。这些字段用于跟踪创建或更改工作项的用户以及创建或更改工作项的日期。修改工作项中的任何字段时,“历史记录”字段都会自动更新。

  • 特殊行为字段“状态”“原因”“区域”“迭代”。特定行为与这些字段中的每个字段相关联。“状态”和“原因”字段的行为由工作流机制和规则控制。“区域”和“迭代”路径是定义的唯一 TreePath 字段。您可以在**“区域和迭代”**对话框中定义团队项目的有效值。有关更多信息,请参见创建和修改区域和迭代

有关更多信息,请参见工作项字段参考 (Visual Studio ALM)

返回页首

ms243849.collapse_all(zh-cn,VS.110).gif定义数据字段

定义数据字段或工作项类型时,应考虑以下准则:

  • 除内置的数据字段以及已定义的数据字段之外,还应确定所需的数据字段。有关现有字段的更多信息,请参见工作项字段参考 (Visual Studio ALM)。此外,还可以使用 witadmin listfields 命令导出为项目集合定义的字段列表。有关更多信息,请参见管理工作项字段 [witadmin]

  • 确定是否必须修改现有字段规则。

  • 将现有工作项类型的工作流与团队过程所需的工作流进行比较。请首先考虑工作流,然后考虑状态标签。

  • 添加或自定义字段时,确定是否必须实现任何特殊逻辑。

    • 是否需要限制字段规则以便仅应用于一个或多个用户或组?

    • 是否需要基于状态、转换或转换原因限制字段规则?

    • 是否需要将字段与静态或动态值列表相关联?您需要哪些枚举列表以及如何跨工作项类型和团队项目共享这些枚举列表。

      静态列表很少需要更新。动态列表可以基于一组用户名或客户名。能否使用全局列表最大程度地减少列表更新时间?能否使用 Active Directory 和人名字段同步列表?

    • 您是否需要定义一组将跨多个团队项目或工作项类型按照一致方式使用的字段?

      如果您的团队必须跨多个工作项类型跟踪字段,能否在全局工作流中(而非每个工作项类型中)定义这些字段?

说明说明

不能定义计算包含在多个字段中的数据的字段。

有关更多信息,请参见定义工作项字段

返回页首

ms243849.collapse_all(zh-cn,VS.110).gif人名字段

可以使用 String 数据类型定义用于存储人名的字段。如果要将此字段的有效名称列表与 Active Directory 中存储的名称进行同步,可以将 syncnamechanges 特性设置为 true。此外,还可以更改现有 String 字段的这一特性,以支人名持同步。有关更多信息,请参见管理工作项字段 [witadmin]

返回页首

ms243849.collapse_all(zh-cn,VS.110).gif在 TFS 和 Microsoft Project 之间的映射字段

如果使用 Microsoft Project 管理项目时间表,则可以定义您可以查看或从项目计划中修改的字段并将这些字段添加到工作项窗体中。如果您的团队项目基于 Microsoft Solutions Framework (MSF) 过程模板,则在创建团队项目时已经上载了默认映射文件。

Microsoft Project 字段映射文件确定 Team Foundation 和 Microsoft Project 之间的字段映射。有关更多信息,请参见自定义 Microsoft Project 字段映射使用 Microsoft Project 安排任务和分配资源

返回页首

ms243849.collapse_all(zh-cn,VS.110).gif更改现有字段

定义数据字段后,对它们进行更改时会产生一些费用。

通过工作项类型或全局工作流定义的所有字段都是为团队项目集合定义的。定义字段类似于向全局数据库表中添加新记录,全局数据库表中包含每个记录的友好名称、引用名称和其他字段特性。集合中的所有工作项类型都引用此表。因此,如果您决定重命名字段、修改特性或删除字段,则会影响引用该字段的所有工作项类型。

此外,Team Foundation Server 的所有部署集合中来自所有团队项目的所有可报告数据都将写入一个关系数据仓库。随后将对来自该仓库的数据进行处理,并将其写入 SQL Server Analysis Services 多维数据集。通过将数据收集到单个数据仓库,可以跨集合进行报告。但是,由于针对每个集合管理字段的方式各不相同,因此在向已分配相同报告引用名称的字段的一个或多个特性分配不同的定义时,会产生架构冲突。

另外,在向工作项类型添加字段时,如果另一类型已使用同一引用名称,则无法覆盖数据类型或字段名称。另外,以下限制也适用:

  • 从特定工作项类型中移除字段时,不会将该字段从集合或数据库服务器中移除,即使任何工作项类型都不再引用它。若要移除字段,必须使用 witadmin deletefield 命令从集合中将其显式删除。

  • 删除字段之前,应首先将其从引用它的所有工作项类型的定义和引用它的所有全局工作流的定义中移除。

  • 如果删除的字段用于报告功能,则必须重新生成数据仓库以清除旧字段及其值。

返回页首

ms243849.collapse_all(zh-cn,VS.110).gif使用的全局列表和全局工作流

可以通过将一些对象定义为全局对象,简化工作项类型的维护和自定义活动。全局对象对于团队项目或项目集合均可用。可以将它们添加到过程模板中,以使其可用于新团队项目或将其上载到其他项目集合。在制定计划时,请确定团队项目和工作项类型将如何使用全局列表和字段。

可以通过以下方式定义全局列表:作为工作项类型定义的一部分、作为全局工作流的一部分,或作为导入项目集合的全局列表自己的定义文件。建议采用后两种方法,因为可以在一个位置维护所有全局列表,并可避免在更改现有工作项类型时不小心修改全局列表。

可以通过 XML 定义文件定义全局工作流并为团队项目或集合导入全局工作流。全局工作流可以包含字段定义和全局列表。

有关更多信息,请参见定义全局列表自定义全局工作流

返回页首

相关任务

任务

相关内容

了解如何命名字段及用于跟踪工作项的其他对象。您可以为跟踪工作项所用的每个对象指定一个友好名称。对于某些对象,还必须指定引用名称。这两类名称都必须满足基于对象类型定义的要求。

查找工作项类型元素的架构定义。可以查看与工作项类型相关联的每个架构元素的语法。

标识工作项类型定义中可以本地化的内容。可以对工作项类型定义的部分内容进行本地化,以便能够按用户所在国家/地区的语言显示这些部分。

导入、导出和管理用于跟踪工作项的对象。利用 witadmin 命令行工具,可以创建、删除、导入和导出类别、全局列表、链接类型、工作项类型以及工作项字段。您可以为每个集合或每个团队项目管理这些对象。

请参见

概念

使用工作项跟踪插件来定义和自定义用于跟踪工作项的对象

自定义过程模板

跟踪工作和管理工作流

自定义团队项目和过程