Project Server 2007 VSTS Connectorとは
TFSには作業項目というプロジェクトの中で発生する作業やバグといった項目を管理するための機能があり、もちろんこれらを使って作業ごとのスケジュールを管理していくことが可能です。このため、作業項目をプロジェクト管理専門ソフトであるProject Professional 2007(以下、Project Pro)にエクスポートして、データを編集し、インポートし直すといった連携にも対応しています。
一方、Project Serverは主にエンタープライズレベルと言われるところで、企業の中にさまざまに存在しているプロジェクト(ここでは開発案件という狭義の意味ではなく、企業が手掛けているさまざまな作業のことを指しています)とそこに存在するリソース(主に人)を横断的に管理するためのサーバーシステムで、Project Proとシームレスに連携して動作するものです。
しかし、残念ながら、TFSからProject Serverまたはその逆の連携をしようと思った場合には、間に一度、Project Proをかませないといけない、つまりTFS -> Project Pro -> Project Server(逆も同様)という手順が必要になってしまいます。これでは日々の連携を効率的に行っていくことはできません。
この問題を解決するために開発されたのが、Project Server 2007 VSTS Connector(以下、PS Connector)というものです。PS ConnectorはTFSおよびProject Serverにもともと用意されているWebサービスAPIを使って、双方向のデータ連携を実現しようというコンセプトのもとに作成されています。このため、Project Proを通さなくてもデータ連携ができるというのがこのツールの役割になります。もともとは、TFS 2005の頃に米国アバナード社によって開発され、コミュニティ公開されたものですが、現在ではCodePlexでその開発が引き継がれており、VSTS2010では同様のコンセプトのものが製品に組み込まれる予定になっています。今回はこのPS Connectorを利用して、TFSとProject Serverを連携させるということにチャレンジします。現時点ではまだまだな部分もありますが、何が出来て何ができないかも含めて、解明していきたいと思います。
Project Server 2007 VSTS Connectorのインストール
まずは、PS Connectorのインストールについて確認していきます。何はともあれ、インストーラーをダウンロードしておきましょう。CodePlexの「Project Server 2007 VSTS Connector」サイトで、[Downloads]タブから「Release 2.0 March 10 2008」をダウンロードしてください。また、[Home]タブのQuick Links部分にある「End User Guide」および「Setup Guide」もダウンロードしておくと詳しいインストールの仕方や利用方法を確認することができます(残念ながらどちらも英語のドキュメントとなります)。ただし、ドキュメントについては記載内容が古い部分もありますので、基本的には本稿内で完結できるように進めていきたいと思います。
物理構成要件の確認
インストール前にPS Connectorをインストールするための構成について確認しておきます。必要な環境と準備のところで、TFSとProject Serverを別OS上にインストールしてくださいというようにしてありましたが、PS Connectorがサポートする構成が次の図1の2種類になっているためです。
![図1:PS Connectorの構成パターン](http://cz-cdn.shoeisha.jp/static/images/article/4402/VSTS-WIT-05-01.gif)
図1のようにTFSとProject Serverが別々にインストールされている状態で、さらにPS Connectorを別のサーバーにインストールするか、TFSと共存させるかのどちらかを選択することができます。本稿ではシンプルに進めるため、すべてを別々にする3端末構成で話を進めていきます。端末名などの情報は図2の通りです。なお、図には登場していませんが、TFSを利用しているため、当然のようにActive Directoryによるドメイン環境が必須となりますので注意してください。今回も図2の端末をすべて同一ドメインに属している状態で進めていきます。
![図2:本稿での構成パターン](http://cz-cdn.shoeisha.jp/static/images/article/4402/VSTS-WIT-05-02.gif)
この場合、インストールの手順は次のとおりになります。
- Project Server 2007 VSTS Connector本体のインストール
- Project Server 2007用Project Server 2007 VSTS Connector Componentのインストール
- Team Foundation Server用Project Server 2007 VSTS Connector Componentのインストール
インストール前の準備
PS Connector, Project Server用PS Connector Component, TFS用PS Connector Componentをインストールするためには、それぞれに個別に事前準備としていくつかのソフトウェアをインストールしておく必要があります。ここでOSまでを含めて次の表にまとめておきます。
ソフトウェア | PS Connector | Project Server用PS Connector Component | TFS用PS Connector Component |
OS | Windows Server 2003 SP1 | ||
.NET | .NET Framework 2.0 | .NET Framework 3.0 | .NET Framework 2.0 |
IIS | Internet Information Services 6.0 | ||
SQL Server | SQL Server 2005 SP1 | ||
その他 | - | Project Server 2007 | VSTS2008 Team Foundation Server |
なお、OSについては、Windows Server 2003 SP1以上の32ビット版Windows Server 2003でWeb Edition以外のエディション(通常はStandardまたはEnterprise)であれば問題ありません。.NET Frameworkは2.0~3.5 SP1の範囲で指定されたバージョン以上のものであれば問題ありません。SQL Server 2005はExpress Edition以外のエディションでSP1以上であれば問題ありません。次の表は本稿で利用した環境を示したものです。
ソフトウェア | PS Connector | Project Server用PS Connector Component | TFS用PS Connector Component |
コンピュータ名 | connector | ps2007 | tfs2008 |
OS | Windows Server 2003 R2 Standard Edition SP2 | ||
.NET | .NET Framework 3.5 SP1 | ||
IIS | Internet Information Services 6.0 | ||
SQL Server | SQL Server 2005 Developer Edition SP3 | ||
その他 | - | Project Server 2007 SP1 | VSTS2008 Team Foundation Server SP1 |
これらのソフトウェアはそれぞれのコンピュータでPS Connectorのインストールを始める前にインストール済みの状態にしておいてください。次に、ソフトウェア以外の部分で各コンピュータに必要な設定です。
PS Connectorをインストールしたコンピュータ(本稿の例では connector)では次のA1~C1までの設定を行っておきます。
A1. TFSのサービスアカウントをAdministratorsグループに追加する
通常はDomainName\tfsserviceなどのユーザーが利用されていると思いますが、TFSサービスアカウントを、PS Connectorをインストールする端末のAdministratorsグループに登録します。
B1. TFSのサービスアカウントをIIS_WPGグループに追加する
A1.と同様のユーザーをPS Connectorをインストールする端末のIIS_WPGグループに登録します。これにより「%windir%Microsoft.NET\Framework\v2.0.50727\Temporary ASP.NET Files」フォルダに対するフルコントロール権限が付与されたことを確認します。最後に設定を反映させるため、以下のコマンドを実行します。
%windir%Microsoft.NET\Framework\v2.0.50727\aspnet_regiis.exe -i -enable
C1. TFSのサービスアカウントをSQL Serverのdboユーザーにマッピングする
A1.と同様のユーザーをSQL Serverのdboユーザーにマッピングし、デフォルトデータベースをmasterに設定します。また、SQL Serverのsysadmin権限が付与されていることも確認しておきます(設定されていない場合は追加します)。
次にProject Serverがインストールされているコンピュータ(本稿の例では ps2007)では次のA2の設定を行っておきます。
A2. TFSのサービスアカウントをAdministratorsグループに追加する
通常はDomainName\tfsserviceなどのユーザーが利用されていると思いますが、TFSサービスアカウントを、PS Connectorをインストールする端末のAdministratorsグループに登録します。
最後にTFSがインストールされているコンピュータ(本稿の例では tfs2008)では次のA3の設定を行っておきます。
A3. TFSのサービスアカウントをAdministratorsグループに追加する
通常はDomainName\tfsserviceなどのユーザーが利用されていると思いますが、TFSサービスアカウントを、PS Connectorをインストールする端末のAdministratorsグループに登録します。
これらの設定もそれぞれのコンピュータでPS Connectorのインストールを始める前に終了させておいてください。