.NET Architecture Center
Steve Kirk
Microsoft Corporation
July 10, 2002 日本語版最終更新日 2002 年 12 月 3 日
概要:
Steve Kirk が、新しいコラム 「.NET Designers」 を始めます。このコラムでは、まず新しく開始された .NET Architecture Center の紹介と概要説明を行います。
.NET Architecture Center は、開発者がエンタープライズ アーキテクチャに対する Microsoft のアプローチを理解するのに役立つようにデザインされたリソースです。
「.NET Designers」 コラムにようこそ。
この新しいコラムは、
Microsoft® .NET アプリケーション デザインに特化したコラムで、
分散エンタープライズ アプリケーションに注目していきます。
毎月、Microsoft や .NET コミュニティからゲストを迎え、
.NET アプリケーション デザインのある側面を特集していく予定です。
今月は、
新しい .NET Architecture Center を紹介します。
.NET Architecture Center はアプリケーション デザインに関するこのシリーズを始めるのに適した場所で、
私の現在の作業もここに注目したものです。
.NET Architecture Center は、
エンタープライズ アーキテクチャに対する Microsoft のアプローチを理解したいと考えるビジネス設計者、
ソフトウェア設計者、およびインフラストラクチャ設計者向けにデザインされました。
.NET Architecture Center は、
Microsoft 製品チーム、MSDN、TechNet、
および Microsoft の新しい Architecture Review Board が関係する共同の取り組みで、
MSDN、TechNet、およびその他のソースの境界をエンタープライズ アーキテクチャの複数の展望や視点にまで広げています。

図 1. .NET Architecture Center ホーム ページ
Center は現在最初の段階で、
今後数か月に渡って継続的に開発していく予定です。
現在、Center は Microsoft のアーキテクチャ ガイダンスのロードマップの提供、
MSDN や TechNet での新しいアーキテクチャ コンテンツの発表、
アーキテクチャ Webcasts などのコミュニティ イベントの取り組みを行っています。
新しく特集するコンテンツには、
Microsoft アーキテクチャの概要やアプリケーション アーキテクチャの概念的な視点などがあります。
Microsoft アーキテクチャの概要
組織構造、ビジネス、およびテクノロジの使用のモデルとしてのエンタープライズ アーキテクチャは、
いくつか異なる観点から見ることができます。
「Microsoft アーキテクチャ概要」 では、次の 4 つの観点を導入しています。
ビジネスの観点からは、
ビジネス プロセス、組織構造、および両者の関係として企業を示しています。
アプリケーションの観点からは、
アプリケーションのポートフォリオ、自動化されたサービス、
および両者の相互作用と相互依存性に注目しています。
情報の観点は、
データ モデル、データ管理、情報作成と利用のパターン、
およびデータをワークフローに結び付ける方法に基づいています。
テクノロジの観点からは、
コンピュータ、オペレーティング システム、ネットワーク、プリンタ、モデムなど、
組織をサポートするハードウェアとソフトウェアを考慮しています。
ここでは、アプリケーションとテクノロジからの観点に注目してみましょう。

図 2. エンタープライズ アーキテクチャのアプリケーションとテクノロジからの観点
図 2 は、それぞれが複数の視点を持つ関連アーキテクチャとして、アプリケーションとテクノロジからの観点を示しています。
概念、論理、および実装の 3 つの視点は、一般的なものから特化されたものまでの範囲を持ち、それぞれがさまざまな対象者や作業にとって役に立ちます。
概念的な視点はどこにでも適用されます。
それに対して、論理的な視点は特定のビジネスや企業に適用され、実装の視点はコンピュータに配置される特定のアプリケーション コンポーネントに適用されます。
現在 .NET Architecture Center には、アプリケーション アーキテクチャの概念的な視点とテクノロジ アーキテクチャの概念的な視点のプレビューが、
ドキュメントのセットとして存在します。
アプリケーション アーキテクチャ : 概念的な視点
「アプリケーションの概念的ビュー」 は、Web サービスを全面的に利用するデザイナを支援するために、
Web サービス、メッセージ、状態、およびプロセスをカバーするアーキテクチャ概念の新しいセットを導入します。
サービス
ソフトウェア サービスは、
ネットワーク間でのアクセスに適したメッセージ ベースのインターフェイスを公開するアプリケーション ロジックのあまり目立たない単位です。
ソフトウェア サービスは、ネットワークにまたがった非常に柔軟な配置を可能にします。
メッセージング
サービスは、
メッセージの順序に関する要件など、
受け取り、作成するメッセージによって純粋に定義されます。
サービス間のルーティングについては、
メッセージはメッセージング インフラストラクチャに依存します。
コントラクト
サービスは、
メッセージを送受信するインターフェイス経由で通信します。
サービス間の通信は、
サービスの相互作用に影響しないで元になるサービス実装を変更できるようにする明示的なコントラクトに従います。
ポリシー
ポリシーは、
実行時の動作を規定する規則のセットで構成されます。
規則は、サービス全体または 1 つ以上のサービス インターフェイスに適用されます。
状態
サービスは状態を管理します。
状態は、まさにサービスが存在する理由です。
サービスはこの状態を監視し、
ビジネス ロジックの一貫性と正確性を維持することを保証します。
この状態が唯一の真実であり、
現在の情報源です。
プロセス
ビジネス プロセスは、
システムをある状態から別の状態に遷移させて、
実行中の作業の順を追った動作を制御します。
プロセスの各段階でメッセージを送信して、
サービス内に含まれるビジネス操作を呼び出します。
アプリケーション
サービス ベースのアーキテクチャでのアプリケーションは、
プロセス サービスと、ビジネス関数やユーザー インターフェイスを実装するより基本的なサービスで構成されます。
これは、
ビジネス サービスと通信するユーザー インターフェイスを持つ従来のアプリケーションと、
ビジネス サービスが別のビジネス サービスと通信するような事例の両方に適用されます。
基本的にこれらの概念は、
ほとんどの現行分散アプリケーションの概念的な基礎であるリモート プロシージャ呼び出し (RPC) アプローチを超える、
ネットワーク デバイスにより適したメッセージ ベースのアプローチに繋がります。
パターンと事例
パターンは、
作業システムとしてアーキテクチャの実現に経験上の利点をもたらします。
.NET Architecture Center は、開発の初期段階のパターンのリポジトリになります。
現在、MSDN や TechNet 上のアプリケーション パターンやテクノロジ パターンへのリンクが、「Microsoft Patterns & Practices」 (英語) への全面的なインデックスと共に提供されています。
「Microsoft Patterns & Practices」は、アーキテクチャ コンテンツと非アーキテクチャ コンテンツの両方を含む、
コンテンツの新しいブランドです。
コミュニティ
最後に、.NET Architecture Center はアーキテクチャ Webcasts とアーキテクチャを説明するその他のサイトへのリンクを含んでいます。
Webcasts はインタラクティブです。
利用者は、リアルタイム セッション中に質問を行えます。
また、要求すれば以前の Webcasts を表示することもできます。
利用者は Center コンテンツに公開されたコメントや格付け機能を使用して、アーキテクチャに関するトピックを議論できます。
是非、.NET Architecture Center に参加してください。
.NET Designers
|