EIP
The Wide World of Integration (統合の世界は広いよ) †
サマリ †
統合プロジェクトの実際の雰囲気を肌で感じてくださいね!
詳細 †
- 定義:統合(integration) = コンピュータシステム、企業、そして人々を繋ぐこと。
- 代表的な6つの統合シナリオ:
- 情報ポータル(information portal)
- データ複製(data replication)
- ビジネス機能の共有(shared business functions)
- サービス指向アーキテクチャ(service-oriented architectures)
- 分散ビジネスプロセス(distributed business processes)
- B2B統合(business-to-business integration)
- この一覧は網羅的なものではなく、あくまで統合アーキテクトが扱うソリューションの雰囲気を説明するためのもの。実際の統合プロジェクトでは、これらが複数混ざったものになる(例えば、複数のアプリケーションを分散ビジネスプロセスにまとめるには参照データの複製が必要、等)。
情報ポータル †
- 多くのビジネスユーザは1つの仕事をこなすのに、複数のシステムにアクセスする必要がある。
- 例えば、顧客サービス担当営業は、注文の状況を確認するのにメインフレームの注文管理システムを調べて、次にWebの注文管理システムにログインして、など。
- 情報ポータルは複数のシステムからの情報を1つの画面にまとめる。画面はゾーン毎に区切られていて、それぞれ別々のシステムからの情報を表示する。
- より洗練されたシステムでは、ゾーン毎の連携ができる(ゾーンAをいじったらゾーンBが更新されて、など)ものもある。さらに高度になってくると、だんだん単一のアプリケーションとの見分けがつかなくなってくる。
データ複製 †
- 多くのビジネスシステムは共通のデータを参照する必要が出てくる。例えば、顧客管理システム、会計システム、出荷システム、請求システムそれぞれで顧客の住所データを参照する必要がある、等。
- たいていのシステムはそれぞれ独自にデータベースを持っているので、どこかでデータが変更されたら、データ複製という形でデータベースを連携させる必要がある。
- データ複製の方法は色々ある。データベースベンダによっては専用の機能を持っているところもあるし、一回ファイルに書き出してからまた読み込むといった方法や、MOMを使ってデータを転送する方法もある。
ビジネス機能の共有 †
- データが冗長になっているのと同様に、機能が冗長になっていることも多々ある(社会保障番号の妥当性検査とか、住所と郵便番号が一致しているかのチェック、等)。
- そうした共通のビジネス機能をくくり出して共有化する、というのもよくあるシナリオ。
- ビジネス機能の共有化は、データ複製と同じニーズを満たすこともある。例えば、各DBに顧客住所を持つ代わりに、Get Customer Addressという共有機能を実装する、など。
- どっちにするかの判断は、対照システムにどれだけ統制をかけられるか、データの変更頻度はどれぐらいか、といった基準によって決まる。
サービス指向アーキテクチャ †
- 共有化されたビジネス機能はサービスとも呼ばれる。サービスがだんだん集まってくると、今度はサービスを管理する機能が重要になる。
- サービスディスカバリ
- どんなサービスがあるかをリストアップするようなサービスディレクトリの機能
- ネゴシエーション
- サービス利用者がどんな契約に基づいてサービスを利用すればいいかを「交渉」できるためにサービスインタフェースを記述する機能
- SOAでは、アプリケーション統合と分散アプリケーションの区別があいまいになる。
- 新しいアプリケーションを既存のサービスを組み合わせて構築できるが、SOAの開発ツールを使うとローカルのメソッドを呼び出すのと同じくらい簡単に外部サービスを呼び出せてしまう。
分散ビジネスプロセス †
- 統合の主な動機の1つは、1つのビジネス処理が多くのシステムにまたがっていること。
- 必要な機能はすべて個々のアプリケーションにあるが、足りないのはそれらをコーディネートするもの。そこで、ビジネスプロセス管理のコンポーネントが必要になってくる。
- SOAと分散ビジネスプロセスの境界はあいまい。例えば、必要な機能をすべてサービス化して、SOAの形で1つのアプリケーション内にビジネスプロセスを実装することもできる。
B2B統合 †
- これまでは1つの企業内でのシステム間連携だけ考えてきたけれど、実際には外部のサプライヤやビジネスパートナーと連携することもある。
- こうしたB2B統合でも前述の統合シナリオの考え方は有効。
- しかし、インターネットや他のネットワークを介しての通信や、複数の企業間でのやり取りという性質から、以下の3つが特に重要になる。
- 転送プロトコル
- セキュリティ
- データ形式の標準化