BEA ホーム | 製品 | デベロッパ・センタ | support | askBEA |
![]() |
![]() |
|
![]() |
e-docs > WebLogic Integration > BPM トピック > WebLogic Integration Studio ユーザーズ ガイド > WebLogic Integration Studio −はじめに |
WebLogic Integration Studio ユーザーズ ガイド
|
WebLogic Integration Studio −はじめに
WebLogic Integration は、ビジネス プロセスを自動化するために役立つワークフロー管理システムです。ビジネス プロセスは、所期の結果をもたらすための、相互に関連する一連のビジネス アクティビティです。ビジネス プロセスのグラフィック表現がワークフローです。ワークフローは、WebLogic Integration クライアント アプリケーションである WebLogic Integration Studio を使用して定義し、モニタすることができます。
以下の節で、Studio のワークフローにかかわる概念、モデリング コンストラクト、タスクおよびワーク モデルの概要について説明します。
WebLogic Integration における Business Process Management
e- ビジネスの世界では、ビジネスを迅速かつ効果的に進める必要があります。このようなレベルのパフォーマンスを達成するため、多くの企業では、Business Process Management システムによるビジネス プロセスの自動化が行われています。これは、ソフトウェアを使用してビジネス プロセスを定義、管理、実行するシステムです。ビジネス アクティビティの実行順は、ワークフローと呼ばれる、プロセスのコンピュータ表現によって規定されています。
ワークフローによって、プロセス内のアクティビティのシーケンスが制御され、それらが必要とする適切なリソースが呼び出され、この仕組みを通じてビジネス プロセスが自動化されます。これらのリソースは、必要なアクティビティを遂行するソフトウェア コンポーネントの場合もあれば、ビジネス プロセスが生成するメッセージに応答する人員である場合もあります。
このようなレベルのワークフロー オートメーションを達成するため、ワークフロー管理システムでは、大きく分けて以下の 3 つの分野をサポートしています。
WebLogic Integration は以上 3 つの分野すべてのワークフロー管理をサポートします。WebLogic Integration は、実行時プロセス エンジンと WebLogic Integration Studio によるワークフローの定義とモニタを使用してワークフローの実行をサポートします。
ただし、自動化ビジネス プロセスの導入によって、すべての人員にコンピュータが取って代わるわけではありません。自動化プロセスにおいても、裁量に基づく決定を下す場合、あるいは例外や問題が発生した場合の処理など、依然として人員の関与が必要な場面があります。そこで、WebLogic Integration には、エンド ユーザに割り当てられた手動タスクを表示、実行するための Worklist アプリケーションも含まれています。Worklist アプリケーションの詳細については、『WebLogic Integration Worklist ユーザーズ ガイド
』を参照してください。付属アプリケーションを使用しない場合は、プログラマが WebLogic Integration API を使用して独自にワークリスト アプリケーションを作成することもできます。詳細については、『BPM クライアント アプリケーション プログラミング ガイド』を参照してください。注意: Worklist クライアント アプリケーションは、WebLogic Integration のこのリリースでは廃止になっています。置き換えられる機能の詳細については『BEA WebLogic Integration リリース ノート』を参照してください。
Studio の概要
WebLogic Integration Studio は、グラフィカル ユーザ インタフェースを備えたクライアント アプリケーションで、以下に示すとおり、ワークフロー設計、ワークフロー モニタおよびデータ管理の 3 つの分野の機能が備わっています。
ビジネス データのモデリング
WebLogic Integration Studioでは、オーガニゼーションのデータは以下の 3 つのカテゴリに分類されています。
ユーザをロールに割り当てることによって、ユーザのグループがオーガニゼーション内の汎用的なビジネス ロールに基づいて手動タスクを実行することが可能になります。ロールはオーガニゼーション内で一意に定義されます。これによりオーガニゼーションをオーガニゼーション単位に分け、異なるユーザのグループがアタッチされたロール名を再利用できます。
ロールはオーガニゼーション内では一意に定義されますが、次の図に示すように、ユーザは、1 つまたは複数のオーガニゼーションに所属でき、各オーガニゼーション内でも 1 つまたは複数のロールに所属できます。
図1-1 オーガニゼーション、ユーザ、およびロールの相互関係
このサンプルでは、エンジニアリングとサポート サービスという 2 つのオーガニゼーションがあり、それぞれに、エンジニア(Engineer)、QA テスタ(QA Tester)、およびマネージャ(Manager)というロールがあります。ここに図示されている関係は、次の表にまとめられています。
モデリングが可能なその他のビジネス データとしては、スケジュールやワークフロー ルーティングなどのビジネス ルールがあります。勤務時間およびスケジュールは、ビジネス カレンダーを使ってモデリングします。このビジネス カレンダーは、オーガニゼーション、ロールおよびユーザに関連付けることができます。また、ルーティング指定を作成して、アクティビティを一定期間、別のユーザまたはロールにリダイレクトすることもできます。
ビジネス プロセスのモデリング
Studio では、ビジネス プロセスは、モデリングおよびダイアグラム作成を経て、ワークフロー テンプレートとしてデータベースに保存されます。これらのテンプレートは、複数のオーガニゼーションに関連付けることができ、異なるバージョンのワークフローを保存できるように、基本的には空のコンテナとなっています。テンプレートには、テンプレート定義が格納されていて、同じワークフローの異なるバージョンとして機能します。テンプレート定義は、各バージョンのインスタンス化(実行時環境への適用)が可能な期間を規定する有効日と終了日によって区別されます。
テンプレート定義では、フローの構成要素を表す図形の描画および結合によって、モデリングするビジネス プロセスを表現します。プログラム制御は、次の図に示すように、ノードとコネクタを表すシェイプによって視覚的に表現されます。
図1-2 Studio ワークフロー テンプレート定義 : 設計領域
さらに、テンプレート定義には、実行時に各種のアクティビティを実行するアクションと例外ハンドラ、および実行時データを収集、保存、配布するための変数も含まれています。テンプレート定義コンポーネントについては、以下の節でさらに詳しく説明します。 ノード ノードは、ワークフローをグラフィックに表現するために使用する幾何学的図形です。Studio には、以下の 7 つのノードがあります。
アクション
ワークフローの動作はアクションによって定義されるため、アクションはある意味では、ワークフローの基本構成要素だと言えます。アクションには、タスクのユーザへの割り当てなどの単純なものもあれば、XML メッセージの送信や EJB (Enterprise JavaBean) メソッドの呼び出しなどの複雑なものもあります。アクションは、すべてのノード(結合ノードを除く)、例外ハンドラおよび他のアクションにも追加できます。
アクションには以下のように、いくつかのタイプがあります。
変数
変数には、実行時の値と、Java コンポーネントや着信 XML ドキュメントなど通常外部ソースから取得されるデータが格納されます。変数は、ワークフロー アクションによって定数値に設定することもできます。ワークフローで変数を使用する目的はいくつかあり、たとえば、分岐ノードでの条件の評価、テンプレート定義のラベル作成、ワークフローの実行時情報の格納などがそうです。
WebLogic Integration は、以下のタイプの変数をサポートしています。[ブール]、[日付]、[倍精度]、[エンティティ EJB]、[整数]、[Java オブジェクト]、[セッション EJB]、[文字列]、および [XML] の各型がある。日付型は、プラグイン フレームワーク用に開発されたプラグイン型を使用して拡張できます。
例外ハンドラ
例外ハンドラは、内部的または外部的に生成された例外条件の生成、トラップ、応答に使用します。例外は、ワークフローの設計時に見つけてトラップすべき異常条件である場合もあれば、トラップして適切な応答を行うべきサーバ例外である場合もあります。ワークフローには、指定すべき一連のアクションから成るカスタム定義の例外ハンドラを含めることができます。
ユーザ、アプリケーション、およびデータの統合
Studio は、WebLogic Integration の設計ツールとして、Business Process Management 以上の機能を備えていて、ビジネス サイクルにおける手動操作と自動操作を統合するために役立ちます。Studio を使用して、ファイアウォールの両側にあるクライアントと対話しながら、またデータの変換を行いながら、Web ベース アプリケーションとバックエンド アプリケーションを統合するアクションを実行できます。B2B Integration、Application Integration、Data Integration などの BPM 用プラグイン機能の詳細については、以下のドキュメントを参照してください。
以下の節では、Studio の基本アクションによって可能な統合シナリオのサンプル、およびワークフローが XML メッセージング、ビジネス オペレーション、カスタム開発によるプラグインなどを介して外部コンポーネントとインタフェースを取る手段について説明します。
ユーザおよびクライアント アプリケーションを統合する
ワークフローは、Worklist アプリケーションまたはカスタムのクライアント アプリケーションを介して、以下の方法によってシステム ユーザと対話します。
ワークフローでは、システムの外部のユーザとも電子メールで対話できます。
次の図は、ワークフロー、クライアント アプリケーションおよびユーザ間で実行されるさまざまな対話活動を示しています。図に続いて、それぞれのシナリオについて説明します。
図1-3 ユーザおよびクライアント アプリケーションの統合
外部コンポーネントおよびアプリケーションを統合する
ワークフローは、以下の種類の外部ソフトウェア コンポーネントと統合できます。
これらの外部コンポーネントを統合しておくと、以下の方法によってワークフローとそれらとのデータ交換が可能になります。
次の図は、ワークフローと外部コンポーネントとの対話を可能にするさまざまな手段を示しています。図に続いて、それぞれのシナリオについて説明します。
図1-4 外部コンポーネントおよびアプリケーションの統合
ワークフローを統合する
以下の方法で、ワークフロー間の交信を行うことができます。
次の図は、ワークフロー間で行われるさまざまな対話を示しています。図に続いて、それぞれのシナリオについて説明します。
図1-5 ワークフローの統合
データを統合する
XML メッセージの交換に加えて、ワークフローによって、XML ドキュメントをあるフォーマットから別のフォーマットに変換して、外部アプリケーションに渡せるようにすることができます。
図1-6 データの統合
このシナリオでは、ワークフローで XSL (Extensible Stylesheet Language: 拡張スタイルシート言語) テンプレートを使用して、XML ドキュメントの他の構造への変換が行われます。
ワークフローの設計アプローチとタスク
システム設計理論では、理想的なシステム設計はトップダウンのアプローチであるとされています。現実には、システム設計にはトップダウン、ボトムアップの両方のアプローチが採用されています。次の図に示すように、WebLogic Integration ワークフローの設計にも、この 2 つのアプローチが使われています。
図1-7 ワークフローの設計
このドキュメントの組織原理として採用されているのがトップダウン アプローチです。ただし、トップダウン、ボトムアップの両方ともが有効であり必要でもあるため、実践的には、通常は両方が採用されます。Studio の特定の設計タスクおよび設計段階に対する両方のアプローチについては、以下の節で説明します。 トップダウン アプローチ Studio のグラフィカル ユーザ インタフェースでは、トップダウン アプローチが採用されていて、ほとんどの外部コンポーネント要素はあらかじめ開発済みとなっています。このアプローチの場合、ワークフロー定義プロセスは、基本アクティビティの高レベルのグラフィック表現およびアプリケーションが実現するロジックのマッピングから始まって、より詳細な指定へと掘り下げていきます。 このワーク モデルは、次のフローチャートに示します。Studio での WebLogic Integration ワークフローのモデリング、設計、定義、テストの各段階で実行する主なタスクがまとめられています。このドキュメントで用いた構造のベースとなっているのがこのモデルです。手順 3 以降の各手順は、このドキュメントで取り上げるトピックに対応しています。この図については、この後、詳しく説明します。この設計プロセスには、タスクが繰り返されるという循環的な特徴がありますが、視覚的な単純化のため、フローチャートではこの性質を実際にループで表現していないので注意してください。 図1-8 Studio の設計ワーク モデルトップダウン アプローチ
ボトムアップ アプローチ
Studio でのタスク設計に対するボトムアップ アプローチでは、テンプレート定義にコピーまたはインポートしてフローに組み込むことの可能な、変数、アクション、ノード、ノード グループで構成された再利用およびエクスポート可能な設計パターンのカタログを作成する必要があります。このアプローチでも、やはり、アプリケーションの要件を分析し、必要なリソースを整備するという事前タスクを完了しておく必要があります。ただし、このアプローチでは、高レベルのプログラム フローの概要を定義することから着手するのではなく、使用可能な Studio アクションをワークフローにおいて頻出する操作にマッピングし、それらのアクションの詳細を定義することから着手します。このアプローチによる推奨ワーク モデルは、以下の手順で構成されます。
Studio ツール
Studio には、プロセス フロー設計に使用するグラフィック描画エンジンに加えて、以下のような、外部リソース管理およびワークフロー プロパティ定義に役立つ各種ツールも備わっています。
XML ファインダは、スキーマ、文書型定義、メッセージ フォーマットなど、データベース表やファイルに保存されている、タイプの異なる XML コンテンツにアクセスして整理するために役立つファイルおよびコンテンツの管理ツールです。XML ファインダについては、リポジトリにあるエンティティの管理およびXML ファインダによる XML エンティティの取り出しとエクスポートで説明します。
Studio アクションの多くは、XML ドキュメントをワークフローから構成、インポートおよびエクスポートするために役立ちます。これらのアクションには、XML ドキュメント テンプレートの新しい構成、既存ドキュメントの編集、および XML スキーマに照らしたコンテンツの検証に使用できる XML エディタが含まれています。XML 編集機能については、XML エンティティを操作で説明します。
Studio のダイアログ ボックスの多くは、ワークフロー式の構文でデータを入力する必要があります。Expression Builder は、演算子、リテラル、ワークフロー関数、自分で作成した変数などのカタログから選択した要素を使用して、コンポーネントごとに式を作成するための編集ツールです。式が完成したときに、Expression Builder によって構文の確認が行われ、エラーがあれば通知されます。Expression Builder については、Expression Builder の使い方で説明します。
着信した XML ドキュメントからコンテンツを抽出するには、XPath 関数を使用して XML 要素や XML 属性に含まれているターゲット データを検索します。XPath Wizard は、サンプルの XML ドキュメントやスキーマ、DTD で生成した XML から選択したコンテンツから、XPath 言語の構文を習得することなく、XPath 式を自動的に生成させるポイント アンド クリック ツールです。XPath Wizard については、XPath Wizard を使用する XPath 式の作成で説明します。
Import/Export ウィザードを使って、ワークフロー テンプレート、テンプレート定義、ビジネス オペレーション、イベント キー、プラグイン、XML エンティティなどのシステム内で定義済みの関連リソースのすべてをエクスポートできます。ワークフロー オブジェクトは Java アーカイブファイルにエクスポートされ、Studio が実行されている任意のシステムにインポートできます。Import/Export ウィザードについては、ワークフロー パッケージのインポートとエクスポートで説明します。
![]() |
![]() |
![]() |
![]() |
||
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |