TOP業務システム> BPELとは
SOA/ESB
SOA/ESBの真の姿とは

第7回:BPEL 2.0とは?

著者:Fiorano Software  青島 茂   2007/11/15
1   2  3  次のページ
BPELとは

   前回は、ビジネスプロセスの連携方式として、リクエスト・リプライとイベントドリブンについて説明しました。今回はリクエスト・リプライ方式の実行環境としてデファクトスタンダードになりつつあるBPELについて取り上げます。

   BPELはビジネスプロセスを定義するための言語仕様です。IBMが仕様開発を行っていたWSFLとMicrosoftが開発していたXLANGを基に、SiebelSystem、BEA、SAPが加わって2003年に提案されたBusiness Process Execution Language for WebServices Version 1.1(BPEL4WS)がベースとなっています。

   BPELはその後、標準化団体であるOASISに移譲され、今年(2007年)4月にBEPL 2.0(Web Service Business Process Execution Language Version 2.0)の仕様が発表されています。OASISに委譲された以降のバージョンは、WS-BPELと略記されます。以降、本記事では、BPEL 1.1、BEPL 2.0と表記します。

   OASISによる仕様策定には多くの製品ベンダーやエンドユーザが参加し、またミドルウェア製品の主要ベンダーのほとんどがWS-BPELへの対応を表明しており、WS-BPELはビジネスプロセスの定義と実行についての有望な選択肢の1つとなっています。

   本記事では、BPELによるビジネスプロセスとはどのようなものであるか、そのキーポイントを説明していきます。BPELの言語仕様を詳細に解説することはこの連載の目的からはずれますので控えますが、先ごろ発表されたWS-BEPL 2.0と旧BPEL4WS1.1との違いについてはできるだけ取り上げようと思います。BPEL仕様に興味のある方は、OASISのWebサイトから資料を参照、ダウンロードすることができますので、そちらをご覧ください。


BPELを用いる前の受注アプリケーション

   今回も「第6回:リクエスト・リプライ方式とイベントドリブン方式の違い」で使った受注処理の例題を用いることにします。この例は、ユーザからの発注書に基づいて在庫確認を行い、配送センターに製品の配送を依頼するというものです。では次にBPELによる制御を組み込んでいきましょう。


BPELによる制御を組み込む

   もともとの受注アプリケーションが実行していた処理ロジックのほとんどは、外部システムを呼び出すための処理手続きとなっており、これらのロジックはBPELによっても実現可能です。BPELに処理ロジックを移行させた結果は図1のようになります。

BPELへの移行結果とBPELを追加したシステム構成
図1:BPELへの移行結果とBPELを追加したシステム構成
(画像をクリックすると別ウィンドウに拡大図を表示します)

   また、BPELフローは、XML形式で記述された定義にすぎません。そのため、実行にはBPELフローが定義されたXML(BPELソース)を解釈し、実行するためのエンジンが必要となります。これを追加したシステム構成もあわせて示します。


BPELへ移行することで生まれる変更点

   処理ロジックをBPEL内に移行することで、BPELを1回呼ぶだけで在庫確認と発送処理の両方が実行できます。また、受注アプリケーションにとって外部のシステム(在庫管理システム、配送システム)が完全にトランスペアレントとなっています。

   このため、外部システムの変更(ロケーション、通信プロトコル、呼び出しインターフェース)から受注アプリケーションが解放され、外部システムの変更による影響を受けなくなります。さらに、外部システム(在庫管理システム、配送システム)に、WSDLの定義が必要となります。

   本連載では、これらの変更点を踏まえて受注アプリケーションのBPEL図1をベースに、BPELによるビジネスプロセスの特徴をみていきます。

1   2  3  次のページ


Fiorano Software, Inc. 日本オフィス ジャパン オペレーション マネージャ 青島 茂
著者プロフィール
Fiorano Software, Inc.
日本オフィス ジャパン オペレーション マネージャ
青島 茂
SOA/ESBの分野に2003年1月からたずさわる。2005年3月にFiorano Softwareの日本オフィスを開設し、現在SOA/ESB製品の国内市場への普及に専心している。


INDEX
第7回:BPEL 2.0とは?
BPELとは
  BEPL 2.0によるビジネスプロセス実行の特徴
  BPELフローの起動とコンポジットアプリケーション