Share via


分類プラグインによる初期の区分およびイテレーションの定義

分類を定義することで、関連する製品機能やプロジェクトのマイルストーンなどの使いやすいカテゴリに基づいて、作業の追跡、グループ化およびレポートを実行できるようにします。区分は、作業項目を論理カテゴリ、物理カテゴリ、または機能カテゴリに整理するために定義します。イテレーションは、作業項目をマイルストーンや時間サイクルのカテゴリにグループ化するために定義します。たとえば、チームは、作業生産物を、クライアント区分、サーバー区分、および機能拡張区分に整理できます。イテレーションは、主要なアクティビティ (計画、開発、テストなど) の特定のセットをチームが繰り返す回数を決定します。

定義した分類は、次の図に示すように、新しいチーム プロジェクトの [区分およびイテレーション] ダイアログ ボックスに表示されます。

区分およびイテレーション

チーム プロジェクトが作成された後で、Team Foundation 用のクライアント アプリケーションを使用して、そのチーム プロジェクトの区分およびイテレーションを変更できます。プロジェクト区分やイテレーションへのアクセスを制御するには、アクセス許可も定義する必要があります。分類に適用するガイドラインと名前付けの制限事項の詳細については、「区分およびイテレーションの作成および修正」を参照してください。区分とイテレーションを追跡するフィールドの詳細については、「区分およびイテレーションのフィールド参照」を参照してください。

区分とイテレーションのほかには、Microsoft Project のマッピング ファイルを指定して、分類プラグインにアップロードします。

重要 : 重要

既定では、Microsoft Solution Framework (MSF) のプロセス テンプレートには、区分ノードが定義されておらず、"イテレーション 1"、"イテレーション 2"、および "イテレーション 3" という 3 つのイテレーション ノードがあるだけです。イテレーション ノードは作業項目クエリの定義内で参照され、タスクは作業項目トラッキングとポータルのプラグインで定義されます。

このトピックの内容

  • 分類プラグインの名前と場所

  • 分類のタスクと依存関係

  • 初期の製品区分の指定

  • 初期のイテレーションの指定

  • アップロードする Microsoft Office Project フィールド マッピング ファイルの指定

  • 分類プラグインの要素リファレンス

分類プラグインの名前と場所

次の表に、MSF (Microsoft Solutions Framework) 用のプロセス テンプレートのファイル、フォルダー、およびプラグインの名前を示します。

ファイル名:

Classification.xml

フォルダー名:

分類

プラグイン名:

Microsoft.ProjectCreationWizard.Classification

[!メモ]

この XML ファイルとフォルダーの名前は変更できますが、プラグインの名前は変更できません。Team Foundation Server には、クライアント側のプラグイン、ポリシー、その他の変更を配置する機構は含まれていません。このような機能を配置するには、配布とインストールを行う独自のプログラムを使用する必要があります。

ページのトップへ

分類のタスクと依存関係

分類プラグイン ファイルは、Css.xsd ファイルで指定されているスキーマ定義に従っている必要があり、プラグインは独自のファイルで指定されている必要があります。プロセス テンプレートのスキーマ ファイルは、Microsoft Web サイトの「Process Template and Work Item Schemas for Visual Studio Team Foundation (Visual Studio Team Foundation のプロセス テンプレート スキーマと作業項目スキーマ)」でダウンロードできます。

XML ファイルでは、1 つまたは複数のタスクとその依存関係を指定します。通常は、1 つのタスクで、チーム プロジェクトで必要なすべてのイテレーションとノードを指定できます。

[!メモ]

プロセス テンプレートの区分またはイテレーションを変更する場合は、プロセス テンプレートで定義されている作業項目クエリまたは作業項目に使用される割り当てを損なわないようにしてください。たとえば、アジャイル ソフトウェア開発用の MSF プロセス テンプレートの Iteration1Backlog.wiq 作業項目クエリでは、イテレーション 1 を参照しています。詳細については、「プロセス テンプレートへの作業項目クエリの追加」を参照してください。

ページのトップへ

初期の製品区分の指定

区分のルート ノードを指定するには、次の構文を使用します。

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

目的に合わせて必要な区分の数だけ、0 個以上の子ノードを指定します。Node 要素を使用して各区分を指定し、StructureType 属性を ProjectModelHierarchy に設定します。

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

次の例は、Client および Server という 2 つの区分の指定方法を示しています。

<?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" >

目的に合わせて必要なイテレーションの数だけ、0 個以上の子ノードを指定します。Node 要素を使用して各イテレーションを指定し、StructureType 属性を ProjectLifecycle に設定します。

次の例は、Milestone 1、Milestone 2、Beta、および RTM という 4 つのイテレーションの指定方法を示しています。

<?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 フィールドへのマッピング」を参照してください。

ページのトップへ

分類プラグインの要素リファレンス

初期の製品区分とイテレーションの定義に使用する要素を次の表に示します。分類プラグイン ファイルの taskXml コンテナー要素内で、次の要素を指定します。この要素の詳細については、「プラグインを処理するタスクの定義」を参照してください。

Caution メモ注意

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 マッピング データなど、プロジェクト関連のデータを定義します。

ページのトップへ

参照

概念

区分およびイテレーションの作成および修正

プロセス テンプレート内の機能区分のカスタマイズ