VSTE for SDとVSTE for STとLUCINA for .NET
VSTE for SDとVSTE for STとLUCINA for .NET
それではVS2005 Team Systemを導入することにより、どのような有効性があるのかを考察していきます。今回も日本ユニシスのエンタープライズシステムを対象とした開発方法である「LUCINA for .NET」を題材に解説していきます。
第2回でも述べましたが、LUCINA for .NETでは大きくプロジェクト全体を「業務分析フェーズ」「システム構築フェーズ」の簡素化した2フェーズから構成されています(図6)。
業務分析フェーズはウォータフォールモデルでいえば要件定義・外部設計に、システム構築フェーズは詳細設計・実装・テストにあたります。
システム構築フェーズ
VSTE for SDとVSTE for STは主に詳細設計・実装・テストに焦点を当てた製品ですので、まずLUCINAの開発プロセスにおけるシステム構築フェーズについて少し述べさせていただきます。
業務分析フェーズでは、一般にいうSEが要件定義・外部設計を行います。一方、アプリケーションアーキテクトがシステムのデザインとしてアプリケーションの特性を踏まえプロジェクト構成・アプリケーションデザイン・セキュリティ構成・共通で使用する各種部品、そして大人数の開発者の詳細設計と実装を進める際の各種ガイドライン(コーディング規約、ネームスペースなど)を用意します。
それらをインプットとしてシステム構築フェーズは立ち上がります。このフェーズの主役はもちろん開発者であり、担当範囲はプロジェクトにもよりますが詳細設計と実装、単体・結合テストであることが多いです。
LUCINA for .NETではシステム内を機能で分割し、機能単位に開発を進め、単体・結合テストが終了したらテストチームに渡され、統合テストとシナリオテストと進められます。一方、システム全体のスケーラビリティやパフォーマンスといった観点からシステムテストが進められます(図7)。
その際に重要となるポイントは表3の通りです。
- 立ち上げ
- 並行開発
- テスト成果物の信頼性、充足度
- 品質確保
- テスト成果物の一元管理
表3:プロジェクトを進める上でのポイント
立ち上げ
開発・テストの部分はほかのプロセスに対して工数がかかるため、ここをいかにスムースに立ち上げることができるかがプロジェクトの成否に大きく関わってきます。
ここは前回説明した機能ですが、VSTE for SAのスケルトン生成が有効です。プロジェクトの一部はVSTE for SAのアプリケーションデザイナから生成することで、アプリケーションアーキテクトが設計した構成を反映した形でプロジェクトが生成されますので、矛盾なくスムースに実装につなげることが可能です。
クラスライブラリテンプレートのスケルトンはクラスデザイナから生成しようと思えば生成できますが、クラスデザイナとソースコードは相互に同期が取られますので、どちらかやりやすい方から作成すればよいでしょう。
並行開発
チーム開発・並行開発に対する許容度も重要です。実装工数が100人月だからといって100人集めれば1ヶ月でできるかといえば、それは難しいのが現実です。
ただし、アプリケーションアーキテクトがしっかりとチーム開発・並行開発を意識してアプリケーションデザインを考えるということが大前提ですが、常にソースコードと同期されるクラスデザイナなど、アーキテクトと開発者間のコミュニケーションは今までより取りやすくなるでしょう。

