在分类插件中定义初始区域和迭代

定义分类,以帮助基于有用类别(例如,相关产品功能和项目里程碑)对工作进行跟踪、分组和报告。定义区域可将工作项组织到逻辑类别、物理类别或功能类别中。定义迭代可将工作项分组到里程碑或时间周期类别中。例如,团队可以将产品工作组织为客户端区域、服务器区域和扩展区域。定义的迭代确定了团队将重复一组特定主要活动(如计划、开发和测试)的次数。

您定义的分类显示在新团队项目的**“区域和迭代”**对话框中,如下图所示:

区域和迭代

创建团队项目后,您可以使用 Team Foundation 的任何客户端应用程序来修改区域和迭代。您还可以定义权限以控制对项目区域或迭代的访问。有关适用于分类的准则和命名限制,请参见创建和修改区域和迭代。有关跟踪区域和迭代的字段的信息,请参见区域和迭代字段引用

除了区域和迭代之外,您指定要在“分类”插件中上载的 Microsoft Project 的映射文件。

重要说明重要事项

默认情况下,Microsoft Solution Framework (MSF) 过程模板定义了零个区域节点和三个迭代节点,分别名为 Iteration 1、Iteration 2 和 Iteration 3。工作项查询的定义中引用了迭代节点,WorkItemTracking 插件和“门户”插件中定义了任务。

主题内容

  • “分类”插件的名称和位置

  • 分类任务与依赖关系

  • 指定初始产品区域

  • 指定初始迭代

  • 指定要上载的 Microsoft Office Project 字段映射文件

  • “分类”插件元素参考

“分类”插件的名称和位置

下表列出了 Microsoft Solutions Framework (MSF) 过程模板的文件、文件夹和插件的名称。

文件名:

Classification.xml

文件夹名称:

分类

插件名称:

Microsoft.ProjectCreationWizard.Classification

说明说明

可以更改 XML 文件和文件夹的名称,但不能更改插件名称。Team Foundation Server 并不包括用于部署客户端插件、策略或其他修改的机制。如果您希望部署此类功能,则必须使用您自己的分发和安装程序。

返回页首

分类任务与依赖关系

“分类”插件文件必须遵循 Css.xsd 文件中为其指定的架构定义,并且该插件必须在其自己的文件中指定。您可以从 Microsoft 网站上的以下页面下载过程模板的架构文件:Process Template and Work Item Schemas for Visual Studio Team Foundation(Visual Studio Team Foundation 的过程模板和工作项架构)。

在 XML 文件中,指定一个或多个任务以及它们的依赖项。通常,只需要一个任务就可以指定团队项目所需的所有迭代和节点。

说明说明

在修改过程模板的区域或迭代时,请确保不会破坏用于工作项查询的任何指派或过程模板中定义的工作项。例如,适用于敏捷软件开发的 MSF 过程模板的 Iteration1Backlog.wiq 工作项查询引用“迭代 1”。有关更多信息,请参见向过程模板添加工作项查询

返回页首

指定初始产品区域

使用以下语法指定区域的根节点:

<Node StructureType="ProjectModelHierarchy" Name="Area" >

为您的过程所需的任意数量的区域指定零个或多个子节点。使用 Node 元素以指定每个区域,并将 StructureType 特性设置为 ProjectModelHierarchy。

<Node StructureType="ProjectModelHierarchy" Name="NodeName" ></Node>

下面的示例演示如何指定两个区域,即 Client 和 Server:

<?xml version="1.0" encoding="utf-8" ?>
<tasks>
   <task
      id="UploadStructure"
      name="Creating project structure"
      plugin="Microsoft.ProjectCreationWizard.Classification"
      completionMessage="Portfolio project structure created.">
      <taskXml>
         <Nodes>
            <Node StructureType="ProjectModelHierarchy" Name="Teams" >
               <Children>
                  <Node StructureType="ProjectModelHierarchy" Name="Client"></Node>
                  <Node StructureType="ProjectModelHierarchy" Name="Server"></Node>
               </Children>
            </Node>
         </Nodes>
      </taskXml>
   </task>
</tasks>

返回页首

指定初始迭代路径

使用以下语法指定迭代的根节点:

<Node StructureType="ProjectLifecycle" Name="NodeName" >

为您的过程所需的任意数量的迭代指定零个或多个子节点。使用 Node 元素以指定每个迭代,并将 StructureType 特性设置为 ProjectLifecycle。

下面的示例说明如何指定四个迭代:Milestone 1、Milestone 2、Beta 和 RTM。

<?xml version="1.0" encoding="utf-8" ?>
<tasks>
   <task
      id="UploadStructure"
      name="Creating project structure"
      plugin="Microsoft.ProjectCreationWizard.Classification"
      completionMessage="Team project structure created.">
      <taskXml>
         <Nodes>
            <Node StructureType="ProjectLifecycle" Name="Iteration" >
               <Children>
                  <Node StructureType="ProjectLifecycle" Name="Milestone 1"></Node>
                  <Node StructureType="ProjectLifecycle" Name="Milestone 2"></Node>
                  <Node StructureType="ProjectLifecycle" Name="Beta"></Node>
                  <Node StructureType="ProjectLifecycle" Name="RTM"></Node>
               </Children>
            </Node>
         </Nodes>
      </taskXml>
   </task>
</tasks>

返回页首

指定 Microsoft Project 字段映射文件

您指定包含 Classification.xml 文件的 properties 部分中的 Microsoft Project 字段映射的文件。使用 property 元素可指定要上载的文件,已为 MSF 过程模板将该文件标记为 FileMapping.xml。该文件包含 Microsoft Project 中的字段和 Team Foundation 中的字段之间的映射。该文件将上载到团队项目的数据库。下面的示例演示了该条目的语法结构:

<properties>
   <property name="MSPROJ" 
             value="Classification\FileMapping.xml" 
             isFile="true" />
</properties>

若要自定义此文件,请参见将 Microsoft Project 字段映射到 Team Foundation 字段

返回页首

“分类”插件元素参考

下表介绍用来定义初始产品区域和迭代的元素。在 Classification 插件文件中的 taskXml 容器内指定这些元素。有关此元素的信息,请参见定义用于处理插件的任务

警告说明警告

Css.xsd 架构文件不定义 property 或 properties 元素。当您上载过程模板时,过程模板管理器会先验证这些元素,然后再在 Team Foundation Server 中存储这些元素。

通过指定嵌套节点和子节点的树路径,来定义区域和迭代。有关更多信息,请参见Restrictions on Area and Iteration Paths

Children

<Children>
    <Node> . . . </Node>
</Children>

Children 是 Node 的可选子元素。

包含子区域或迭代的定义。

Node

<Node StructureType="ProjectLifecycle | ProjectModelHierarchy" Name="NodeName">
   <Node> . . . </Node>
   <Children> . . . </Children>
</Node>

Node 是 Nodes 和 Children 的可选子元素。

定义树的结构。对迭代使用 ProjectLifecycle,而对区域使用 ProjectModelHierarchy。节点名称不应超过 255 个字符。

Nodes

<Nodes>
   <Node> . . . </Node>
</Nodes>

Nodes 是“分类”插件的 taskXml 的必需子元素。

包含区域和迭代定义。

properties

<properties>
   <property />
</properties>

properties 是“分类”插件的 taskXml 的必需子元素。

property

<property name="property name" value="Classification\FileName" isFile="true | false" />

其中,将对每个特性应用以下定义:

  • name:必需。定义属性的名称。只有 MSPROJ 是有效名称。

  • value:必需。定义字段映射文件的相对路径。

  • isFile:可选。指定文件中是否定义了该属性。如果值为 true,则文件必须存在,否则过程模板验证将失败。

property 是 properties 的一个必选子元素。

定义项目相关数据,如 Microsoft Project 的 XML 映射数据。

返回页首

请参见

概念

创建和修改区域和迭代

在过程模板中自定义功能区域