InfoQ

News

コンポーネントのコンポジション戦略および戦術

作者 Jean-Jacques Dubray, 翻訳者 佐野 徹郎 投稿日 2008年1月21日 午前12時37分

コミュニティ
SOA,
Architecture
トピック
統制,
SOAプラットフォーム
タグ
Component Based Architecture,
Service Component Architecture

コンポーネント技術は90年代前半から継続的に発展してきた。それらはSpringとDependency Injectionパターン(source)による開発の登場によって新たな局面を迎え、高度なコンポジションの仕組みが提供されるようになった。

先日、SAP Labsの標準アーキテクトであるSanjay Patil氏は、サービスコンポーネントアーキテクチャ(source)によって可能となるいくつかのコンポジション戦略について書かれた「サービスコンポーネントアーキテクチャのためのITシナリオ(source)」という記事を公開した。

先月、IBMのチームは異なるコンポーネント技術とそれらがサポートするコンポジションについて比較した(source)

  • インタフェース結合
  • データ(型システムとメッセージ形式)
  • バージョン弾力性
  • トランスポート独立
  • インタラクションパターン
  • 会話
  • 調停能力
  • 動的性

Sanjay氏にとって、最も重要な2つの要素はトランスポート独立によるデプロイの柔軟性と、ポリシーを使用することでSCAが達成した動的性だ。

IBMの記事ではまたコンポーネントの粒度が影響する多くの要素についても調査しているが、それは以下のように現在の業界の考えを支持している。

一般的に、疎結合なコンポーネントは粗粒度であり、その一方で密結合なコンポーネントは細粒度になりやすい傾向があります。

記事では以下のように主張している。

SCAは参照によるコンポジションと実装によるコンポジションの2つを提供します。

  • SCAコンポーネントはサービスが何処にどのようにデプロイされるかに依存しない、単一のプログラミングモデルによってサービスの呼び出しパターンを組織化することで、サービスを構成することができます。
  • SCAはまた粗粒度なコンポーネントの実装として、細粒度なコンポーネントのアセンブリを利用することでコンポジションを提供することもできます。

それらの分析はSanjay氏の考えと共通している。

  • さまざまな既存の実装アーチファクトを組み立てることで構成されるアプリケーションでの、ボトムアップなコンポジションのシナリオ
  • 異種環境でのコンポジションのシナリオ ... SCAではインテグレーションロジックと関連するファンクション(マッピングなど)を、ファーストクラスのコンポーネントとして構造化することができ、その他のコンポーネントとの関連は、正しく定義されたコンポジットの一部として捉えられます

しかし、彼はさらに「ドップダウン」なシナリオについても説明する。

.... コンポジットを作成するための反対のアプローチ ... アセンブラの目標は高度なビジネス要求を分析し、まだ実装されていないコンポーネントの頂点にコンポジットを作成することです。

IBMの記事では以下のように結論を下している。

SCAの長所の1つは、疎粒度のサービスコンポーネントを実装するために、細粒度のさまざまなコンポーネントモデルを組み合わせられる能力です。SCAは、大局的なソリューションの構造をモデリングする、敏捷性や柔軟性を提供する、実装コードの中に複雑な設定の詳細を定義する必要をなくす、などの価値をもたらします。それにはまた、全体的なソリューションのさまざまな部分で利用される、さまざまなコンポーネントモデルを接続できるという長所もあります。

原文はこちらです:http://www.infoq.com/news/2008/01/sap-ibm-sca-composition

ブックマーク
digg+,
reddit+,
del.icio.us+,
dzone+,
Hatena

No comments

返信

ジャンル別一覧

"YUKATA"から始まるコミュニケーション(Agile2008 ライトニングトークより)

私は「浴衣」を着てパーティーに参加したことで、たくさん声を掛けていただけました。 そこで感じたことは、このカンファレンスが人との繋がりを生み出し、また言葉の壁を越えて積極的に交流する場所であることです。民族衣装はそれらを助けてくれるものでした。きっとこの交流が、新たなムーブメントをアジア圏の仲間たちにも与えてくれると確信しています。

ソフトウェアのリーン思考入門

これは、InfoQ Chinaのアジャイル編集者、Jacky Li氏によるリーン思考とリーン思考をどのようにソフトウェア開発に適用するかについての入門です。

Java 6のスレッド最適化は実際に動作しているのか?

2つのパートからなるこの記事では、シングルスレッドベンチマークの助けを借りて、Java 6のスレッドのパフォーマンスに関する疑問に答える試みをしようと思います。

平鍋氏のGordon Pask Award受賞スピーチ

Agile2008において、Gordon Pask Awardの授与式が行われ、その一人として、チェンジビジョンの平鍋氏が受賞しました。本賞は、毎年、アジャイルコミュニティで定評のあるリーダーだけではなく、新たなリーダーになる可能性のある者に贈られるものです。InfoQでは、授与式のスピーチを動画にてお送りします。

Linda Rising氏による「誰を信頼しますか?」

Agile2008の3日目、8/6(水)午前中の、Linda Risingによるセッションです。セッションの冒頭、Linda Risingはとてもゆったりとしたきれいな、わかりやすい英語で話し始めました。

Jean Tabaka氏による「Collaboration Explained--真のアジャイルチームのためのファシリテーションツール」

Jean Tabaka氏の書いた書籍では、会議などのチーム活動において、ファシリテーションの手法とツールについて具体的かつ実践的に説明しています。8/8(金)、Agile2008の最終日の朝のセッションでは、Jean Tabaka氏自身が本の内容をベースとしたセッションを行いました。

Hubert Smits氏による「ゲーム・デザイン・ワークショップ」

Agile2008の4日目となる8/6(木)の8:30から、Hubert Smits氏による「ゲーム・デザイン・ワークショップ」がおこなわれました。ゲームと言っても単なる遊びではなく、「フレームゲーム」と呼ばれる、グループでの情報収集や意志決定、また教育やトレーニングの教材として使えるいろいろなゲームです。

スケーラビリティに関するベストプラクティス:eBayからの教訓

eBayが日々挑んでいる主要なアーキテクチャの勢力は、スケーラビリティです。これはアーキテクチャや設計に関するあらゆる意思決定を特徴づけたり、駆り立てたりします。