PR

 複数のWebサービスを順に呼び出して実行する手順を、一連のビジネスの流れとして記述するための言語。BPEL(ビーペル)は、Business Process Execution Language(ビジネス・プロセス実行言語)の略。

 Webサービスは、インターネットを使って複数のアプリケーションを連携させる技術であるとともに、この技術で実現したアプリケーションを指す。日本でも着実に普及しつつあるが、ビジネスの流れに合わせて複数のWebサービスを連携させるケースはほとんどない。BPELはこれを可能にするものだ。

 BPELを使うと「注文を受け付ける」、「在庫を確認する」といった一連のビジネス・プロセスのなかで、いつ、どんな条件のときに、どのWebサービスを呼び出すかを定義できる。システム全体をサービスの集まりと見なすサービス指向アーキテクチャ(SOA)を実現するうえで欠かせない技術といえる。

 BPELで使う表記法は、Webサービスの主要技術であるXML(Extended Markup Language)に基づく。invoke(Webサービスを呼び出す)、receive(要求を受信する)、reply(結果を返信する)といった作業単位(アクティビティ)を組み合わせてビジネス・プロセスを定義する。プロセスは分岐や入れ子の構造を採ることができ、例外処理やプロセスの取り消しなども定義できる。

 BPELを実際に使うためには、BPELによるビジネス・プロセスの作成を支援するツールや、作成したビジネス・プロセスの実行環境が必要になる。そのための製品も登場している。例えば日本IBMは、ビジネス・プロセスの作成を支援するモデリング・ツール「WebSphere Business Integration Modeler Version 5(WBI Modeler)」を9月30日に出荷する。これに先駆け、5月にはビジネス・プロセスの実行環境を備える「WebSphere Business Integration Server Foundation V5.1(WBI SF)」を出荷した。このほか、マイクロソフトなどがBPELを使用できる製品を販売している。

 BPELは、2002年8月に米IBMと米BEAシステムズ、米マイクロソフトの3社によって作成された。正式名はBPEL4WS(BPEL for Web Services)で、2003年5月に発表したバージョン1.1が最新版である。Webサービスのビジネス・プロセスを記述する言語仕様はほかにもあるが、現在ではBPELがこの分野の標準になるとみられている。

 XML関連の標準化団体であるOASISは、BPEL4WSを基に「WSBPEL(Web Services BPEL)」という名称で標準化を進めている。当初は今年初めに最終案のドラフトが完成するはずだったが、作業は遅れている。ただしBPELの大枠は固まっており、現時点の仕様で実用上の大きな問題はないと指摘する関係者が多い。IBMとBEAシステムズが共同で策定した、BPELとJavaを組み合わせた「BPELJ(BPEL for Java)」という仕様もある。

(松浦)