TFS と Project Server の統合の構成

Visual Studio Team Foundation Server (TFS) と Microsoft Project Server との間でデータを同期するには、製品間で複数の統合ポイントを構成しておく必要があります。

次の図に示すように、6 つの手順でこれらの製品を統合します。

Team Foundation Server と Project Server の統合の構成

Project Server-Team Foundation Server のプロビジョニング

注意

コミュニティに質問を投稿するには、Microsoft Web サイトにある「Team Foundation Server and Project Server Integration (Team Foundation Server および Project Server の統合)」というフォーラム ポストを参照してください。

要件

このトピックの各手順を実行するには、次のグループに属しているか、次のアクセス許可が付与されている必要があります。

  • 2 つのサーバー製品の統合を構成するには、事前に Project Server 用の 拡張機能をインストールする必要があります。 拡張機能をインストールする前に、必要なソフトウェアがすべてインストールされ、構成されていることを確認します。

  • Team Foundation のアクセス許可を付与するには、Team Foundation 管理者グループに属しているか、[インスタンスレベル情報の表示] および [インスタンスレベル情報の編集] アクセス許可が [許可] に設定されている必要があります。 また、Team Foundation 管理コンソールにアクセスできるか、チーム エクスプローラーを使用してチーム プロジェクト コレクションの [グループ メンバーシップ] ダイアログ ボックスにアクセスできる必要があります。

  • Project Server のアクセス許可を付与するには、Project Web Access または Project Web App (PWA) のインスタンスに対するグローバル アクセス権 "ユーザーとグループの管理" が必要です。 また、PWA を使用して Project Server にアクセスできる必要があります。

  • SSP のアクセス許可を付与するには、ファーム管理者グループ、Project Server をサポートしている Web アプリケーションの管理者グループ、または SharePoint 管理グループに属している必要があります。 グループ メンバーシップは、配置のセキュリティ アーキテクチャによって決まります。

  • stsadm.exe を使用するには、ローカル コンピューターの管理者である必要があります。

情報の収集

次の表に、エンタープライズ プロジェクト計画とチーム プロジェクトのデータの同期を構成するために必要な情報を示します。

パラメーターまたは情報

メモ

Team Foundation Server のアプリケーション層サーバーの URL (Uniform Resource Locator)

http://ServerName:Port/VirtualDirectoryName

仮想ディレクトリを指定しない場合は、次の形式で URL を指定します。

http://ServerName:Port

PWA のインスタンスを、Visual Studio Team Foundation Server 2013 がインストールされている TFS アプリケーション層サーバーに登録します。 詳細については、「TFS と Project Server を統合するためのシステム要件およびセットアップ要件」を参照してください。

同期するデータを含むエンタープライズ プロジェクト計画をサポートする PWA の各インスタンスの URL

http://PWAServerName/PWA

PWA の URL を特定するには、次の手順を実行します。

  1. インスタンスをホストするサーバーで、SharePoint サーバーの全体管理を開きます。

  2. [アプリケーション構成の管理] で、[サービス アプリケーションの管理] をクリックします。

  3. [サービス アプリケーション] ページで、[Project Server Service アプリケーション] をクリックします。

  4. アクセスするインスタンスに対応する URL をクリックします。

同期するデータを含むチーム プロジェクト コレクションおよびチーム プロジェクトをホストするアプリケーション層サーバーに、PWA の各インスタンスを登録する必要があります。 PWA のインスタンスを登録できるのは、Project Server のアプリケーション層に Project Server 用の Team Foundation Server 拡張機能がインストールされている場合だけです。

同期するデータを含むチーム プロジェクトをホストする各チーム プロジェクト コレクションの URL

http://ServerName:Port/VirtualDirectoryName/CollectionName

仮想ディレクトリを指定しない場合は、次の形式で URL を指定します。

http://ServerName:Port/CollectionName

エンタープライズ プロジェクトと同期するデータを含むチーム プロジェクトをホストする、各チーム プロジェクト コレクションをマップする必要があります。

同期するエンタープライズ プロジェクト計画の名前

MyEnterpriseProject または "My Enterprise Project"

各エンタープライズ プロジェクト計画をチーム プロジェクトに関連付ける必要があります。

エンタープライズ プロジェクト計画と同期する作業項目を含むチーム プロジェクトの名前

MyTeamProject または "My Team Project"

1 つのチーム プロジェクトに複数のエンタープライズ プロジェクト計画を関連付けることができます。

同期する作業項目の種類の名前

プロジェクト計画のタスクと同期するように定義されているチーム プロジェクトの作業項目の種類を指定できます。 同期をサポートするために必要なフィールドをカスタマイズしている場合は、フィールド マップをカスタマイズして変更を反映する必要があります。 詳細については、「TFS と Project Server の統合における XML 要素リファレンスのフィールド マッピング」を参照してください。

通常、ユーザー ストーリーとタスクは、Microsoft Solutions Framework (MSF) のアジャイル プロジェクト用プロセス テンプレートに基づいたチーム プロジェクトで同期されます。 通常、必要条件とタスクは、MSF の能力成熟度モデル統合 (CMMI) 用プロセス テンプレートに基づいたチーム プロジェクトで同期されます。

チーム プロジェクトにマップしたエンタープライズ プロジェクト計画ごとに、同期する作業項目の種類を指定できます。 Project Server のタスクは、Team Foundation の作業項目の種類と同期されます。

初期構成を行った後で、マップする種類を変更できます。 詳細については、「同期する作業項目の種類の指定」を参照してください。

(省略可能) 作業項目の種類の名前を表示する PWA のフィールドの名前

pjTaskText10

既定値は pjTaskText30 です。 作業項目の種類の名前を表示する別のフィールドを指定できます。

(省略可能) 作業時間固定のサポート

/noFixedWork オプション

エンタープライズ プロジェクト計画をチーム プロジェクトに関連付けるときに、Team Foundation と同期する Project Professional のタスクに "作業時間固定" を割り当てることを許可または制限できます。 作業時間固定は、Project で使用できる 3 つあるタスクの種類の 1 つです。 詳細については、「Project がタスク期間の計算に使用するタスクの種類を変更する」を参照してください。

(省略可能) 同期する追加フィールド

たとえば、コスト センター、チーム名、ヘルス ステータスなどのフィールドを追加できます。

既定では、Team Foundation の次の 7 つのフィールドが同期されます。

  1. タイトル

  2. 担当者

  3. 実績作業

  4. 残存作業

  5. 最初の見積もり

  6. 開始日

  7. 完了日

同期されるのはマップされているフィールドだけです。 追加フィールドを同期するには、フィールド マップをカスタマイズする必要があります。詳細については、「TFS と Project Server の統合における XML 要素リファレンスのフィールド マッピング」を参照してください。

管理アクセス許可を付与するアカウント

計画のデータをチーム プロジェクトのデータと同期する管理者の名前

TFSAdmin コマンド ライン ツールを使用して、チーム プロジェクトへのエンタープライズ プロジェクト計画のマッピングを管理する管理者に、[Project Server の統合の管理] アクセス許可を付与する必要があります。

Team Foundation ユーザー

ユーザー名またはセキュリティ配布グループ

Team Foundation のタスクに割り当てられているチーム プロジェクトのメンバーを、エンタープライズ リソース共有元および各エンタープライズ プロジェクト計画のリソース共有元に追加する必要があります。 また、これらのユーザーには、Project Server にログオンするためのアクセス許可を付与する必要があります。

アクセス許可の付与

Project Server 用の Team Foundation Server 拡張機能をインストールしたら、サービス アカウントとユーザー アカウントにアクセス許可を付与する必要があります。

PWA のインスタンスを登録する

重要

Team Foundation Server と Project Server 2010 を統合する場合は、すべての累積的更新プログラムをインストールした後に SharePoint 構成ウィザードを実行済みであることを確認します。これらの手順をスキップした場合、Team Foundation Server と Project Server 2010 の統合は失敗します。詳細については、「必要なソフトウェア」を参照してください。

統合を構成する最初の手順として、プロジェクト計画をサポートする PWA の各インスタンスを、チーム プロジェクトをホストするプロジェクト コレクションをホストするアプリケーション層サーバーに登録する必要があります。 TFS とデータを同期する必要があるエンタープライズ プロジェクトで使用する、PWA のすべてのインスタンスを登録します。 次の図に示すように、TFS を実行している 1 つのサーバーに、PWA の複数のインスタンスを登録できます。

Team Foundation Server への PWA の登録

PWA のインスタンスを登録するには

  1. Visual Studio またはチーム エクスプローラーがインストールされている環境でコマンド プロンプト ウィンドウを開き、次のように入力します。

    cd %programfiles%\Microsoft Visual Studio 11.0\Common7\IDE
    

    64 ビット版の Windows では、%programfiles%%programfiles(x86)% に置き換えます。

  2. 次のコマンドを入力し、Enter キーを押します。

    TfsAdmin ProjectServer /RegisterPWA /pwa:pwaUrl /tfs:tfsUrl
    

    pwaUrl を PWA のインスタンスの URL で置き換え、tfsUrl をアプリケーション層サーバーの URL で置き換えます。

    次のようなメッセージが表示されるまで待機します。

    PWA pwaUrl を登録しています。

    PWA pwaUrl が登録されました。

  3. Team Foundation と同期するエンタープライズ プロジェクト計画をサポートする PWA の各インスタンスに対して、手順 2. を繰り返します。

チーム プロジェクト コレクションから PWA のインスタンスへのマップ

統合を構成する 2 番目の手順として、エンタープライズ プロジェクト計画をサポートする PWA の各インスタンスをマップする必要があります。 チーム プロジェクトとデータを同期する必要があるエンタープライズ プロジェクトで使用する、PWA のすべてのインスタンスをマップします。

PWA のインスタンスをチーム プロジェクト コレクションにマップするには

  • コマンド プロンプトで次のコマンドを入力し、Enter キーを押します。

    TfsAdmin ProjectServer /MapPWAtoCollection /pwa:pwaUrl /collection:tpcUrl
    

    pwaUrl を PWA のインスタンスの URL で置き換え、tpcUrl をチーム プロジェクト コレクションの URI で置き換えます。

    次のようなメッセージが表示されるまで待機します。

    チーム プロジェクト コレクション tpcUrl を PWA pwaUrl にマップしています。

    チーム プロジェクト コレクション tpcUrl が PWA pwaUrl に正常にマップされました。

TFS フィールドから Project Server フィールドへのマップ

PWA のインスタンスにマップした各チーム プロジェクト コレクションのフィールドをマップする必要があります。 既定のマッピングを使用することも、マッピング ファイルをカスタマイズしてアップロードすることもできます。 既定のマッピングの詳細については、「TFS と Project Server の統合における XML 要素リファレンスのフィールド マッピング」を参照してください。

データを同期する追加のフィールドを定義できます。 Team Foundation に格納されているデータに Project のフィールドを追加できます。また、Project Server に格納されているデータに Team Foundation のフィールドを追加し、エンタープライズ プロジェクト計画に表示することもできます。

既定のマッピングを使用するには

  1. コマンド プロンプトで次のコマンドを入力し、Enter キーを押します。

    TfsAdmin ProjectServer /UploadFieldMappings /collection:tpcUrl /useDefaultFieldMappings
    

    tpcUrl をチーム プロジェクト コレクションの URL で置き換えます。

  2. 次のようなメッセージが表示されるまで待機します。

    フィールド マッピングをチーム プロジェクト コレクション tpcUrl にアップロードしています。

    フィールド マッピングがチーム プロジェクト コレクション tpcUrl にアップロードされました。

  3. PWA のインスタンスにマップした各コレクションに対して、手順 1. と 2. を繰り返します。

マッピングをカスタマイズするには

  1. Team Foundation のデータ ストアに追加する Project Server のフィールドと参照フィールド名を指定します。

  2. Project Server に追加する Team Foundation のフィールドと参照フィールド名を指定します。

    詳細については、「Visual Studio ALM の作業項目フィールド参照」を参照してください。

  3. Project Server のフィールドをマップするファイルを変更します。

    詳細については、「TFS と Project Server の間のフィールド マッピングのカスタマイズ」を参照してください。

  4. (省略可能) エンタープライズ プロジェクト計画のフィールドを表示する列を追加します。

エンタープライズ プロジェクトとチーム プロジェクトの関連付け

統合を構成する 3 番目の手順として、同期するデータを含むチーム プロジェクトに、各エンタープライズ プロジェクトをマップする必要があります。 次の図に示すように、1 つのチーム プロジェクトに複数のエンタープライズ プロジェクトを関連付けることができます。

チーム プロジェクトへのエンタープライズ プロジェクトの関連付け

エンタープライズ プロジェクト計画をチーム プロジェクトに関連付けるには

  1. コマンド プロンプトで次のコマンドを入力し、Enter キーを押します。

    TfsAdmin ProjectServer /MapPlanToTeamProject /collection:tpcUrl /enterpriseProject:EnterpriseProjectName /teamproject:TeamProjectName /workItemTypes:ListOfWorkItemTypes /projectFieldForWorkItemType:ProjectFieldName
    

    tpcUrl をチーム プロジェクト コレクションの URL で置き換え、EnterpriseProjectName をエンタープライズ プロジェクト計画の名前、TeamProjectName をチーム プロジェクトの名前、および ListOfWorkItemTypes を作業項目の種類の名前でそれぞれ置き換えます。 たとえば、アジャイル プロセスをサポートするには、作業項目の種類として "User Story,Task" または “User Story”,Task を指定できます。 コンマの後にスペースは挿入できません。

    固定タスクの種類を割り当てないようにする場合は、/nofixedWork を指定します。 引数 /projectFieldForWorkItemType、および作業項目の種類を格納する Project のフィールドの名前を指定することもできます。

    次のようなメッセージが表示されるまで待機します。

    エンタープライズ プロジェクト EnterpriseProjectName をチーム プロジェクト TeamProjectName にマップしています。

    エンタープライズ プロジェクト EnterpriseProjectName がチーム プロジェクト TeamProjectName に正常にマップされました。

  2. チーム プロジェクトに関連付ける各エンタープライズ プロジェクトに対して、手順 1. を繰り返します。

プロジェクト計画を開いたままマップした場合は、変更を登録するためにプロジェクト計画を閉じて再度開く必要があります。 計画を開くときに、[チーム プロジェクトに発行] および [作業項目の種類] (Text30) の各列が表示されることを確認します。 これらのフィールドが表示された場合は、プロジェクト計画がチーム プロジェクトにマップされていることを示しています。

注意

エンタープライズ プロジェクト計画をチーム プロジェクトにマップした後で、マップする作業項目の種類を変更できます。詳細については、「同期する作業項目の種類の指定」を参照してください。

エンタープライズ リソース共有元への Team Foundation ユーザーの追加

Team Foundation ユーザーを Project のリソースとして割り当てて管理するには、エンタープライズ リソース共有元にユーザーを追加する必要があります。 このプロセスを容易にするために、セキュリティ グループを Active Directory の同じ名前のグループと自動的に同期するように PWA を構成できます。 また、Project Server のユーザーとリソースを、Active Directory の複数のドメインおよびフォレストのユーザーと同期することもできます。

エンタープライズ リソース共有元にユーザーを追加する方法については、Microsoft Web サイトの次のページを参照してください。

参照

概念

マップ統合コンポーネント [TfsAdmin ProjectServer]

Team Foundation Server と Project Server の統合の管理