アプリケーションのモデル化

Visual Studio Ultimate でモデルを生成すると、アプリケーションがユーザーのニーズを満たしていることを確認できます。 モデルは異なる詳細レベルで生成でき、それらのモデルは相互に関連付けたり、テストおよび開発計画に関連付けたりできます。モデルは、アプリケーションのライフサイクルを通じて開発プロセスの一環として生成および開発することができます。 詳細については、次のトピックを参照してください。

このリリースに機能を追加するには、Visual Studio 2010 Microsoft Visual Studio 2010 Visualization and Modeling Feature Pack をダウンロードしてインストールします。

モデルでサポートされるアクティビティ

アクティビティ

ユーザーのニーズを把握する: ユーザー ストーリーやビジネス ルールなどの要求を明確にし、アクティビティやクラスなどの UML 図を描画してそれらの要求の一貫性を確保します。

コードを視覚化する: 依存関係グラフとシーケンス図を生成して、コードの視覚的表現を確認します。 データベースのオフライン表現を生成して、データベース内のオブジェクト、設定、および関係を表示します。

アーキテクチャを定義する: UML コンポーネント図、クラス図、およびシーケンス図を描画して、システムの大規模な構造およびデザイン パターンをモデル化します。 レイヤー図を生成して、コードのコンポーネント間の依存関係に対する制約を定義して適用します。

UML またはドメイン固有言語からアプリケーションの各部分を生成または構成し、要求の変更に対する設計の対応性と別の製品への設計の適合性を向上させます。

要求と必要とされる設計を照らし合わせてシステムを検証する: 要求モデルに基づいて、承認テストまたはシステム テストを定義します。 これにより、テストとユーザーの要求との間に強固な関係が生成され、要求が変更された場合にシステムをより簡単に更新できます。

Team Foundation バージョン管理を使用してモデル、図、およびグラフを共有する: モデリング プロジェクトおよびモデリング図ファイル、依存関係グラフ、およびアーキテクチャ エクスプローラー クエリを Team Foundation バージョン管理の管理下に置きます。Team Foundation バージョン管理で管理されているこれらの項目を使用するユーザーが複数いる場合、これらのガイドラインを使用してバージョン管理の問題を回避できます。

モデルおよび図をカスタマイズする: UML 要素の追加のプロパティ、モデルがビジネス ルールに準拠していることを確認するための検証制約、および追加のメニュー コマンドとツールボックス項目を定義して、モデルをプロジェクトでの使用方法により厳密に適合させます。 ドメイン固有言語を独自に作成することもできます。

モデルの種類とその用途

モデルの種類と一般的な用途

UML モデル

UML モデルには、クラス図、コンポーネント図、ユース ケース図、アクティビティ図、シーケンス図など、いくつかのビューが含まれます。 UML は、アプリケーション ドメインに合わせてカスタマイズできます。 たとえば、タグ、追加情報、および制約をモデル要素にアタッチできます。 モデルを操作するツールを定義することもできます。 詳細については、「ソフトウェア設計のためのモデルの開発」を参照してください。

一般的な用途:

  • 要求および設計を説明する。 UML は、任意のアプリケーションの開発にすばやく適用できます。 詳細については、「開発プロセス内でのモデルの使用」を参照してください。

  • テストまたはアプリケーションの各部分を生成または構成する。 表記法のカスタマイズと生成テンプレートまたは構成可能アプリケーションの開発には、いくらかの作業が必要です。 詳細については、「モデルからのアプリケーションの生成および構成」を参照してください。

  • 一般的な説明と小規模プロジェクトでのコード生成または構成。

ドメイン固有言語 (DSL)

DSL は、特定の目的のために設計する表記法です。 Visual Studio では、通常はグラフィックです。 詳細については、「Visualization and Modeling SDK - ドメイン固有言語」を参照してください。

一般的な用途:

  • アプリケーションの各部分を生成または構成する。 表記法およびツールを開発するには、作業が必要です。 これを行うと、UML のカスタマイズよりもドメインに適合する結果となることがあります。

  • DSL およびそのツールの開発への投資が複数のプロジェクトでの DSL の利用という結果をもたらす大規模プロジェクトまたは製品ライン。

レイヤー図

レイヤー図を使用すると、アプリケーションの構造を一連のレイヤーまたは明示的な依存関係があるブロックとして定義できます。 また、チェックインのたびにコードをレイヤー図と照らし合わせて検証することもできます。 詳細については、「レイヤー図: ガイドライン」を参照してください。

一般的な用途:

依存関係グラフまたは有向グラフ

依存関係グラフと有向グラフを使用すると、大規模で複雑な依存関係やその他の関係を検査できます。 コード構造のグラフを生成できます。 また、他のさまざまなソースからグラフを生成するツールを記述することもできます。 詳細については、「方法: .NET コードに対する依存関係グラフを生成する」を参照してください。

一般的な用途:

  • プログラム コードの構造の理解と提案された変更のコストの見積もりに役立たせるために、プログラム コードの更新の準備としてプログラム コードを分析する。

  • Web サイトやデータベースなどの他の大規模ネットワークを分析する。

コード ベースのシーケンス図

.NET コードから生成できるシーケンス図を使用すると、コードがメソッドをどのように実装しているかを視覚化することができます。 詳細については、「方法: シーケンス図を使ってコードを精査する」を参照してください。

一般的な用途:

  • プログラム コードを理解および分析する。

外部リソース

カテゴリ

リンク

ビデオ

ビデオへのリンク

ビデオへのリンク

ビデオへのリンク

フォーラム

ブログ

技術文書およびジャーナル

The Architecture Journal - Issue 23: Architecture Modeling and Processes (アーキテクチャ ジャーナル - 第 23 号: アーキテクチャのモデリングとプロセス)

その他のサイト

MSDN アーキテクチャ センター

参照

概念

Visual Studio 2010 のアプリケーション ライフサイクル管理に関する新機能

Visual Studio Application Lifecycle Management

その他の技術情報

チュートリアル: 視覚化ツールおよびモデリング ツールを使用することによるシステムの更新