| 掲載日:2005年05月25日(水) |
 |
日本アイ・ビー・エム株式会社
ソフトウェア事業部 牧野あすか |
 |
これまでSOAとは何か、そしてSOAに関する技術についてご紹介してきましたが、最終回の今回はSOAに対応したIBMソフトウェアにはいったいどんなものがあるのか説明したいと思います。
連載ではSOAに関連する技術として「Webサービス」「BPEL」「ESB」の3つをとりあげましたが、それぞれの技術に対応するソフトウェアを順にご紹介します。
まずWebサービスですが、実行環境としてはWebSphere Application Server(以下、WAS)があります。
WebサービスにはWS-I Basic Profileという異なるベンダーのSOAPエンジン間の相互接続性を向上させるための仕様がありますが、WASはWS-I Basic Profile1.1に準拠しています。また、Webサービスの開発環境としてはRational Application DeveloperやRational Web Developer(旧 WebSphere Studio)があります。これらの開発ツールではWebサービスの開発を容易にするためのウィザードやテストツールの機能を提供しています。
BPELはビジネスプロセス実行言語と呼ばれるとおり、ビジネスプロセスを管理するためのテクノロジーです。そこでIBMソフトウェアを使ってビジネスプロセスを管理するステップを図1に習ってみていきましょう。


図1
まずはWebSphere Business Integration(以下、WBI)Modelerを使って最適なビジネスプロセスをモデリングします。この製品ではモデリングした結果をシミュレーションすることもできます。ビジネスプロセスが決定したらモデリングしたフローをエキスポートします。BPEL形式でエキスポートすることが可能ですのでそのまま実装ツールであるWebSphere Studio Application Developer Integrated Editionに取り込みます。ツールでは実際のモジュールと組み合わせて実装レベルのビジネスプロセスフローを作成していきます。完成したら実行エンジンに読み込ませてビジネスプロセスを実行します。実行エンジンとしてはWBI Server Foundationが提供されています。ここまでがプロセス実行までの簡単な流れになります。この後、プロセスの状況を監視したりボトルネックを分析したりするWBI Monitorという製品が2005年上半期に提供される予定になっています。
WAS V6.0ではSI-Busという名称でESB機能を提供しています。図2に習ってみていきたいと思います。


図2
WAS V6.0ではサービスをつなげるためのSI-Busというバスを作ることができます。このバスを作ると内部にJavaベースのメッセージング・エンジン(WebSphere MQのようなものを想像してください)が作られます。バスは他のWAS V6.0が搭載されたマシンのバスと接続することができます。図の例ではシステムA、B、C3つのマシンのバスが相互にリンクされています。このリンクされたひとつの島をESBと呼んでいます。たとえばシステムAにあるクライアントプログラムはバスを通してシステムAにある顧客情報取得サービスを呼び出したり、システムBにある在庫管理サービスを呼び出したり、システムCにある決済処理サービスを呼び出したりすることが可能です。処理に必要なデータ、たとえば顧客情報や商品情報などはメッセージング機能によってデータが伝送されます。
SOAという言葉はIT市場のキーワードとなり、各ベンダーは競って自社のSOA戦略を打ち出しています。IBMでもSOA戦略としてコンサルティングや、サービス、ソフトウェアといった一括したサービスを提供することでその価値を強調しています。そしてこれからも標準技術や仕様の策定は進んでいくと思われます。
SOAはもともとビジネスに役立てるために考えられたコンセプトです。自社のビジネスのプロセスの効率化、最適化を常に考えながら、サービス化を検討していくことが最も重要となります。皆さんの身近にある業務プロセスの中でもサービス化できる部分はないか是非この機会に検討していただければ幸いです。
|