Enterprise Watch
バックナンバー

「Visual Studio 2005 Team System」、その本質に迫る 【最終回】

~チーム開発を支えるインフラ「Team Foundation Server」

 Visual Studio Team Foundation Server(以下、Team Foundation Server)は、マイクロソフトの次世代開発プラットフォームとして位置づけられている製品で、データウェアハウスを兼ね備えたソフトウェア開発を支える新しい統合プラットフォームである。Software Architects、Software Developers、Software Testersがクライアントサイドで実行されるアプリケーションであるのに対し、Team Foundation Serverはチームによるアプリケーション開発を支えるサーバー製品である。


Team Foundation Serverの機能
 そのためクライアントサイドのTeam System製品には、Team Foundation Serverを利用するためのクライアントソフトウェアが含まれている。また、Team Foundation Serverの実行にはSQL Server 2005が必要で、レポーティングをはじめとするいくつかの機能は、SQL Server 2005の新機能に依存している。

 Team Foundation Serverでは、開発プロセスを統合し、要求やバグのトラッキング機能を提供する「ワークアイテムトラッキング」、大規模な分散チーム開発をサポートする「ソースコード管理」、継続的なリリースをサポートする「ビルドの自動化」、チーム内の情報共有をサポートする「チームコミュニケーション」、開発プロジェクトの状態をリアルタイムで表示する「レポーティング」の機能が提供される。


ワークアイテムによる追跡と分析

開発プロセスの統合ツール
 ワークアイテムとは、Team Foundation Serverの基本要素のひとつで、一定期間に特定のメンバーに割り振られる「仕事」が表現されている。XMLベースで管理されるワークアイテムには、「要求」「タスク」「バグ」「リスク」の4種類の型が標準で用意されている。これらの型や項目は、組織のルールにしたがってカスタマイズが可能となっている。

 ワークアイテムトラッキングでは、バグのトラッキングや要求管理といった機能に加え、複数のタスクを連携させることで開発プロセスを構成してプロジェクトに適用することができる。開発プロジェクトにおけるタスク一覧情報や要求一覧へは、Visual StudioのIDEからはもちろん、ProjectやExcelといった他のツールからもアクセスすることが可能となっている。例えばプロジェクトマネージャーが、Projectを使ってプロジェクトのスケジュールやタスクの割り当てを設定したり、テスト担当者がExcelからバグの報告をするなど、個人が使い慣れたツールから情報の参照や更新ができるようになっている。

 マイクロソフトでは独自のプロセスとして、MSF(Microsoft Solutions Framework)をTeam Systemに統合する形で提供している。もちろんこれらのプロセスを独自にカスタマイズして、開発ツールと統合することも可能である。


ソースコードのバージョン管理と平行開発のサポート

 ソースコード管理では、プロジェクトでの成果物であるソースコードの世代管理を行える。チーム開発で重要となるバージョンコントロールの基本機能としては、大規模な分散開発を支えるネットワークアクセスや、信頼性のあるソースコード管理機能が提供される。Team Foundation ServerのクライアントはIDEに統合されているため、他のツールを利用することなく、IDEからシームレスにソースコードをチェックイン/チェックアウトできる。

 チェックイン機能がIDEに統合されていることで、他のアイテムとも関連付けることが可能となっている。例えばバグ修正のワークアイテムと作業対象となるソースコードを関連付けることで、修正したソースコードをチェックインする際に、ワークアイテムの更新も促すことが可能となる。また、単体テストが実施されていないソースコードをチェックインしようとした場合に、警告を表示するよう、チェックインポリシーを設定することもできる。このほか、関連する複数のソースコードを変更した場合に、うちひとつのコードのチェックインが何らかの理由で失敗しても、他のチェックインは自動的に無効化できる。

 Team Foundation Serverでは、コーディング・テスト・複数構成のビルドまでを同時に行う並行開発をサポートするために「Shelve」というアーカイブコマンドの機能を提供している。Shelveでは、ソースコードをプロジェクトから一時的に切り離し、特定のチームメンバーだけに公開できる。また変更後のソースコードを、要求に応じてスムーズにプロジェクト本体へとマージする機能も提供されている。


ビルドの自動化

 Team Foundation Serverではビルドのプロセスを単純化することによって、Visual StudioのIDEからダイレクトビルド、スケジュールに基づくビルドの実施と静的分析、オンデマンドでのビルドなど、さまざまな形態のビルド方式を提供する。また、ビルド環境、ビルドに関連して行われた単体テスト、コードカバレッジ、コードチャーンの報告などをレポートとして自動的に作成、および公開が可能となっている。このように複雑なビルドを単純化することで、デイリービルドやウィークリービルドといった頻繁なビルドを可能にし、より多くのフィードバックを得ることができるようになる。


ビルドの自動化 ビルドの手順

開発チームのコミュニケーションサポート

 チーム開発では、チームメンバー間のコミュニケーションが重要なキーとなる。Team Foundation Serverでは、チーム内の情報共有を促進するためのコミュニケーションの場として、ポータルサイト(プロジェクトサイト)を構築できる。

 ポータルでは、チーム内の懸案事項や議論、アナウンスなどを掲載したり、プロジェクトで採用されるプロセスのガイドやドキュメントのテンプレートを提供できるほか、プロジェクトのレポート(ポートフォリオ)にアクセスすることも可能となっている。


レポーティング

 Team Foundation Serverでは、開発ライフサイクルにおけるさまざまなアクティビティを、データリポジトリとなるSQL Server 2005へ記録できる。その内容はVisual Studioのポートフォリオエクスプローラから表示できるほか、プロジェクトサイトからもアクセスできる。

 レポーティングの機能そのものは、データの格納先であるSQL Server 2005のレポーティングサービスを利用するが、Team Systemには、カスタマイズ可能な50種類程度のレポートがあらかじめ用意されるとのことだ。


まとめ ~次世代開発プラットフォームとしてのTeam Foundation Server

 Team Foundation Serverは、Team Systemにおいてアプリケーション開発ライフサイクル全体を支える基盤となるサーバー製品である。しかし同時に、マイクロソフトの次世代開発プラットフォームとして設計されている製品としても位置づけられ、カスタマイズや拡張のための豊富なAPI群も提供されている。このためサードパーティのツールや、独自に開発したツールなどと連携させて、利用するチームそれぞれの開発スタイルにあった機能を提供できる。つまり、Team Foundation Serverを.NET Frameworkの開発プラットフォームとして利用し、その上でTeam SystemをはじめとするVisual Studioを利用しないことさえ可能になるのだ。

 5回にわたって次世代開発プラットフォームであるTeam Systemについて解説してきた。Team Systemはマイクロソフト製品では初めて、アプリケーション開発ライフサイクル全体をサポートする製品であり、同社の重要な戦略的製品であることは間違いない。しかし、マイクロソフトはアプリケーション開発ライフサイクル全体の市場を独占しようとしているわけではない。

 マイクロソフト株式会社デベロッパーマーケティング本部 プロダクトマーケティング部 プロダクトマネジメントグループ シニアプロダクトマネージャの岩出智行氏は、「開発ライフサイクル全体をカバーするといっても、テスト機能などまだ弱い部分もあります。それよりもTeam Foundation Serverによる開発環境の拡張性を利用して、より多くのベンダーさんと協力したいと考えています」と述べる。実際、ボーランドなどいくつかのソフトウェアベンダーが、Team Systemとの協力を表明しており、今後も.NET Frameworkの開発環境を支える多くの製品が出てくる可能性は高い。

 これまでVisual Studioは、より質の高いソフトウェアを効率よく開発することに重点をおいてきた。Team Systemでもその思想は継承されるが、それに加えてチームによる分散アプリケーション開発のサポート機能、サードベンダーを含むアプリケーション開発環境の拡張などを提供する。Team Systemという次世代開発プラットフォームによって、マイクロソフトが目指しているアプリケーション開発の方向性が明確になってきたといえる。



URL
  マイクロソフト株式会社
  http://www.microsoft.com/japan/
  Visual Studio 2005 Team System
  http://www.microsoft.com/japan/msdn/vstudio/2005/teamsystem/
  Microsoft Solutions Framework
  http://www.microsoft.com/japan/msdn/vstudio/teamsystem/msf/

関連記事
  ・ 「Visual Studio 2005 Team System」、その本質に迫る 【第一回】(2005/03/03)
  ・ 「Visual Studio 2005 Team System」、その本質に迫る 【第二回】(2005/03/10)
  ・ 「Visual Studio 2005 Team System」、その本質に迫る 【第三回】(2005/03/17)
  ・ 「Visual Studio 2005 Team System」、その本質に迫る 【第四回】(2005/03/24)


( 北原 静香 )
2005/03/31 00:00

Enterprise Watch ホームページ
Copyright (c) 2005 Impress Corporation, an Impress Group company. All rights reserved.