TOPプロジェクト管理> プロジェクト管理
開発ライフサイクルとVisual Studio 2005という選択肢
開発ライフサイクルとVisual Studio 2005という選択肢

第4回:チーム開発とVisual Studio 2005 Team Foundation Server
著者:日本ユニシス  鈴木 貴史、塚田 高弘   2005/11/22
前のページ  1  2  3  4
プロジェクト管理

   第1回から話をしておりますが、日本ユニシスが「LUCINA for .NET」という開発方法を持っているように、開発プロセスや開発ガイドラインの確立は非常に重要です。このVS TFSではMicrosoft Solutions Frameworkが開発プロセスとして用意されています。

   Microsoft Solutions Frameworkとは、マイクロソフトの社内で利用されている開発プロセスを基にし、さらに外部の企業に対しての活動からフィードバックを加味し実証を行った開発プロセスです。

   Microsoft Solutions Frameworkには「agile」と「CMMI」の2つのメソトロジテンプレートが取り入れられており、ユーザが開発プロジェクトの内容に合わせて最適な方針を選択できます。「agile」では比較的小規模なプロジェクトが、「CMMI」では大規模なプロジェクトが適しています。

   「それで実際に何を提供してくれるわけ?」という部分ですが、Microsoft Solutions Frameworkでは、「agile」「CMMI」の2つのうちどちらかを選ぶとそのプロセスに基づいたプロセスガイドを自動的に生成してくれます。また生成されるのはドキュメントだけではありません、プロセスによってツールの動作も変化し、ワークフローと作業成果物も一緒に選択されます。具体的な例としては下記の項目などがテンプレートとして提供されます。

  • プロセスガイド
  • ワークアイテムの種類の定義とルール(アクティビティと作業成果物)
  • ソースチェックインポリシー
  • 文書テンプレート(ExcelとWord)
  • Microsoft Projectのテンプレート
  • レポート
  • プロジェクトポータル(SharePointサイトのテンプレート)

表3:テンプレートの項目

   もちろん上記にあるマイクロソフトより提供されている「agile」「CMMI」のメソトロジテンプレートのほかにも、独自に開発プロセスを定義することもできます。

   一例をあげるために上記の「ワークアイテムの種類の定義とルール」を取りあげて紹介しましょう。

   ワークアイテムには「バグ」「タスク」といったカテゴリがありますが、これらはプロパティや状態のセットを持ち、メソトロジテンプレートで定義されています。もし、あるプロジェクトでソースコードのバグをワークアイテムで管理したい場合は、ワークアイテムの「バグ」のプロパティに「ソースコード」と定義することによって、新たにプロパティに追加されます。また状態のセットも同様に、「仕様確認待ち」「バグ原因調査中」といったように追加することができます。

   このようにメソトロジテンプレートをカスタマイズしたり、新規に作成したりすることにより、企業独自の開発方法をテンプレート化できるのです。

   例えば日本ユニシスでは「LUCINA for .NET」という開発方法を持っていますが、LUCINA for .NETで定義されている成果物のドキュメント、コーディングのポリシーなどを設定し、新たに作業項目を追加登録することによって、どのプロジェクトでもLUCINA for .NETに則った開発を行うテンプレートを自動的に用意することができるわけです。

   以上が提供される機能の簡単な説明になります。チーム開発として重要となる点は非常にあいまいでアプローチが難しいところですが、製品としてサポートできる部分はすべて提供するという意気込みが感じられます。


おわりに

   これまで4回にわたってVS 2005 Team Systemを開発ライフサイクルの観点から解説してきました。

   VSTE for SAはまだ荒削りな面はありますが、システム基盤の観点とアプリケーションの観点から整合性をとりつつ分散システムの設計が行えます。今後、基盤設定も一元管理できるような計画もあり、ポテンシャルは高い製品です。

   また、設定した構成情報を反映したプロジェクトの生成機能なども開発チームとのコミュニケーションギャップを埋める点や相互に整合性がはかれる点で効果が期待できます。

   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との親和性といった点は非常に有効と思われます。

   また、多くの機能はマイクロソフトの社内で実際に使用されていたものをベースとしており、すでに効果は検証済みということです。弊社においても実際に使用してみて効果の程を判断していきたいと思います。非常に高いポテンシャルを秘めている製品であり今後の展開も楽しみにしています。

前のページ  1  2  3  4


日本ユニシス株式会社 鈴木 貴史
著者プロフィール
日本ユニシス株式会社  鈴木 貴史
.NETテクノロジコンサルティング所属
日本ユニシスグループの.NET技術主管のメンバーとして、Windows/.NET Framework周りの利用技術の開発から弊社受託開発案件のアーキテクト、時には営業支援、そして今回は執筆を行っています・・・


日本ユニシス株式会社 塚田 高弘
著者プロフィール
日本ユニシス株式会社  塚田 高弘
.NETビジネスディベロプメント所属
日本ユニシスにて推進する.NETサービスビジネスのなかで、とくにコラボレーティブアプリケーション関連の企画・開発・推進を実施。現在は、.NETにてコラボレーティブソリューションであるSymphonic Collaborationの拡販を担当。


INDEX
第4回:チーム開発とVisual Studio 2005 Team Foundation Server
  はじめに
  VS TFSの機能範囲
  新しいチェックインノートの種類を追加できる
プロジェクト管理