概要

     前  次    新しいウィンドウで目次を開く     
ここから内容

ビジネス プロセス管理 : プロセス駆動型サービス

WebLogic Server Process Edition を使用すると、複数の内部システム、外部リソース、およびユーザにまたがるビジネス プロセスをモデル化し、実行できます。ビジネス プロセス管理 (BPM) では、エンタープライズは、コントロールを使用してアクセスでき、統合してビジネス プロセスをモデル化できる、一連のビジネス サービスとみなされます。ビジネス プロセスを使用すると、ビジネス ロジックの実行と、バックエンド システム、ユーザ、およびトレーディング パートナ (システムおよびユーザ) 間の疎結合型のビジネス ドキュメント交換を調整できます。

以下のセクションでは、BPM と、ビジネス プロセスのリソースとして使用できる Web サービスについて詳しく説明します。

 


ビジネス プロセス管理の概要

ビジネス プロセス エンジンを使用すると、ビジネス プロセスのグラフィック表現を容易に作成できるため、実装の詳細よりもアプリケーションのロジックに集中できるようになります。

ビジネス プロセスのコンポーネント ノードのグラフィックを作成するには、ビジネス プロセス パレットからコンポーネントをドラッグし、[デザイン ビュー] ペインにドロップします。プログラムの制御は、それらのノード (またはシェイプ) とノード間の連結によって視覚的に表されます。実質的には、ビジネス プロセス、およびそのプロセスが行うクライアントやリソース (データベース、JMS キュー、ファイル システムなどのコンポーネント) との対話のグラフィカルな表現を作成します。次の図に、ビジネス プロセス エディタの例を示します。

図 3-1 ビジネス プロセス エディタ

ビジネス プロセス エディタ

ビジネス プロセスの作成方法の詳細については、 『ビジネス プロセス構築ガイド』を参照してください。

 


ビジネス プロセス管理の機能

次の表で、WebLogic Server Process Edition のビジネス プロセス管理 (BPM) の主要な機能について説明します。

表 3-1 BPM の主要な機能 
機能
説明
コントロールを使用した、リソースへの統合アクセス
ビジネス アクティビティをサービスとして表示したり、ビジネス プロセスをモデル化して統合および自動化を調整したりできる。ビジネス プロセスは、ユーザ、アプリケーション、バックエンド リソース、ファイアウォール内外のリソースとシームレスに対話する。
新しい単純化された構造化ビジネス プロセス
新しい単純化された構造には、ビジネス プロセス フロー用の XML や操作用の Java が備わっている。
おおまかな統合シナリオ用のグラフィカルなビジネス プロセス編集
メッセージ ベースのトランスフォーメーション ルーティングを実行できる。ビジネス プロセスは Java クラスなので、ビジネス プロセス (JPD) ファイルにはビジネス プロセス ロジックを記述したメタデータも含まれている。また、デザイン ビューとソース ビューの両方から、双方向の編集を行うことも可能。
ビジネス プロセス ノードでの Java コードのサポート
クリックするだけで、Java コードを記述できる。
同期および非同期のビジネス プロセス呼び出しのサポート
メッセージ (同期開始を含む) を、外部の Java クライアントからリモート メソッド呼び出し (RMI) によって送信できる。
パフォーマンス向上のためのプロセス実装の最適化
サポートされているプロセスは以下のとおり。
  • ステートレス同期
  • ステートレス非同期
  • ステートフル非同期

 


ビジネス プロセスのリソースとして使用可能な Web サービス

WebLogic Server Process Edition では、Web サービス、非同期通信、および XML メッセージングがプラットフォーム レベルで利用されます。このレベルでは、これらのサービスを内部統合および外部統合の両方にわたって利用することにより、疎結合アプリケーションおよび非同期アプリケーションの開発および統合を簡素化できます。

WebLogic Server Process Edition は、Web サービスのセキュリティおよび信頼性の高いメッセージングなど、Web サービスのネイティブ サポートを特徴としています。Web サービスは WebLogic Server Process Edition のビジネス プロセス内から呼び出すことができます。ビジネス プロセスを Web サービスとしてエクスポーズし、それらをリソースとして他のアプリケーションおよびアプリケーション コンポーネントが使用できるようにすることもできます。次の図に、ビジネス プロセスから呼び出された Web サービスを示します。

図 3-2 ビジネス プロセスから呼び出された Web サービス

ビジネス プロセスから呼び出された Web サービス

 


ビジネス プロセスの作成

Weblogic Server Process Edition のビジネス プロセス管理 (BPM) 機能を使用すると、社外のトレーディング パートナ間で情報を調整して交換するだけでなく、多様なアプリケーションやユーザを統合することができます。ビジネス プロセスを使用すると、ビジネス ロジックの実行と、バックエンド システム、ユーザ、およびトレーディング パートナ (システムおよびユーザ) 間の疎結合型のビジネス ドキュメント交換を調整できます。

ビジネス プロセスの設計では、まず最初に、プロジェクトのビジネス要件を満たすビジネス プロセスをグラフィカルに表現します。ビジネス プロセスのコンポーネント ノードのグラフィックを作成するには、ビジネス プロセス パレットからコンポーネントをドラッグし、[デザイン ビュー] ペインにドロップします。プログラムの制御は、それらのノード (またはシェイプ) とノード間の連結によって視覚的に表されます。グラフィック ツールを使用してビジネス プロセスを設計する際には、ソース コードが自動的にビジネス プロセス ファイルに書き込まれます。Java のコードを記述する必要があるときは、1 回クリックするだけでいつでも Java コードを使用することができます (ソース ビュー)。

WebLogic Server Process Edition のビジネス プロセス管理機能を使用すると、企業の開発者は、既存のエンタープライズ システム、クロスエンタープライズ アプリケーション、およびエンドユーザの意思決定者を統合する複雑な e ビジネス プロセスを開発、実行、および管理できます。

ビジネス プロセスの作成方法の詳細については、 『ビジネス プロセス構築ガイド』を参照してください。

 


ステートフル プロセスとステートレス プロセス

ビジネス プロセスには、ステートフルとステートレスの 2 種類があります。ステートフル プロセスとは、エンティティ bean にコンパイルされ、1 つまたは複数の JTA トランザクションのスコープ内で実行されるビジネス プロセスのことです。ステートレス プロセスとは、ステートレス セッション Bean にコンパイルされ、1 つの JTA トランザクションの内部で実行されるビジネス プロセスのことです。デフォルトでは、ビジネス プロセスはデータ フローを遮断する構成要素 (つまりトランザクション境界に影響するプロセス) を追加するまではステートレスです。トランザクション境界の詳細については、『ビジネス プロセス構築ガイド』の「トランザクション境界」を参照してください。

以下のセクションでは、ステートフル プロセスとステートレス プロセスについて詳しく説明します。

ステートレス プロセス

ステートレス プロセスは、短期間のロジックを呼び出すビジネス シナリオをサポートするため、高いパフォーマンスが要求されます。ステートレス プロセスは、その状態をデータベースに保存しないため、低レイテンシ、高パフォーマンスの実行に適しています。ステートレス プロセスの例としては、クライアントから非同期でメッセージを受信し、そのメッセージを変換して、それをコントロールを使用してリソースに非同期で送信するプロセスがあります。もう 1 つの例には、メッセージ ブローカ サブスクリプションで開始され、メッセージを変換し、それを別のメッセージ ブローカ チャネルにパブリッシュするプロセスがあります。このようなプロセスは、従来のメッセージ ブローカ システムまたはメッセージ ルーティング システムで使用される種類のルーティング規則と類似しています。

ステートレス プロセスで変数を使用する方法の詳細については、『ビジネス プロセス構築ガイド』の「ステートレス/ステートフル ビジネス プロセスの構築」を参照してください。

ステートフル プロセス

ステートフル プロセスは、複雑な長期間のロジックを呼び出すビジネス シナリオをサポートするため、信頼性と回復に関する特定の要件があります。ステートフル ノードまたはトランザクションの境界を設定するロジックを追加すると、プロセスはステートフルになります。トランザクション境界の詳細については、『ビジネス プロセス構築ガイド』の「トランザクション境界」を参照してください。

たとえば、メッセージを受信し、そのメッセージを変換して、それをビジネス パートナに送信し、その後に非同期の応答を待ち受けるプロセスはステートフルになります。これは、待機動作によってトランザクション境界が強制されるためです。これが必要なのは、以下のことが確実に行われるようにするためです。

ステートフル プロセスで変数を使用する方法の詳細については、『ビジネス プロセス構築ガイド』の「ステートレス/ステートフル ビジネス プロセスの構築」を参照してください。

ビジネス プロセスがステートフルかステートレスかの判断

[開始] ノードのプロパティ エディタには、ビジネス プロセスがステートレスかステートフルかが表示されます。 ステートレス プロセスの場合は、プロパティ エディタに「Stateless = True」というメッセージが表示され、[開始] ノードのアイコンに ビジネス プロセスから呼び出された Web サービス アイコンが表示されます。ステートフル プロセスの場合は、プロパティ エディタに「stateless = False」というメッセージが表示され、[開始] ノードのアイコンに ビジネス プロセスから呼び出された Web サービス アイコンが表示されます。


  ページの先頭       前  次