iseeit.jp 情報通信技術

『情報通信技術』に関するスキルのほかに、『情報セキュリティ』に関するスキルも重点テーマです。また、特に今後の『高速モバイル通信』と『インターネット』に注目していきます。

アーキテクチャの最近のブログ記事

DOA に SOA

DOA(Data Oriented Approach:データ中心アプローチ)のモデリング技法である DFD(Data Flow Diagram)の簡単な例が次のような図になります。

 

DFD

 

この例に「プロセス-E」を追加してみます。「プロセス-E」は「データストア-X」と「データストア-Y」を参照します。

 

DFD

 

果たして、このような「プロセス-E」は最適な方法なのでしょうか?

DFD 上のプロセスから見ると、データストアは、プロセス間のインターフェースになっているともいえます。このような考え方ですべてを進めてしまうと、DBMS への負荷が高くなることが予想されます。また、データストアが別々のデータベースである場合や別々のネットワークである場合、対応が複雑になることが予想されます。

条件にもよりますが、たとえば次のようなアプローチも自然に発想できそうです。

 

DFD

 

ESB と EAI

SOA(Service Oriented Architecuture:サービス志向アーキテクチャ)の重要技術のひとつに ESB(Enterprise Service Bus)があります。異種システム間などでサービスをつなぐ中継技術など、あるいはそれらを実装するミドルウェアにあたります。

この ESB との比較によく用いられているのが EAI(Enterprise Application Integration)です。

ESB は、バス型で分散処理であり、疎結合であることに対して、EAI は、ハブ・アンド・スポーク型で集中処理であり、密結合であることがいわれます。

EAI は、ベンダーの独自技術によって実現されているともいわれます。この EAI をベースにした SOA 製品も登場しています。

 

SOA の3つの基本ポイント

サービス志向アーキテクチャ(SOA:Service Oriented Architecuture)について、わたしが注目する3つの基本ポイントをあげてみます。

SOA の1つめの基本ポイントは、SOAP(Simple Object Access Protocol)。SOAP は、XML と HTTP を利用してオブジェクト間の通信を行うプロトコル。SOAP を利用することにより、異種システム間の連携がやり易くなるであろうこと。また、SOAP が HTTP プロトコルを利用しているため、ファイアウォールを通過できる点も重要なポイントだとわかります。

SOA の2つめの基本ポイントは、訳のままですが、「サービス志向アーキテクチャ」。「サービス」(のオブジェクト)を提供し、そして、その「サービス」(のオブジェクト)を利用するための共通フレームワークであること。Web サービスが例にあげられますが、企業システムにおいては、イントラネット Web サービスが中心となりそうです。当然ながら、インターネット Web サービスもターゲットとなりえます。

SOA の3つめの基本ポイントは、「サービス志向」であること。「サービス」(というオブジェクト)は、ビジネス業務における一連の機能を提供します。企業システムの構築や連携について、SOA では、この「サービス」の視点で切り込んでいくことになります。このことに関連して、BPMN(Business Process Modeling Notation:業務処理プロセスを記述する表記法)、BPEL(Business Process Execution Language:業務処理プロセスを記述する言語)というキーワードが登場します。また、ESB(Enterprise Service Bus:異種システム間などでサービスをつなぐ中継技術など)も重要なキーワードです。

DOA と DFD

データ中心アプローチ(DOA:Data Oriented Approach)は、「データの構造」や「データの流れ」に着目して情報システム分析・構築を進める方式です。わたしの知るところでは、IBM社系列において特に推進されてきた方式です。また、経済産業省のホームページの公表資料によると、エンタープライズアーキテクチャ(EA)の成果物には、機能情報関連図(DFD)があげられています。

この DOA でのモデリング技法に、DFD(Data Flow Diagram)や ER 図(Entity Relationship Diagram)がよく知られています。

DFD を構成する要素は、4つ。「外部実体/ターミネータ」、「プロセス」、「データストア」、「データフロー」。

あるいは、「データの源泉/吸収」、「処理(プロセス/バブル)」、「蓄積(データストア/ファイル)」、「データの流れ(データフロー)」とも。情報処理技術者試験問題ではこちらがよく使われています。

DFD の構成要素が単純であることから、システム全体(のデータの動き)について展望のよいフローを書くことができます。しかし、まじめに細かく「データフロー」線を書いてしまうと、「データフロー」線が多くなり、逆に見づらくなるという面もあります。よって、「フロー」線について網羅・詳細な表現には不向きとも感じられます。

 

 ⇒ affiliated with
 (2011.08.28 21:00)