ブログ@kaorun55

HoloLensやKinectなどのDepthセンサーを中心に書いています。

TFService 入門(1):Team Foundation Server/Serviceについて

Team Foundation Service(TFService) を使用したプロジェクトの始め方を書いていきます。ここでは機能ベースで紹介します。プロセスベースでの始め方はこちらが詳しいです。

このエントリの目的は、TFService の機能を俯瞰することで、やりたいことがあったときに、どのように画面をたどればよいかをわかりやすくすることです。最近、仕事でTFServiceを使うことが増えてきたので、その際の説明の補助に使用します。

Team Foundation Server/Serviceとは

Team Foundation Server(ここでは2012または2012 Update1。以降「TFS」とします)およびTeam Foundation Service(以降「TFService」とします)はMicrosoft社が提供している開発プラットフォームです。TFS/TFServiceは基本的には同じものと思って構いません。TFSは手元のサーバーにインストールして利用し、TFServiceはMicrosoft社のクラウド基盤であるWindows Azure上で動いているSaaS型のTFSです。

TFSおよびTFServiceはほぼ同じ機能を持っていますが、TFServiceはクラウドにて提供されているので、3週間ごとにアップデートされています。

TFSおよびTFServiceは一般的な開発プロジェクトに必要な機能を備えています。また開発プロセスに依存し、それを理解することで、より上手に使うことができます。さらにさまざまな開発プロセスの基盤として、Visual Studio ALMという考え方があり、すべてはこの上に成り立っています。

Visual Studio ALMについては下記のエントリや本を参考にしてください

機能面から見たTeam Foundation Server/Service

TFSおよびTFServiceは、まずプロジェクト作成時に「プロセステンプレート」と呼ばれる、プロセスごとのフォーマットを決定します。既定では次の三種類から選択します。

Microsoft Visual Studio ScrumおよびMSF for Agile Software Developmentはアジャイルな開発の場合、MSF for CMMI Process Improvementは従来型の開発の場合に選択します。このようにTFSおよびTFServiceはプロセスに依存せず、自分たちのやり方に合わせて利用することができます。これは裏返せば、自分たちのやり方が必要。ということになります。

実際の機能面に移ります。ここからは基本的にTFServiceとMicrosoft Visual Studio Scrumを前提としますが、ほかの組み合わせでも基本は同じです。TFServiceで提供されるツールとしての機能は次の通りです。

  • 作業項目管理(バックログ、タスク、バグなど)
  • バージョン管理
  • 自動ビルド(TFServiceでは今のところベータ版)

従来からITS(BTS)、VCS、CIと呼ばれている機能が一通り入っています。TFServiceを使うメリットは、これらの機能のリポジトリ(データベース)が一元化されており、それぞれを横断的に関連付けることができることです。

以降のエントリでは、これらの機能を順番に使う手順を紹介していきます。