第1回から話をしておりますが、日本ユニシスが「LUCINA for .NET」という開発方法を持っているように、開発プロセスや開発ガイドラインの確立は非常に重要です。このVS TFSではMicrosoft Solutions Frameworkが開発プロセスとして用意されています。
Microsoft Solutions Frameworkとは、マイクロソフトの社内で利用されている開発プロセスを基にし、さらに外部の企業に対しての活動からフィードバックを加味し実証を行った開発プロセスです。
Microsoft Solutions Frameworkには「agile」と「CMMI」の2つのメソトロジテンプレートが取り入れられており、ユーザが開発プロジェクトの内容に合わせて最適な方針を選択できます。「agile」では比較的小規模なプロジェクトが、「CMMI」では大規模なプロジェクトが適しています。
例えば日本ユニシスでは「LUCINA for .NET」という開発方法を持っていますが、LUCINA for .NETで定義されている成果物のドキュメント、コーディングのポリシーなどを設定し、新たに作業項目を追加登録することによって、どのプロジェクトでもLUCINA for .NETに則った開発を行うテンプレートを自動的に用意することができるわけです。
VSTE for SDは、単体でかなりの効果が期待できます。静的コード解析・単体テスト・カバレッジをうまく利用することで、開発者からのアウトプットの品質を開発者自身で今までより高いレベルに向上させることが可能となります。今までコードレビューで検出していたエラーを開発者自身で検出可能とし、また、カバレッジで必要十分なテストケースを実行可能なことは、次工程である第3者検証からの手戻りを未然に防ぐことにもつながります。
VSTE for STは、手動テストを含むすべてのテストケースを一元管理することにより、テスト工程のリアルタイムな可視化を可能とします。仕様変更などが起こったときのリグレッションテスト、品質管理における係数の割り出しなどに対しても有効でしょう。
VS TFSはチーム内やチーム間のコミュニケーション・ワークフローを円滑にする機能とプロジェクトに関わるすべての成果物や報告書を一元管理する機能を統一的なツールとして提供することにより、スムースなプロジェクト進行と煩雑だった管理系コストの圧縮が期待できます。
ただしツールのコストとして決して安いものではないため、プロジェクトのコストとして計上する際はROIを判断する必要があります。VSTE for ST/VS TFSは一部のメンバーに対しての導入では、持っているポテンシャルを十分に発揮できません。Team Foundation Serverの導入にはOSとしてWindows Server 2003をデータベースエンジンとしてSQL Server 2005を必要とすることも考慮する必要があるでしょう(VS TFS用機能限定版SQL Server 2005も用意されるようです)。
ボリュームライセンスやTeam Foundation ServerのCALのみの販売も欲しい気がします。実際に設計・開発・テストを主体的に行うわけではないプロジェクトマネージャーはどのエディションなのだろう・・・という点で。
とはいうものの、VS2005 Team Systemの登場で開発ライフサイクル全般をサポートするツールをやっと手にすることが可能となりました。ツールの一貫性や連携のしやすさ、Officeとの親和性といった点は非常に有効と思われます。