BT

最新技術を追い求めるデベロッパのための情報コミュニティ

寄稿

Topics

地域を選ぶ

InfoQ ホームページ ニュース JBoss jBPM 4の最初のリリースでBPMNのグラフィカル・デザイナとプロセス仮想マシンを提供

JBoss jBPM 4の最初のリリースでBPMNのグラフィカル・デザイナとプロセス仮想マシンを提供

JBoss(リンク)のビジネス・プロセス・マネジメント(BPM)エンジンであるjBPM 4 (リンク)の最初のリリースでEclipseベースのBPMNグラフィカル・デザイナを提供されている。最近jBPM(リンク)の開発チームはjBPM 4.0.0.アルファ1バージョンのリリースを発表した。さらにこのリリースでは、複数のプロセス言語や実行モードに対応した新しいプロセス仮想マシン (リンク)(PVM)を投入した。

jBPMはスタンドアローン・サーバとして、あるいはあらゆるJavaアプリケーションに組込んで使うことが出来、業務分析の担当者とソフトウェア開発者が協力するのを助けます。さらにJavaでのトランザクション制御構造もサポートしていて、開発者が非同期アーキテクチャをモデリングする際に利用される。トランザクション制御構造というのはアプリケーション全体の制御構造を指していて、複数のトランザクションに渡るもののことである。このフレームワークはトランザクション、非同期メッセージング、そしてタイマーといった開発環境や実行環境の基盤部分と密接に結合している。エンタープライズJava、スタンダードなJava、SEAM(リンク)やSpring(リンク)、何をターゲットにしたプロジェクトであったとしてもjBPMは長時間かかる処理を非同期なパーツに変換してくれる。従って開発者はBPMNをベースにしたグラフィカルなデザイナを使ってJPDLで処理概要を定義することが出来るのである。さらにJavaのパーツを記述し処理概要図の任意の場所にそれを関連付けることも出来る。

jBPM 4に含まれる新しい機能のいくつかを以下に示す。

  • Eclipseから使えるBPMNベースのグラフィカル・デザイナ
  • 主要なクライアント向けAPIとしてのコマンド・ベースのサービス
  • 疎結合なアクティビティを実装するためのAPI
  • 独自のアクティビティを容易に追加可能
  • データベースのさらなる進化、そしてプロセス言語ごとのパーティショニング機能

jBPM 4の最新のリリース版はjBPMのWebサイトからダウンロード出来る (リンク)。さらに更新されたユーザ・ガイド (リンク)のドキュメントや開発者向けフォーラム(リンク)などもある。jBPMはJBoss Enterprise SOA Platform(リンク)の重要なコンポーネントでもある。jBPMのサブプロジェクトにはjPDL (リンク)、サービスを統制するためのBPEL(リンク)、GPD(リンク),Eclipse WTPとGETフレームワークを使って構築されたEclipseプラグインのセットであるプロセス・デザイナ、そしてPVM (リンク)が含まれている。

InfoQではJBoss jBPMプロジェクトの創設者でリーダーでもあるTom Baeyens氏(リンク)と今回のリリース及びフレームワークの今後のロードマップについて語った。jBPM4はどのような場合にワークフロー・ベースのビジネス・プロセスを管理するのに使えるのかとの問いにTom氏は以下のように答えた。

業務担当者は好きな形式でビジネス・プロセスを記述することが出来ます。BPMN(リンク)を使ったりホワイトボードに作図したり(リンク)、Visio(リンク)やEPCなどを使って構いません。続いて開発チームはjPDLを使って元となった(業務)分析図と寸分違わぬ実行可能なプロセスを構築できます。実行可能なビジネス・プロセスの構築は結果的にJavaでトランザクション制御構造を作ることになります。実行可能なプロセスはソフトウェアという形になります。業務担当者は尚も実行可能なjPDLのプロセス図を使って議論することが出来ますが、それは開発者の支配下にあります。ビジネス・プロセス図は業務担当者と開発者の間の共通言語となります。そしてそれを入力として開発者は実行可能なプロセスを繰り返し更新することが出来ます。
一般的なBPM製品はBPMの業務的な側面にしか焦点を当てていません。技術開発者の観点が欠けているためにそれらの製品は一般的なソフトウェア開発と置き換えられる場合にしか使えません。私はこのことは従来のBPMにおける決定的な過ちだったと思っています。jBPMではBPMをソフトウェア開発の不可欠な要素と考えています。利用するBPMエンジンは現在のソフトウェア開発プロジェクトを置き換えるものではなく、自然と適用出来るものでなくてはならないのです。

BPMNベースのグラフィカル・デザイナ・ツールについて詳細とどのように機能するのか教えてください。

BPMNはようやくビジネス・プロセスの作図法として一般的に採用されるようになりました。jBPMは複数のプロセス言語に対応しています。jPDLはJavaのトランザクソン制御構造に特化して設計された私たち独自のプロセス言語になります。(Eclipseプラグインである)jPDLグラフィカル・デザイナはプロセス図を表す表記法としてBPMNを利用しています。
実際これは業務担当者のBPMNに対する解釈と実行形式を一致させるための挑戦だと思っていました。BPMNは確かにとても表現に富み強力な表記法ですが、業務分析担当者が常にモデリング対象の詳細まで知っているとは限らないのです。いろいろな場合が考えられるのです。ある業務担当者はとても厳格にモデリングする一方で、(BPMNを)単なるお絵かきツールとして使い独自の解釈を含めるのです。BPMNベースのグラフィカル・デザイナの作成に当たって私たちが最初に注力したのは、図と実行形式の不一致を避けることでした。BPMNを詳細を全ての人に公開することだけが正しい方法ではないと思います。従って、私たちはBPMNの誤った使い方を最小限にする方法を探していました。

jBPMはBPM設計者や開発者に対してどのようなユニット・テストの方法を提供していますか。

jBPMを使うと他のJavaソフトウェアの部品とまさに同じように実行可能なビジネス・プロセスをテストすることが出来ます。全てのテスト・メソッドが一つのシナリオを通して実行されます。テストは外部のトリガーによって起動されプロセスの実行が期待された状態になっているかどうかを確認できます。テスト対象のプロセスが使用する外部のサービスをスタブ化する必要もないのです。ですから結合テストとしても利用できます。

jBPMはJBoss Seam(リンク)のような対話型のフレームワークやJBossRules (リンク)のようなルール・エンジンとどのように統合することが出来ますか。

jBPMはSEAMの中核的なコンポーネントで2つの側面を提供します。jPDLはビジネス・プロセス・コンテキストとして統合されます。PageflowはSEAMのもう一つの側面でjBPMをベースとしています。SEAMはWebページ間の遷移先を特定するためにPageflowを使います。

jBPMとJBossRulesは共にPOJO技術をベースにしているのでとても相性がいいです。プロセス変数はPOJOですし、JBossRulesの(入力として使われる)factもPOJOですので相互に交換可能です。jBPM 4ではこれをさらに便利になるように拡張します。例えばプロセスとルールをまとめてデプロイしたり、(aka decisionのような)外部のゲートウェイでにおけるルール・ベースの条件判断、そしてルール・ベースのタスク割り当てなどです。

モニタリングはBPM/ワークフロー・アプリケーションの重要な要素です。jBPM 4ではどのようなモニタリングをサポートしますか。

jBPM 3ではプロセス実行時のことを全て記録していました。従ってこれら全ての情報を使うことが出来ました。ところがこれらの個別のログから意味のある統計情報を抽出するのは時に重荷となることがありました。そこでjBPM 4ではこの点を大幅に改善しました。まず始めに、フラットなログ・テーブルは構造化された履歴スキーマに置き換えられ、簡単に検索できるようになりました。次に、GWTベースの新しいコンソール (リンク)には始めからレポート一式が含まれています。そしてこれらのレポートはBIRTベース(リンク).なのでカスタマイズすることやテンプレートとして使うことが簡単に出来ます。

JBoss server clusterのような分散処理環境でjBPMはどのように機能しますか。

jBPMはクラスタリングされた環境で発生する高負荷な同期処理は全てデータベースに任せます。jBPMの永続化機構はHibernateをベースにしています。実行中のプロセスへのアクセスは楽観ロックによって保護されます。この仕組みは始めから組込まれていてオーバーヘッドなく機能します。事実上、この方法がアーキテクチャ上の極めて重大な選択となったのです。大量のデータや高い効率が求められる状況にも簡単に対応できます。

jBPMのロード・マップはどのようになっていますか。

3月1日に次期アルファ・バージョンをリリースします。その後7月1日のGAリリースまで毎月定期的にリリースをする予定です。上に述べた機能強化に加えて、最初に注力するのはjBPM 3の機能をカバーすることとjBPM 3からの移行に対応することです。7月のjBPM 4 GAリリースの後、アクティビティ・タイプとツール類の構築を行う予定です。

 

原文はこちらです:http://www.infoq.com/news/2009/01/jbpm4-first-release

この記事に星をつける

おすすめ度
スタイル

BT