Fusion Middleware Oracle Business Process Management Business Process Composerユーザーズ・ガイド

11g リリース1(11.1.1.6.2)

B61410-05(原本部品番号:E15177-08)

目次

例一覧

図一覧

表一覧

タイトルおよび著作権情報

はじめに

- 対象読者

- ドキュメントのアクセシビリティについて

- 関連ドキュメント

- 表記規則

このガイドでのリリース11.1.1.6.xの新機能

第I部 Oracle Business Process Composerの概要

1 Oracle Business Process Management Suiteの概要

- 1.1 Oracle Business Process Management Suiteの概要

- 1.2 Oracle BPMのユーザー・ペルソナ

- 1.3 Oracle BPM Suiteのコンポーネント

- 1.3.1 プロセス・モデリングおよび実装

- 1.3.1.1 Oracle BPM Studio

- 1.3.1.2 Oracle Business Process Composer

- 1.3.1.3 Oracle Metadata Service(MDS)リポジトリ

- 1.3.1.4 Oracle BPMプロジェクト

- 1.3.2 Oracle BPMランタイム・コンポーネント

- 1.3.2.1 Oracle BPMエンジン

- 1.3.2.2 Oracle Human Workflow

- 1.3.2.3 Oracle Business Rules

- 1.3.2.4 Oracle WebLogic Application Server

- 1.3.2.5 Oracle Enterprise Manager

- 1.3.3 Oracle BPM Suiteプロセス参加者アプリケーション

- 1.3.3.1 Oracle Business Process Management Workspace(プロセス・ワークスペース)

- 1.3.3.2 Oracle Business Process Management Process Spaces(プロセス・スペース)

- 1.3.4 その他のOracle BPM Suiteのコンポーネント

- 1.3.4.1 プロセス分析

- 1.3.4.2 ガイド付きビジネス・プロセス

- 1.4 Oracle Business Process Analysis (BPA) Suite

- 1.5 アプリケーション開発ライフサイクルの概要

- 1.5.1 プロセス・モデリング

- 1.5.2 実装

- 1.5.3 デプロイメント

- 1.5.4 Oracle BPMランタイム

- 1.6 Oracle BPMのユース・ケース

- 1.6.1 ユース・ケース: BPM Studioを使用したプロジェクト・テンプレートの作成

- 1.6.2 ユース・ケース: BPM Studioを使用したプロセス・モデリングおよびアプリケーションのデプロイ

- 1.6.3 ユースケース: Business Process Composerを使用したプロジェクトの作成

- 1.6.4 ユース・ケース: Business Process Composerを使用したOracle Business Rulesの修正

- 1.6.5 ユース・ケース: Oracle Business Process Analysis Suiteを使用したビジネス・プロセスのモデリング

2 ビジネス・プロセス設計の概要

- 2.1 Business Process Management Notation (BPMN)の概要

- 2.1.1 Business Process Management Notation (BPMN)の概要

- 2.1.2 ビジネス・プロセス

- 2.1.2.1 プロセス・インスタンス

- 2.1.2.2 プロセス・トークン

- 2.1.3 フロー・オブジェクト

- 2.1.3.1 タスク

- 2.1.3.2 イベント

- 2.1.3.3 ゲートウェイ

- 2.1.3.4 シーケンス・フロー

- 2.1.4 データ・オブジェクト

- 2.2 営業見積サンプルの概要

- 2.2.1 営業見積サンプルの詳細

- 2.2.1.1 営業見積の開始

- 2.2.1.2 ビジネス実行確認の決定

- 2.2.1.3 見積の承認

- 2.2.1.4 承認結果

3 Oracle Business Process Composerの概要

- 3.1 Oracle Business Process Composerの概要

- 3.1.1 Oracle Business Process Composerのユース・ケース

- 3.2 アプリケーション開発ライフサイクルの概要

- 3.2.1 ワークフロー: プロジェクト・テンプレートを基にしたプロジェクトの作成

- 3.2.2 ワークフロー: 新規プロジェクトの作成

- 3.2.3 ワークフロー: 実行時でのビジネス・ルールの編集

- 3.3 Oracle Business Process Composerへのサインオン

- 3.3.1 Oracle Business Process Composerにサインオンする方法

- 3.4 Business Process Composerアプリケーションのインタフェースの概要

- 3.4.1 Business Process Composerツールバーの概要

- 3.4.2 Business Process Composerのようこそページの概要

- 3.4.2.1 プロジェクト・ビュー

- 3.4.2.2 プロジェクト・ブラウザ

- 3.4.2.3 コントロール パネル

- 3.4.2.4 検索

- 3.4.3 Business Process Composerのメイン・メニューの概要

第II部 Oracle Business Process Composerの使用

4 BPMプロジェクトの使用

- 4.1 Oracle BPMプロジェクトの概要

- 4.1.1 プロジェクト・コンポーネントおよびリソースの概要

- 4.1.1.1 編集可能なプロジェクト・リソース

- 4.1.1.2 ビジネス・カタログ

- 4.2 Oracle BPMリポジトリの概要

- 4.3 プロジェクトのようこそページの概要

- 4.3.1 「プロジェクト情報」ペインの概要

- 4.3.2 プロジェクト・コンポーネント・ペインの概要

- 4.3.3 「クイックスタート」メニューの概要

- 4.3.4 「最近のアクティビティ」ブラウザの概要

- 4.3.5 「スナップショット」ブラウザの概要

- 4.3.6 「組織」ブラウザの概要

- 4.3.7 Oracle Business Process Composerのエディタの概要

- 4.3.7.1 プロセス・エディタ

- 4.3.7.2 アクティビティ・ガイド・エディタ

- 4.3.7.3 ヒューマン・タスク・エディタ

- 4.3.7.4 ビジネス・ルール・エディタ

- 4.3.7.5 データ・アソシエーション・エディタ

- 4.3.7.6 式エディタ

- 4.3.8 サポートされているブラウザおよびエディタの概要

- 4.3.8.1 プロジェクトおよびプロセスの検証ブラウザ

- 4.3.8.2 ドキュメント・エディタ

- 4.3.8.3 承認ワークフロー・ブラウザ

- 4.4 他のユーザーとのプロジェクトの共有

- 4.4.1 プライベート・プロジェクトとパブリック・プロジェクト

- 4.4.2 編集モード

- 4.4.3 プロジェクト・ロール

- 4.5 プロジェクトの作成および使用

- 4.5.1 プロジェクトのようこそページにアクセスする方法

- 4.5.2 新規プロジェクトを作成する方法

- 4.5.3 アプリケーションのようこそページを使用してプロジェクトを開く方法

- 4.5.4 メイン・メニューを使用してプロジェクトを開く方法

- 4.5.5 他のユーザーとプロジェクトを共有する方法

- 4.5.6 共有プロジェクトを編集する方法

- 4.5.7 プロジェクトへの変更を保存する方法

- 4.5.8 プロジェクトを検証する方法

- 4.5.9 共有プロジェクトへの変更を破棄する方法

- 4.5.10 プロジェクトを閉じる方法

- 4.5.11 プロジェクトに対する変更履歴を表示する方法

- 4.5.12 プロジェクト・プロパティの表示方法と編集方法

- 4.5.13 プロジェクトをお気に入りとしてマークする方法

- 4.6 ガイド付きビジネス・プロセスを使用したプロジェクトのマイルストンの作成

- 4.6.1 ガイド付きビジネス・プロセスの概要

- 4.6.1.1 アクティビティ・ガイドおよびマイルストンの概要

- 4.6.2 アクティビティ・ガイドの構成方法およびプロジェクトのマイルストンの作成方法

- 4.7 プロジェクトで使用するロールの定義

- 4.7.1 プロジェクト・ロールの概要

- 4.7.2 プロジェクト・ロールの使用

5 プロセスおよびプロセス・エディタの使用

- 5.1 ビジネス・プロセスの概要

- 5.2 プロセス・エディタの概要

- 5.2.1 プロセス・エディタ・ツールバーの概要

- 5.2.2 プロセス・エディタ・キャンバスの概要

- 5.2.3 BPMNコンポーネント・パレットの概要

- 5.2.4 ビジネス・カタログの概要

- 5.3 ビジネス・プロセスの使用

- 5.3.1 新しいビジネス・プロセスの作成方法

- 5.3.2 ビジネス・プロセスを開く方法

- 5.3.3 ビジネス・プロセスの削除方法

- 5.3.3.1 ビジネス・プロセスの削除に関する注意事項

- 5.4 フロー要素の使用

- 5.4.1 コンポーネント・パレットからフロー・オブジェクトを追加する方法

- 5.4.2 フロー・オブジェクトの切取り、コピーまたは削除を行う方法

- 5.4.3 プロセスにフロー・オブジェクトを貼り付ける方法

- 5.4.4 プロセスにシーケンス・フローを追加する方法

- 5.4.5 シーケンス・フローを削除する方法

- 5.4.5.1 シーケンス・フローの削除に関する注意事項

- 5.4.6 フロー・オブジェクトのプロパティを編集する方法

- 5.4.7 カスタム・アイコンをフロー・オブジェクトに割り当てる方法

- 5.5 ビジネス・カタログのコンポーネントの使用

- 5.5.1 ビジネス・カタログ・コンポーネントをフロー・オブジェクトに割り当てる方法

- 5.5.2 ビジネス・カタログで新しいヒューマン・タスクを作成する方法

- 5.6 ドラフト・プロセスの使用

- 5.6.1 ドラフト・プロセスの概要

- 5.6.2 フロー・オブジェクトをドラフトとしてマークする方法

- 5.7 プロセスのドキュメント化

- 5.7.1 ドキュメント・エディタの概要

- 5.7.1.1 ドキュメントへのリンクの挿入

- 5.7.2 ドキュメントをプロセスに追加する方法

- 5.7.3 プロセスにノートを追加する方法

- 5.8 プロセス・モデルのインポートおよびエクスポート

- 5.8.1 プロセス・モデルのOracle BPMへのインポート

- 5.8.2 BPMNプロセスのOracle Tutorへのエクスポート

6 Oracle BPMを使用したビジネス・プロセスのモデリング

- 6.1 スイムレーンを使用したプロセスの整理

- 6.1.1 ロールの概要

- 6.1.1.1 コンテキスト内のロール

- 6.1.2 スイムレーンの概要

- 6.1.2.1 コンテキスト内のスイムレーン

- 6.1.3 プロセスにロールおよびスイムレーンを追加する方法

- 6.1.4 スイムレーンのプロパティを編集する方法

- 6.1.5 Business Process ComposerとBPM Studioとの間でのロールの共有

- 6.2 プロセスの開始点および終了点の定義

- 6.2.1 開始イベントと終了イベントの概要

- 6.2.1.1 様々なタイプのプロセスに対する開始イベントの指定

- 6.2.1.2 1プロセスでの複数の開始イベントの使用

- 6.2.1.3 1プロセスでの複数の終了イベントの使用

- 6.2.2 プロセス・インスタンスのトリガー方法の定義

- 6.2.3 None開始イベントの概要

- 6.2.3.1 コンテキスト内のNone開始イベント

- 6.2.3.2 データ・アソシエーション

- 6.2.4 メッセージ開始イベントの概要

- 6.2.4.1 コンテキストにおけるメッセージ開始イベント

- 6.2.4.2 プロセスの入力引数と出力引数の使用

- 6.2.5 シグナル開始イベントの概要

- 6.2.5.1 コンテキストにおけるシグナル開始イベント

- 6.2.6 タイマー開始イベントの概要

- 6.2.7 エラー開始イベントの概要

- 6.2.8 None終了イベントの概要

- 6.2.8.1 コンテキスト内のNone終了イベント

- 6.2.9 エラー終了イベントの概要

- 6.2.10 メッセージ終了イベントの概要

- 6.2.11 強制終了イベントの概要

- 6.3 プロセスへのユーザー相互作用の追加

- 6.3.1 ヒューマン・ワークフローの概要

- 6.3.1.1 ヒューマン・タスクの概要

- 6.3.2 ユーザー・タスクの概要

- 6.3.2.1 コンテキスト内のユーザー・タスク

- 6.3.2.2 対話型アクティビティの使用

- 6.3.2.3 プロジェクト・テンプレートでのユーザー・タスクの使用

- 6.3.3 手動タスクの概要

- 6.3.3.1 コンテキスト内の手動タスク

- 6.3.4 更新タスクの概要

- 6.4 他のプロセスおよびサービスとの通信

- 6.4.1 サービス・タスクの概要

- 6.4.1.1 コンテキスト内のサービス・タスク

- 6.4.1.2 プロジェクト・テンプレートでの再使用可能なサービスの実装

- 6.4.2 通知タスクの概要

- 6.4.3 コール・アクティビティの概要

- 6.4.3.1 再使用可能なプロセス

- 6.4.4 送信タスクの概要

- 6.4.4.1 コンテキスト内の送信タスク

- 6.4.5 受信タスクの概要

- 6.4.5.1 コンテキスト内の受信タスク

- 6.4.5.2 受信タスクによるプロセスの開始

- 6.4.6 送信タスクおよび受信タスクを使用した、プロセス間の通信

- 6.4.7 メッセージ・スロー・イベントの概要

- 6.4.8 メッセージ・キャッチ・イベントの概要

- 6.4.9 メッセージのスロー・イベントおよびキャッチ・イベントを使用した、プロセス間の通信

- 6.5 Oracle Business Rulesを使用したビジネス・ロジックの追加

- 6.5.1 Oracle Business Rulesの概要

- 6.5.2 ビジネス・ルール・タスクの概要

- 6.5.2.1 コンテキスト内のビジネス・ルール・タスク

- 6.6 シーケンス・フローを使用したプロセスの制御

- 6.6.1 シーケンス・フローの概要

- 6.6.2 無条件シーケンス・フローの概要

- 6.6.3 条件シーケンス・フローの概要

- 6.6.4 デフォルト・シーケンス・フローの概要

- 6.7 ゲートウェイを使用したプロセス・フローの制御

- 6.7.1 ゲートウェイの概要

- 6.7.1.1 スプリットとマージのペア

- 6.7.2 排他ゲートウェイの概要

- 6.7.2.1 コンテキスト内の排他ゲートウェイ

- 6.7.2.2 排他ゲートウェイのスプリットとマージ

- 6.7.3 包含ゲートウェイの概要

- 6.7.3.1 包含ゲートウェイのスプリットとマージ

- 6.7.4 パラレル・ゲートウェイの概要

- 6.7.4.1 コンテキスト内のパラレル・ゲートウェイ

- 6.7.4.2 パラレル・ゲートウェイのスプリットとマージ

- 6.7.5 複合ゲートウェイの概要

- 6.7.6 Event-based Gatewayの概要

- 6.7.6.1 Event-based Gatewayを使用したプロセスの開始

- 6.8 中間イベントを使用したプロセス・フローの制御

- 6.8.1 中間イベントの概要

- 6.8.2 タイマー・キャッチ・イベントの概要

- 6.8.3 エラー・キャッチ・イベントの概要

- 6.9 サブプロセスおよびインライン・ハンドラを使用したプロセスの整理

- 6.9.1 サブプロセスの概要

- 6.9.1.1 サブプロセスとシーケンス・フロー

- 6.9.1.2 コンテキスト内のサブプロセス

- 6.9.1.3 ループ・サブプロセス

- 6.9.2 インライン・ハンドラの概要

- 6.10 プロセス内のデータ・オブジェクトの値の変更

- 6.10.1 スクリプト・タスクの概要

- 6.10.1.1 コンテキスト内のスクリプト・タスク

- 6.11 測定マークを使用したプロセス・パフォーマンスの測定

- 6.11.1 プロセスへの測定マークの追加方法

7 プロジェクト・ライフサイクルの使用

- 7.1 プロジェクトのインポートおよびエクスポート

- 7.1.1 ローカル・ファイル・システムからプロジェクトをインポートする方法

- 7.1.2 ローカル・ファイル・システムにプロジェクトをエクスポートする方法

- 7.2 BPMプロジェクト・テンプレートの使用

- 7.2.1 プロジェクト・テンプレートの概要

- 7.2.1.1 編集ポリシーの概要

- 7.2.1.2 プロジェクト・テンプレートでのデータ・オブジェクトと変数の使用の概要

- 7.2.2 プロジェクト・テンプレートに基づいたプロジェクトの作成

- 7.3 プロジェクト・スナップショットの使用

- 7.3.1 プロジェクト・スナップショットの概要

- 7.3.2 プロジェクト・スナップショットの使用

- 7.3.2.1 新規プロジェクト・スナップショットの作成方法

- 7.3.2.2 プロジェクト・スナップショットの内容の表示方法

- 7.3.2.3 プロジェクトのアクティブ・バージョンに戻る方法

- 7.3.2.4 プロジェクト・スナップショットの削除方法

- 7.3.2.5 プロジェクト・スナップショットのエクスポート方法

- 7.3.2.6 プロジェクト・スナップショットのデプロイ方法

- 7.4 プロジェクトの承認ワークフローの構成

- 7.4.1 承認ワークフローの概要

- 7.4.2 承認ワークフローの使用

- 7.4.2.1 プロジェクトの承認ワークフローの構成方法

- 7.5 プロジェクトのデプロイ

- 7.5.1 プロジェクトをデプロイできるユーザー

- 7.5.2 プロジェクトをランタイムにデプロイする方法

- 7.5.3 承認ワークフローを使用してプロジェクトをデプロイする方法

- 7.5.4 デプロイ済のプロジェクトを編集する方法

- 7.5.5 プロジェクトSARファイルの生成方法

- 7.5.6 デプロイメント計画の生成方法

8 Oracle Business Rulesの使用

- 8.1 Oracle Business Rulesの概要

- 8.1.1 ルール条件の概要

- 8.1.2 ルール・アクションの概要

- 8.1.3 デシジョン表の概要

- 8.1.4 ファクトおよびバケットセットの概要

- 8.1.5 ルールセットの概要

- 8.1.6 デシジョン関数の概要

- 8.1.7 デシジョン・ポイントの概要

- 8.1.8 ディクショナリの概要

- 8.2 Business Process Composerルール・エディタの概要

- 8.3 Business Process Composerでのビジネス・ルールの表示および編集

- 8.3.1 ビジネス・ルールを開く方法

- 8.3.2 バケットセットを追加する方法

- 8.3.3 既存のバケットセットを編集する方法

- 8.3.4 ルール・ディクショナリでグローバルを表示する方法

- 8.3.5 ルールセットにルールを追加する方法

- 8.4 実行時のOracle Business Rulesの編集

- 8.5 ビジネス・ルール・タスクへのルールの割当て

第III部 Business Process Composerの拡張機能

9 Business Process Composerの拡張機能

- 9.1 サービスの使用

- 9.1.1 ビジネス・カタログで新しいサービスを作成する方法

- 9.2 会話の定義

- 9.2.1 会話の概要

- 9.2.2 会話の使用

- 9.2.2.1 会話の定義方法

- 9.2.2.2 デフォルトの会話の設定方法

- 9.2.2.3 BPMNフロー・オブジェクトに対する会話の定義方法

- 9.2.2.4 コラボレーション・ダイアグラムの表示方法

10 データ・オブジェクトおよび式の使用

- 10.1 データ・オブジェクトの概要

- 10.1.1 プロセスおよびプロジェクト・データ・オブジェクトの概要

- 10.1.2 新規BPMプロジェクトでのデータ・オブジェクトの使用

- 10.1.3 プロジェクト・テンプレートに基づくプロジェクトでのデータ・オブジェクトの使用

- 10.1.4 データ・アソシエーションの概要

- 10.1.5 データ・アソシエーション・エディタの概要

- 10.2 データ・オブジェクトおよびデータ・アソシエーションの使用

- 10.2.1 データ・オブジェクトの作成方法

- 10.2.2 データ・オブジェクトの削除方法

- 10.2.2.1 データ・オブジェクトの削除に関する注意事項

- 10.2.3 フロー・オブジェクトのデータ・アソシエーションの構成方法

- 10.3 ビジネス・インジケータおよびカウンタ・マークの使用

- 10.3.1 ビジネス・インジケータおよびカウンタの概要

- 10.3.2 カウンタ・マークの概要

- 10.3.3 新しいカウンタ・マークをプロセスに追加する方法

- 10.3.4 カウンタ・マークを削除する方法

- 10.4 式の概要

- 10.4.1 式のタイプ

- 10.4.2 単純式

- 10.4.2.1 演算子タイプ

- 10.4.2.2 演算子の優先順位

- 10.5 プロセスの入力および出力の定義

- 10.5.1 プロセスへの入力引数の定義方法

- 10.5.2 メッセージ開始イベントへのデータの関連付けの定義方法

- 10.5.3 プロセスへの出力引数の定義方法

- 10.5.4 メッセージ終了イベントへのデータの関連付けの定義方法

- 10.6 式エディタの概要

- 10.7 式の使用

- 10.7.1 条件シーケンス・フローの単純式の定義方法

- 10.7.2 データ・アソシエーションの単純式の定義方法

11 ヒューマン・タスクの使用

- 11.1 ヒューマン・タスクの理解

- 11.1.1 ルーティングおよび参加者の概要

- 11.1.1.1 参加者タイプ

- 11.1.1.2 ルーティングのタイプ

- 11.1.1.3 結果

- 11.1.2 参加者割当ての概要

- 11.1.3 期間の概要

- 11.2 ヒューマン・タスク・エディタの概要

- 11.3 ヒューマン・タスクの使用

- 11.3.1 新しいヒューマン・タスクの作成方法

- 11.3.2 ヒューマン・タスクを開く方法

- 11.3.3 ヒューマン・タスクへの参加者の追加方法

- 11.3.4 パラレル・ルーティングの結果の構成方法

- 11.3.5 参加者へのユーザー、グループまたはロールの割当て方法

- 11.3.6 参加者に対する期間の定義方法

- 11.3.7 ヒューマン・タスクに対する期間の定義方法

- 11.3.8 ヒューマン・タスクのタスク・データの作成方法

- 11.3.9 ヒューマン・タスクのプレゼンテーションの指定方法

12 管理タスクの実行

- 12.1 Business Process Composer管理の概要

- 12.2 グローバル・ロールの割当て方法

- 12.3 プロジェクトまたはプロジェクト・テンプレートの削除方法

- 12.4 プロジェクトでの共有の構成方法

- 12.5 共有プロジェクトでのロックの解放方法

- 12.6 プロジェクト・テンプレートのインポート方法

A BPMNフロー・オブジェクト・プロパティのリファレンス

- A.1 共通プロパティ

- A.1.1 基本プロパティ

- A.1.2 実装プロパティ

- A.2 対話型プロパティ

- A.2.1 対話型アクティビティ

- A.2.2 手動タスク

- A.3 アクティビティ・プロパティ

- A.3.1 サービス・タスク

- A.3.1.1 実装プロパティ

- A.3.2 送信タスク

- A.3.2.1 実装プロパティ

- A.3.3 受信タスク

- A.3.3.1 実装プロパティ

- A.3.4 ビジネス・ルール・タスク

- A.3.4.1 実装プロパティ

- A.3.5 スクリプト・タスク

- A.3.6 コール・アクティビティ

- A.3.6.1 実装プロパティ

- A.3.7 サブプロセス

- A.3.7.1 実装プロパティ

- A.3.8 インライン・ハンドラ

- A.4 ゲートウェイ・プロパティ

- A.4.1 排他ゲートウェイ

- A.4.2 包含ゲートウェイ

- A.4.3 Parallel Gateway

- A.4.4 複合ゲートウェイ

- A.4.5 Event-Based Gateway

- A.5 イベント・プロパティ

- A.5.1 None開始イベント

- A.5.2 メッセージ開始イベント

- A.5.2.1 実装プロパティ

- A.5.3 タイマー開始イベント

- A.5.3.1 実装プロパティ

- A.5.4 シグナル開始イベント

- A.5.4.1 実装プロパティ

- A.5.5 エラー開始イベント

- A.5.5.1 実装プロパティ

- A.5.6 Noneキャッチ・イベント

- A.5.7 メッセージ・キャッチ・イベント

- A.5.7.1 実装プロパティ

- A.5.8 タイマー・キャッチ・イベント

- A.5.8.1 実装プロパティ

- A.5.9 エラー・キャッチ・イベント

- A.5.9.1 実装プロパティ

- A.5.10 メッセージ・スロー・イベント

- A.5.10.1 実装プロパティ

- A.5.11 シグナル・スロー・イベント

- A.5.11.1 実装プロパティ

- A.5.12 None終了イベント

- A.5.13 メッセージ終了イベント

- A.5.13.1 実装プロパティ

- A.5.14 シグナル終了イベント

- A.5.14.1 実装プロパティ

- A.5.15 エラー終了イベント

- A.5.15.1 実装プロパティ

- A.5.16 強制終了イベント

- A.6 測定マーク・プロパティ

- A.7 シーケンス・フロー・プロパティ

- A.7.1 シーケンス・フロー・プロパティ

- A.7.2 シーケンス・フロー・プロパティ

- A.7.3 条件シーケンス・フロー

B BPMNにインポートするためのプロセスの準備

- B.1 BPMNプロセスとしてインポートするためのVisioファイルの準備

- B.1.1 VisioUserMap.xmlの更新方法

- B.1.2 BPMN要素の有効な値

- B.1.3 BPMN要素の属性

- B.2 XSL文書を使用したXPDLのインポートのカスタマイズ方法

- B.3 BPMNプロセスとしてインポートするためのXPDLファイルの準備

- B.3.1 ネームスペースの処理

- B.3.2 相対座標の処理

- B.3.3 拡張属性の処理

- B.3.4 redrawConnectionsの処理

- B.3.5 isRelativeObjectCoordinatesの処理

- B.3.6 非表示要素の削除

- B.3.7 方向属性の処理

- B.3.8 サブプロセスのビュー・タイプの指定

- B.3.9 オブジェクト・ピンの処理

- B.3.10 アクティビティの高さと幅の変更

- B.3.11 レーンの高さと幅の変更

- B.3.12 プールの高さと幅の変更

- B.3.13 アクティビティの位置

- B.3.14 欠落要素を含める

- B.3.15 アクティビティの正確性の確認

例一覧

- B-1 VisioUserMap.xmlのエントリの例

- B-2 Extends属性を使用したBPMNオブジェクトへのVisioオブジェクトのマッピング

- B-3 ローカル・ネームスペースの要素のデフォルト・ネームスペースへのコピー

- B-4 redrawConnectionsを処理する場合のExtendedAttributeの設定

- B-5 ExtendedAttributes要素にExtendedAttributeを含める

- B-6 非表示要素の削除

- B-7 非表示アクティビティの削除

- B-8 プールの方向の設定

- B-9 サブフロー要素へのビュー属性の追加

- B-10 BlockActivity要素へのビュー属性の追加

- B-11 オブジェクト・ピンの位置の再計算

- B-12 高さと幅が定義されていないイベント要素

- B-13 アクティビティの高さと幅の設定

- B-14 TaskService要素をタスク要素の子として含める

- B-15 アクティビティの正確性の確認

図一覧

- 1-1 Oracle BPM Suite

- 1-2 Oracle BPMアプリケーション開発ライフサイクルのステージ

- 2-1 営業見積サンプル

- 2-2 営業見積の開始

- 2-3 ビジネス実行確認の決定

- 2-4 見積の承認

- 2-5 承認結果

- 3-1 BPM Studioを使用したプロジェクト・テンプレートの作成

- 3-2 Oracle Business Process Composerを使用した新規プロジェクトの作成

- 3-3 Oracle Business Process Composerを使用した実行時でのOracle Business Rulesの編集

- 3-4 Oracle Business Process Composerサインオン画面

- 3-5 Oracle Business Process Composerアプリケーションのユーザー・インタフェース

- 3-6 Business Process Composerツールバー

- 3-7 プロジェクト・ブラウザ

- 3-8 プロジェクト・ブラウザのコントロール・パネル

- 3-9 アプリケーションのメイン・メニュー

- 4-1 BPMプロジェクトのようこそページ

- 4-2 「プロジェクト情報」ペイン

- 4-3 プロジェクト・コンポーネント・ペイン

- 4-4 「新規プロジェクト」ダイアログ

- 4-5 プロジェクト・エラー・ブラウザ

- 5-1 プロセス・エディタ・ウィンドウ

- 5-2 コンポーネント・パレット

- 5-3 単一オブジェクト入力モード

- 5-4 ビジネス・カタログ

- 5-5 ドキュメント・エディタ

- 6-1 2つのスイムレーンにスプリットされた、単純なビジネス・プロセス

- 6-2 1プロセスでの複数の開始イベントの使用

- 6-3 None開始イベント

- 6-4 営業見積サンプル・プロセス内のNone開始イベント

- 6-5 メッセージ開始イベント

- 6-6 営業見積サンプル・プロセス内のメッセージ開始イベント

- 6-7 シグナル開始イベント

- 6-8 タイマー開始イベント

- 6-9 エラー開始イベント

- 6-10 None終了イベント

- 6-11 営業見積サンプル内のNone終了イベント

- 6-12 エラー終了イベント

- 6-13 メッセージ終了イベント

- 6-14 ユーザー・タスク

- 6-15 見積入力ユーザー・タスク

- 6-16 手動タスク

- 6-17 手動タスクの例

- 6-18 更新タスク

- 6-19 サービス・タスク

- 6-20 営業見積サンプル・プロセス内のサービス・タスク

- 6-21 インスタント・メッセージ通知タスク

- 6-22 電子メール通知タスク

- 6-23 SMS通知タスク

- 6-24 ボイスメール通知タスク

- 6-25 ユーザー通知タスク

- 6-26 コール・アクティビティ

- 6-27 送信タスク

- 6-28 受信タスク

- 6-29 送信タスクおよび受信タスクを使用した、プロセス間の通信

- 6-30 メッセージ・スロー・イベント

- 6-31 メッセージ・キャッチ・イベント

- 6-32 プロセス間でのメッセージのスロー・イベントおよびキャッチ・イベントの使用

- 6-33 ビジネス・ルール・タスク

- 6-34 営業見積サンプル・プロセス内のビジネス・ルール・タスク

- 6-35 無条件シーケンス・フロー

- 6-36 条件シーケンス・フローとデフォルト・シーケンス・フロー

- 6-37 排他ゲートウェイ

- 6-38 営業見積サンプル・プロセス内の排他ゲートウェイ

- 6-39 包含ゲートウェイ(スプリット)

- 6-40 包含ゲートウェイ(マージ)

- 6-41 パラレル・ゲートウェイ(スプリット)

- 6-42 パラレル・ゲートウェイ(マージ)

- 6-43 パラレル・ゲートウェイの例

- 6-44 複合ゲートウェイ(スプリット)

- 6-45 複合ゲートウェイ(マージ)

- 6-46 イベントベース・ゲートウェイ

- 6-47 タイマー・キャッチ・イベント

- 6-48 サービス・タスクにおける境界イベントとしてのエラー・キャッチ・イベント

- 6-49 閉じられたサブプロセスの例

- 6-50 開かれたサブプロセスの例

- 6-51 サブプロセスの例

- 6-52 スクリプト・タスク

- 6-53 営業見積サンプル内のスクリプト・タスク

- 6-54 ビジネス・インジケータの設定スクリプト・タスクによって使用されるデータ・アソシエーション

- 6-55 割引プロジェクト変数の値の変更に使用される式

- 7-1 Application Composerのメイン・メニュー

- 7-2 「プロジェクトのデプロイ」ダイアログ

- 8-1 Oracle Business Rulesエディタの「グローバル」タブ

- 8-2 Oracle Business Rulesエディタの「バケットセット」タブ

- 8-3 Oracle Business Rulesエディタの「ルールセット」タブ

- 10-1 基本データ・オブジェクトと複合データ・オブジェクトの関係

- 10-2 プロセスおよびプロジェクト・データ・オブジェクトのスコープ

- 10-3 フロー・オブジェクトと実装と外部のサービスまたはプロセスの関係

- 10-4 プロセス間のデータ・アソシエーション

- 10-5 データ・アソシエーション・エディタ

- 10-6 Oracle Business Process Composerの式エディタ

- 11-1 単一の参加者の基本的なルーティング

- 11-2 タスクの順次ルーティングの例

- 11-3 タスクのパラレル・ルーティングの例

- 11-4 ヒューマン・タスク・エディタ

- 11-5 投票結果エディタ

表一覧

- 1-1 Oracle BPMのユーザー・ペルソナ

- 3-1 Business Process Composerアプリケーション・ツールバー

- 3-2 プロジェクト・ビュー

- 3-3 アプリケーションのメイン・メニュー項目

- 4-1 編集可能なビジネス・カタログ・コンポーネント

- 5-1 ビジネス・プロセスのタイプ

- 5-2 プロセス・エディタのメニュー

- 6-1 各プロセス・タイプの開始イベントおよび終了イベント

- 6-2 対話型アクティビティ

- 7-1 プロセス・レベルの編集ポリシー

- 7-2 コンポーネント・レベルの編集ポリシー

- 7-3 承認ルーティング

- 7-4 「プロジェクトのデプロイ」ダイアログのプロパティ

- 10-1 シンプル・データ・オブジェクト

- 10-2 データ・アソシエーションを受け入れるフロー・オブジェクト

- 10-3 データ・アソシエーション・エディタのユーザー・インタフェース

- 10-4 算術演算子

- 10-5 単項演算子

- 10-6 等号演算子と関係演算子

- 10-7 条件演算子

- 10-8 式エディタのユーザー・インタフェース

- A-1 アクティビティおよびゲートウェイの基本プロパティ

- A-2 実装プロパティ

- A-3 対話型アクティビティ - 共通プロパティ

- A-4 サービス・タスクのプロパティ(「プロセス・コール」を選択した場合)

- A-5 サービス・タスクのプロパティ(「サービス・コール」を選択した場合)

- A-6 送信タスクのプロパティ(「インタフェースの定義」を選択した場合)

- A-7 送信タスクのプロパティ(「インタフェースの使用」を選択した場合)

- A-8 送信タスクのプロパティ(「プロセス・コール」を選択した場合)

- A-9 送信タスクのプロパティ(「サービス・コール」を選択した場合)

- A-10 受信タスク(「インタフェースの定義」を選択した場合)

- A-11 受信タスクのプロパティ(「インタフェースの使用」を選択した場合)

- A-12 受信タスクのプロパティ(「サービス・コール」を選択した場合)

- A-13 ビジネス・ルール・タスクのプロパティ

- A-14 コール・アクティビティのプロパティ

- A-15 サブプロセスのプロパティ

- A-16 排他ゲートウェイのプロパティ

- A-17 複合ゲートウェイのプロパティ

- A-18 Event-Based Gatewayのプロパティ

- A-19 メッセージ開始のプロパティ

- A-20 タイマー開始イベントのプロパティ

- A-21 シグナル開始イベントのプロパティ

- A-22 エラー開始イベントのプロパティ

- A-23 メッセージ・キャッチのプロパティ

- A-24 メッセージ・キャッチのプロパティ(「開始」を選択した場合)

- A-25 メッセージ・キャッチのプロパティ(「続行」を選択した場合)

- A-26 タイマー・キャッチ・イベントのプロパティ

- A-27 エラー・キャッチ・イベントのプロパティ

- A-28 メッセージ・スロー・イベントのプロパティ

- A-29 メッセージ・スロー・イベントのプロパティ(「開始」を選択した場合)

- A-30 メッセージ・スロー・イベントのプロパティ(「続行」を選択した場合)

- A-31 シグナル・スロー・イベントのプロパティ

- A-32 メッセージ終了のプロパティ

- A-33 シグナル終了イベントのプロパティ

- A-34 エラー終了イベントのプロパティ

- A-35 測定マーク・プロパティ

- A-36 デフォルト・シーケンス・フローのプロパティ

- A-37 標準シーケンス・フローのプロパティ

- A-38 条件シーケンス・フローのプロパティ

- B-1 タスクの属性と値

- B-2 サブプロセスの属性と値

- B-3 イベントの属性と値

- B-4 ゲートウェイの属性と値

- B-5 シーケンス・フローの属性と値

- B-6 アソシエーションの属性と値

- B-7 プールの属性と値

Oracle® Fusion Middleware

Oracle Business Process Management Business Process Composerユーザーズ・ガイド

11g リリース1(11.1.1.6.2)

B61410-05(原本部品番号:E15177-08)

2012年3月

Oracle Business Process Composerの使用に関心のあるプロセス・アナリストおよびプロセス開発者向けの情報を提供します。

Oracle Fusion Middleware Oracle Business Process Management Business Process Composerユーザーズ・ガイド , 11g リリース1 (11.1.1.6.2)

B61410-05

Copyright © 2001, 2012, Oracle and/or its affiliates.All rights reserved.

原本著者:  Steven Leslie

このソフトウェアおよび関連ドキュメントの使用と開示は、ライセンス契約の制約条件に従うものとし、知的財産に関する法律により保護されています。ライセンス契約で明示的に許諾されている場合もしくは法律によって認められている場合を除き、形式、手段に関係なく、いかなる部分も使用、複写、複製、翻訳、放送、修正、ライセンス供与、送信、配布、発表、実行、公開または表示することはできません。このソフトウェアのリバース・エンジニアリング、逆アセンブル、逆コンパイルは互換性のために法律によって規定されている場合を除き、禁止されています。

ここに記載された情報は予告なしに変更される場合があります。また、誤りが無いことの保証はいたしかねます。誤りを見つけた場合は、オラクル社までご連絡ください。

このソフトウェアまたは関連ドキュメントが、米国政府機関もしくは米国政府機関に代わってこのソフトウェアまたは関連ドキュメントをライセンスされた者に提供される場合は、次のNoticeが適用されます。

U.S. GOVERNMENT RIGHTS Programs, software, databases, and related documentation and technical data delivered to U.S. Government customers are "commercial computer software" or "commercial technical data" pursuant to the applicable Federal Acquisition Regulation and agency-specific supplemental regulations.As such, the use, duplication, disclosure, modification, and adaptation shall be subject to the restrictions and license terms set forth in the applicable Government contract, and, to the extent applicable by the terms of the Government contract, the additional rights set forth in FAR 52.227-19, Commercial Computer Software License (December 2007).Oracle America, Inc., 500 Oracle Parkway, Redwood City, CA 94065.

このソフトウェアまたはハードウェアは様々な情報管理アプリケーションでの一般的な使用のために開発されたものです。このソフトウェアまたはハードウェアは、危険が伴うアプリケーション(人的傷害を発生させる可能性があるアプリケーションを含む)への用途を目的として開発されていません。このソフトウェアまたはハードウェアを危険が伴うアプリケーションで使用する際、このソフトウェアまたはハードウェアを安全に使用するために、適切な安全装置、バックアップ、冗長性(redundancy)、その他の対策を講じることは使用者の責任となります。このソフトウェアまたはハードウェアを危険が伴うアプリケーションで使用したことに起因して損害が発生しても、オラクル社およびその関連会社は一切の責任を負いかねます。

OracleおよびJavaはOracle およびその関連企業の登録商標です。その他の名称は、それぞれの所有者の商標または登録商標です。

Intel、Intel Xeonは、Intel Corporationの商標または登録商標です。すべてのSPARCの商標はライセンスをもとに使用し、SPARC International, Inc.の商標または登録商標です。AMD、Opteron、AMDロゴ、AMD Opteronロゴは、Advanced Micro Devices, Inc.の商標または登録商標です。UNIXはThe Open Groupの登録商標です。

このソフトウェアまたはハードウェアおよびドキュメントは、第三者のコンテンツ、製品、サービスへのアクセス、あるいはそれらに関する情報を提供することがあります。オラクル社およびその関連会社は、第三者のコンテンツ、製品、サービスに関して一切の責任を負わず、いかなる保証もいたしません。オラクル社およびその関連会社は、第三者のコンテンツ、製品、サービスへのアクセスまたは使用によって損失、費用、あるいは損害が発生しても、一切の責任を負いかねます。

はじめに

このガイドでは、Oracle Business Process Composerアプリケーションについて説明します。

対象読者

このガイドは、Oracle Business Process Management Suiteでプロセスベースのアプリケーションを作成する場合に使用されるビジネス・プロセスおよびOracle BPMプロジェクトを、Business Process Composerアプリケーションを使用して作成および編集するプロセス・アナリストを対象にしています。

また、このガイドは、Business Process Composerを使用する必要があるプロセス開発者も対象にしています。これらのユーザー・ペルソナの詳細は、1.2項「Oracle BPMのユーザー・ペルソナ」を参照してください。

このマニュアルは、ビジネス・プロセス設計の基本知識があり、Business Process Management Notation (BPMN) 2.0についてよく理解していることを前提としています。

ドキュメントのアクセシビリティについて

オラクル社のアクセシビリティへの取組みの詳細は、Oracle Accessibility ProgramのWebサイトhttp://www.oracle.com/pls/topic/lookup?ctx=acc&id=docaccを参照してください。

Oracleサポートへのアクセス

Oracleのお客様は、My Oracle Supportにアクセスして電子サポートを受けることができます。詳細は、http://www.oracle.com/pls/topic/lookup?ctx=acc&id=infoまたはhttp://www.oracle.com/pls/topic/lookup?ctx=acc&id=trs (聴覚障害者向け)を参照してください。

関連ドキュメント

詳細は、オラクル社の次の資料を参照してください:

Oracle Business Process Management

Oracle BPM Suiteの詳細は、次の資料を参照してください。

- Oracle BPMモデリングおよび実装ガイド

- Oracle Fusion Middleware Business Process Managementのユーザーズ・ガイド

Oracle SOAおよびBPM Suiteのインストレーションおよび管理

- Oracle Fusion Middleware Oracle SOA Suiteインストレーション・ガイド

- Oracle Fusion Middleware Oracle SOA SuiteおよびOracle BPM Suiteのための管理者ガイド

- Oracle Fusion Middleware高可用性ガイド

表記規則

このマニュアルでは次の表記規則を使用します。

表記規則

意味

.
.
.

例に含まれる垂直の省略記号は、直接関係のない情報が省略されていることを意味します。

. . .

文またはコマンド内の水平の省略記号は、例に直接関係のない文またはコマンドの一部が省略されていることを意味します。

太字テキスト

テキスト内の太字は、テキスト、用語集またはその両方で定義されている用語を表します。

< >

ユーザーが指定する名前は山カッコで囲みます。

[ ]

大カッコは、オプションの句を囲みます。そこから1つ選択しても、まったく選択しなくてもかまいません。

このガイドでのリリース11.1.1.6.xの新機能

リリース11.1.1.6.xについて、このガイドの一部が更新されています。次の表に、追加または変更された部分をリストします。11.1.1.6.xの最初のリリースで使用できない機能があった場合は、最後の列に更新が含まれるドキュメントのリリースが示されています。

既知の問題のリスト(リリース・ノート)については、http://www.oracle.com/technetwork/middleware/docs/soa-aiafp-knownissuesindex-364630.htmlの「Known Issues for Oracle SOA Products and Oracle AIA Foundation Pack」を参照してください。

項

変更

11.1.1.6.0

11.1.1.6.1

第4章「BPMプロジェクトの使用」

4.4項「他のユーザーとのプロジェクトの共有」

BPMプロジェクトの共有およびユーザーがプロジェクトの表示、編集またはデプロイするBusiness Process Composerの決定のための新しいセキュリティ・モデルについての改訂。

X

4.5.5項「他のユーザーとプロジェクトを共有する方法」

他のBusiness Process ComposerまたはOracle BPM StudioユーザーとのBPMプロジェクトの共有の手順についての追加。

X

4.5.11項「プロジェクトに対する変更履歴を表示する方法」

BPMプロジェクトへの変更履歴の表示方法についての変更。

X

4.5.12項「プロジェクト・プロパティの表示方法と編集方法」

BPMプロジェクト・プロパティの表示および編集についての追加。

X

4.5.13項「プロジェクトをお気に入りとしてマークする方法」

プロジェクトをお気に入りとしてマークする方法についての追加。

X

4.7.1項「プロジェクト・ロールの概要」

プロジェクト・ロールの作成および使用方法についての追加。プロジェクト・ロールは、ビジネス・プロセス内で実行される作業の実行責任者をモデリングするために使用されます。

X

第5章「プロセスおよびプロセス・エディタの使用」

5.2.3項「BPMNコンポーネント・パレットの概要」

BPMNコンポーネント・パレットについての追加。

X

5.5項「ビジネス・カタログのコンポーネントの使用」

BPMNコンポーネント・カタログの使用の手順についての改訂。

X

5.6項「ドラフト・プロセスの使用」

ドラフト・プロセスの使用方法についての追加。

X

5.8項「プロセス・モデルのインポートおよびエクスポート」

プロセス・モデルのインポートおよびBPMNへの変換方法についての改訂。

X

第7章「BPAリポジトリからのBPMNプロセスのインポート」

第7章「プロジェクト・ライフサイクルの使用」

プロジェクトのライフ・サイクルに関する拡張機能のドキュメント化。プロジェクトのインポートとエクスポート、プロジェクト・テンプレートの使用およびプロジェクトのデプロイについての項が含まれます。

X

7.5項「プロジェクトのデプロイ」

デプロイメント・プランの生成方法についての追加。この項は、プロジェクト・デプロイメントへの変更も反映して改訂されています。

X

第9章「Business Process Composerの拡張機能」

第9章「Business Process Composerの拡張機能」

主にプロセス開発者によって使用されるBusiness Process Composer機能についてのドキュメント化。

X

第9章「Business Process Composerの拡張機能」

主にプロセス開発者によって使用されるBusiness Process Composer機能についてのドキュメント化。

X

第12章「管理タスクの実行」

12.2項「グローバル・ロールの割当て方法」

BPMリポジトリを使用して共有するプロジェクトのセキュリティ・モデルへの変更の反映についての改訂。

X

付録B「BPMにインポートするためのプロセスの準備」

付録B「BPMNにインポートするためのプロセスの準備」

BPMにプロセスをインポートするときのベスト・プラクティスについての追加。この付録では、BPMNへ変換するためのVisioおよびXPDLプロセス・フローの準備について説明します。

X

第I部

Oracle Business Process Composerの概要

この部では、Oracle Business Process Composerアプリケーションの通常の操作方法、Oracle BPM Suiteの概要、およびプロセス開発ライフサイクル全体におけるBusiness Process Composerの使用方法について説明します。

この部には、次の章が含まれます。

- 第1章「Oracle Business Process Management Suiteの概要」

- 第2章「ビジネス・プロセス設計の概要」

- 第3章「Oracle Business Process Composerの概要」

1 Oracle Business Process Management Suiteの概要

この章では、Oracle Business Process Management (BPM) Suiteの概要を説明します。

この章の内容は次のとおりです。

- 1.1項「Oracle Business Process Management Suiteの概要」

- 1.2項「Oracle BPMのユーザー・ペルソナ」

- 1.3項「Oracle BPM Suiteのコンポーネント」

- 1.4項「Oracle Business Process Analysis(BPA) Suite」

- 1.5項「アプリケーション開発ライフサイクルの概要」

- 1.6項「Oracle BPMのユース・ケース」

1.1 Oracle Business Process Management Suiteの概要

Oracle BPM Suiteは、ビジネス・プロセスを軸として展開するビジネス・アプリケーションを開発、管理および使用するための統合環境を提供します。

Oracle BPM Suiteでは、次の機能が用意されています。

- ユーザーフレンドリなアプリケーションにより、標準に基づくプロセス・モデルを作成できます。プロセス開発者とプロセス・アナリストがコラボレーションできるようにします。Oracle BPMでは、BPMN 2.0およびBPELを、モデリングおよび実装からランタイムおよび監視に到るまでサポートします。

- プロセス・アナリストとプロセス所有者が、ビジネス・プロセスとOracle Business Rulesをカスタマイズできるようにします。

- ビジネス・プロセスの作成、Oracle Business Rulesの編集、および事前定義コンポーネントを使用したタスクのカスタマイズを行える、Webベースのアプリケーションが提供されます。

- 柔軟な、非構造化プロセスを組み込めるよう、ビジネス・プロセス管理を拡張します。動的タスクが追加され、宣言パターンおよびルール駆動型フロー決定を使用する承認ルーティングがサポートされます。

- 生産性を向上し、革新を推進するProcess Spacesとの統合により、コラボレーションを実現します。

- プロセス・ベースのアプリケーション開発のためのエンドツーエンド要件に対応することで、アプリケーション開発ライフサイクルの様々なステージを統合します。Oracle BPMでは設計、実装、ランタイムおよび監視の各ステージを統合します。Oracle BPMを使用すると、様々なペルソナがアプリケーション・ライフサイクルの全ステージに参加できるようになります。
Oracle BPM Suiteに定義されたユーザー・ペルソナの詳細は、1.2項「Oracle BPMのユーザー・ペルソナ」を参照してください。

Oracle BPM Suiteでは、設計時および実装からランタイムおよびアプリケーション管理まで、アプリケーション開発ライフサイクルの全ステージをシームレスに統合します。

Oracle BPM SuiteはOracle SOA Suiteの上位レイヤーになり、次を含む製品コンポーネントの多くを共有しています。

- ビジネス・ルール

- ヒューマン・ワークフロー

- 統合のためのOracleアダプタ・フレームワーク

図1-1は、Oracle BPM Suiteの概要レベルのアーキテクチャ・ビューを示しています。

図1-1 Oracle BPM Suite

「図1-1 Oracle BPM Suite」の説明

図1-1に示されているそれぞれのコンポーネントの詳細は、1.3項「Oracle BPM Suiteのコンポーネント」を参照してください。

1.2 Oracle BPMのユーザー・ペルソナ

アプリケーション開発ライフサイクルの様々なステージで、様々なタイプのユーザーからの相互作用が必要になります。表1-1では、Oracle BPM Suiteの一般的なユーザーとその役割について説明します。これらのユーザーが作業を行うために使用するOracle BPMのコンポーネントを示します。

これらのユーザー・ペルソナは、このガイド内の例として使用されています。

表1-1 Oracle BPMのユーザー・ペルソナ

ユーザー・ペルソナ

説明

プロセス・アナリスト

プロセス・アナリストの役割は、ビジネス・プロセスの最初のフローを作成し、そのステップをドキュメント化することです。これには、KPIおよびビジネス・プロセスのルーティング・アーティファクトを定義する概要レベルのルールを特定し、それらを定義することも含まれます。また、このペルソナがROIの計算と予測をシミュレーションする場合もあります。

プロセス・アナリストは、通常はOracle Business Process Analysis (BPA) SuiteまたはBusiness Process Composerを使用してプロセス・モデルを作成します。また、Oracle BPM Studio内部のプロセス・アナリスト・ロールを使用する場合もあります。

プロセス開発者

プロセス開発者の役割は、プロセス・アナリストが作成したプロセス・モデルを実装することです。プロセスの各ステップに実装が必要です。プロセス開発者には、データベースなどのバックエンド・アプリケーションとビジネス・プロセスを統合する役割もあります。

プロセス開発者は、通常はOracle BPM Studioを使用してビジネス・アプリケーションのコンポーネントのモデリングと実装を行います。また、基本的なプロセスをモデリングするためにBusiness Process Composerを使用することもあります。

ビジネス管理者

ビジネス管理者の役割は、BPMインフラストラクチャの管理です。一般的なアクティビティには、BPM環境のインストールとセットアップ、ビジネス・プロセスをホストするBPMエンジンの全般的な管理などが含まれます。

このペルソナは、ユーザー、グループ、組織単位、カレンダや休日など、組織構成資産を管理する役割を委任される場合もあります。

ビジネス管理者が主に使用するツールは、Oracle Enterprise ManagerおよびAntなどの自動化ツールです。また、ビジネス管理者は、組織単位、ロール割当ての管理、およびワークフロー拡張ルーティング宣言の作成などのその他のアクティビティを管理するために、プロセス・ワークスペースも使用します。

プロセス所有者

プロセス所有者の役割は、デプロイされたビジネス・プロセスを制御および管理することです。ビジネス・プロセスの実行全体を監督する役割もあります。管理対象のビジネス・プロセスの現在の状態を把握するために、ダッシュボードなどのメトリック分析ツールも使用します。

プロセス所有者は通常、プロセス・ワークスペースを使用します。また、Oracle Business Rulesを編集してプロセスの動作を変更するために、Business Process Composerも使用します。メトリック・ダッシュボードを表示するために、Oracle BAMコンソールを使用する場合もあります。

プロセス参加者

プロセス参加者とは、Oracle BPM Suiteで作成されたビジネス・アプリケーションを使用する人々です。

プロセス参加者は通常、プロセス・ワークスペースまたはプロセス・スペースを使用します。

1.3 Oracle BPM Suiteのコンポーネント

この項では、Oracle BPM Suiteの主要コンポーネントの概要を説明します。これらのコンポーネントがアプリケーション開発プロセス内でどのように相互作用するかについては、1.5項「アプリケーション開発ライフサイクルの概要」を参照してください。

1.3.1 プロセス・モデリングおよび実装

この項では、ビジネス・プロセスおよびプロセスベースのビジネス・アプリケーションをモデリングおよび実装するために使用するアプリケーションとコンポーネントについて説明します。

Oracle BPM Suiteでは、ビジネス・プロセスをモデリングおよび実装するための2つのプライマリ・アプリケーションが用意されています。

注意:

Oracle BPMでは、Oracle Business Process Analysis (BPA) Suiteを使用して作成したビジネス・プロセスの統合も可能です。詳細は、1.4項「Oracle Business Process Analysis(BPA)Suite」を参照してください。

1.3.1.1 Oracle BPM Studio

Oracle BPM Studioは、プロセス・アナリストがビジネス・プロセス・モデルを作成し、プロセス・シミュレーションを実行するユーザーフレンドリな環境を提供するOracle BPM Suiteのコンポーネントです。Oracle BPM Studioでは、Business Process Management Notation (BPMN) 2.0をサポートしています。

Oracle BPM Studioでは、プロセス開発者が作業用のプロセスベース・アプリケーションを作成できます。このアプリケーションは、SOAコンポジット・アプリケーションとして統合されるOracle BPMプロジェクトです。

Oracle BPM Studioを使用すると、ビジネス・プロセスを、アダプタ、ヒューマン・ワークフローおよびビジネス・ルールなどの他のOracleコンポーネントと一緒に実装できます。実装したプロセスは、Oracle BPMランタイムにデプロイできます。

Oracle BPM StudioはOracle JDeveloper IDEの一部に含まれます。Oracle BPM Studioを使用すると、ITユーザーは、単一の統合されたツールを使用して、ビジネス・プロセスをモデリングおよび編集し、必要なIT要素を実装し、アプリケーションをランタイム環境にデプロイできます。

Oracle BPM Studioはまた、ビジネス・ユーザーがプロセス設計の関連機能のみを表示する簡易バージョンのOracle JDeveloperを使用できるようにするBPMロールも提供します。

詳細は、Oracle BPMモデリングおよび実装ガイドを参照してください。

1.3.1.2 Oracle Business Process Composer

Oracle Business Process Composerは、ビジネス・ユーザーがプロセスの開発者や設計者と共同作業できるようにするWebベースのアプリケーションです。Oracle BPM Studioで作成されたプロセスやプロセス・テンプレートを編集するための使いやすい環境を提供しています。

プロセス開発者はOracle BPM Studio内のサービス、タスクおよびルールなど、事前に構成されたコンポーネントのカタログを作成できます。このカタログは、プロセス・アナリストがOracle Business Process Composerを使用して新規プロジェクトを作成する際に使用できるプロジェクト・テンプレートに組み込むことができます。

プロセス・アナリストは、プロジェクト・テンプレートに基づいてプロジェクトを作成した後で、ビジネス・カタログ要素を取り込み、プロジェクト・テンプレートで定義されている他の必要な編集を行います。その後、プロセス・アナリストはプロジェクトをOracle BPMランタイムにデプロイできます。

また、Business Process Composerでは、プロセス・アナリストが新規プロジェクトを作成することもできます。これはプロジェクトの最初のバージョンであり、Oracle BPM Studioを使用するプロセス開発者が実装の詳細と改良を加えるために使用します。

さらに、Business Process Composerでは、ランタイムでOracle Business Rulesを編集することもできます。これは、ポリシーがビジネス・プロセスより頻繁に更新される傾向があるため重要です。

詳細は、第3章「Oracle Business Process Composerの概要」を参照してください。

1.3.1.3 Oracle Metadata Service(MDS)リポジトリ

Oracle Metadata Service (MDS)では、Oracle Fusion Middleware環境内にデプロイされたアプリケーションのデータを保存するリポジトリが提供されます。Oracle BPMではこのリポジトリを使用し、デプロイされたアプリケーションの情報が保存されます。

Oracle BPMでは、個別のMDSパーティションを使用して、プロセス・アナリストとプロセス開発者の間でプロジェクトとプロジェクト・テンプレートを共有します。図1-1「Oracle BPM Suite」では、MDSリポジトリがすべてのOracle BPMアーキテクチャ内でどのように適合しているかを示します。

1.3.1.4 Oracle BPMプロジェクト

Oracle BPMプロジェクトは、プロセスベースのビジネス・アプリケーションを作成するためのビジネス・プロセスと関連リソースのコンテナです。Oracle BPMプロジェクトには、次のものを組み込むことができます。

- 組織データ

- アクティビティ・ガイド

- BPMNプロセス・モデル

- ビジネス・カタログ

- シミュレーション・モデル

- その他のリソース

Oracle BPMプロジェクトはSOAコンポジット・アプリケーションとして実行時にデプロイされます。プロジェクトとSOAコンポジット・アプリケーションの使用の詳細は、次のドキュメントを参照してください。

- Oracle BPM モデリングおよび実装ガイドのプロジェクトおよびプロジェクト・テンプレートの使用

- Oracle Business Process Management用のOracle Fusion Middleware Business Process Composerユーザーズ・ガイドのプロジェクトおよびプロジェクト・テンプレートの使用

- Oracle Fusion Middleware Oracle SOA Suite開発者ガイド

1.3.2 Oracle BPMランタイム・コンポーネント

Oracle BPMランタイムは、デプロイされているアプリケーションを制御します。Oracle BPMランタイムには次のコンポーネントが含まれています。

1.3.2.1 Oracle BPMエンジン

Oracle BPMエンジンは、ビジネス・プロセスを実行するためのランタイム環境を提供します。BPMNプロセスとBPELプロセスの両方のネイティブ・サポートも提供します。

BPMエンジンは3つの独立したコンポーネントで構成されます。

- BPMNサービス・エンジン
BPMNエンジンはBPMNプロセスを実行するための環境を提供します。

- BPELサービス・エンジン
BPELエンジンはBPELプロセスを実行するための環境を提供します。

- プロセス・コア
BPMNエンジンとBPELエンジンで共有されるエンジン機能を提供します。プロセス・コアによって実行される主な機能は次のとおりです。

- セキュリティの管理

- 監査証跡の生成

- サービスの起動

- 永続性の管理

1.3.2.2 Oracle Human Workflow

多くのエンドツーエンドのビジネス・プロセスでは、プロセスとユーザーとの相互作用が必要です。承認、例外管理、ビジネス・プロセスを進めるために必要なアクティビティの実行などにユーザーの相互作用が必要となります。ヒューマン・ワークフロー・サービスは、次のような機能を提供します。

- ユーザー、グループまたはアプリケーション・ロールへのタスク・ルーティング

- タスクが適切なタイミングで実行されることを保証するために必要な期限、エスカレーション、通知およびその他の機能

- ワークスペースやポータルなどの様々なメカニズムを介してエンド・ユーザーにタスクを表示するためのタスク・フォーム

- エンド・ユーザーが各自のタスクを実行するときの生産性を向上するために必要な組織、フィルタ、優先順位付け、ディスパッチ・ルールおよびその他の機能

1.3.2.3 Oracle Business Rules

Oracle Business Rulesは、ランタイムの動的決定を可能にするOracle SOA Suiteのコンポーネントで、特に規制や競争圧力に対してアプリケーションを迅速に適合させることができます。この高いアジリティを実現できる理由は、Oracle Business Rulesを使用するプロセス・アナリストが、アプリケーション・コードとは別のところでビジネス・ルールを作成および変更できる点にあります。Oracle Business Rulesを使用することにより、プロセス・アナリストはビジネス・プロセスを停止することなく、ビジネス・ルールを変更できます。また、ビジネス・ルールを外部に置くことで、プロセス・アナリストが関与しなくても、プロセス・アナリストがビジネス・ルールを直接管理できます。

1.3.2.4 Oracle WebLogic Application Server

Oracle WebLogic Serverは、J2EE準拠のアプリケーションを作成および実行するプラットフォームとなるアプリケーション・サーバーです。

1.3.2.5 Oracle Enterprise Manager

Oracle Enterprise Managerは、Oracle SOA Suiteで実行するアプリケーションをシステム管理者が制御および管理できるようにするWebベースのアプリケーションです。Enterprise Managerを使用すると、ビジネス管理者がビジネス・アプリケーションとプロセス・インスタンスを構成および管理できます。

1.3.3 Oracle BPM Suiteプロセス参加者アプリケーション

以降の項では、プロセス参加者が日常業務を実行するために使用するOracle BPM Suiteのコンポーネントについて説明します。これらのアプリケーションでは、プロセス参加者がOracle BPMランタイムで管理される実行中のビジネス・アプリケーションと相互作用できます。

1.3.3.1 Oracle Business Process Management Workspace(プロセス・ワークスペース)

プロセス・ワークスペースを使用すると、プロセス参加者はOracle BPMを使用して作成したアプリケーションと相互作用できます。プロセス・ワークスペースのユーザー・インタフェースには、次のタブがあります。

- タスク: このページを使用して、プロセス参加者は自身に割り当てられたタスクを参照し、使用できます。

- プロセス・トラッキング: このページを使用して、プロセス参加者は実行中のプロセス・インスタンスを参照できます。

- 標準ダッシュボード: このページでは、プロセス・パフォーマンス、タスク・パフォーマンスおよび負荷を監視するための、すぐに使用できるダッシュボードが提供されます。

- カスタム・ダッシュボード: このページを使用して、プロセス参加者は、プロセス・インスタンスによって生成された測定データに基づき、カスタム・ダッシュボードを定義し、使用できます。

また、プロセス・ワークプレースでは、ビジネス管理者が組織およびロールを構成し、管理することもできます。詳細は、Oracle Fusion Middleware Business Process Managementのユーザーズ・ガイドを参照してください。

1.3.3.2 Oracle Business Process Management Process Spaces(プロセス・スペース)

プロセス・スペースは、Oracle WebCenter Spaces上に構築されたコラボレーティブな作業領域であり、コラボレーションを増やすことによってBPMの生産性を向上できます。

詳細は、Oracle Fusion Middleware Business Process Managementのユーザーズ・ガイドを参照してください。

1.3.4 その他のOracle BPM Suiteのコンポーネント

以降の各項では、Oracle BPM Suiteのその他のコンポーネントについて説明します。

1.3.4.1 プロセス分析

ビジネス・プロセス分析では、プロセス参加者は実行中のプロセスベース・アプリケーションのパフォーマンスを監視できます。BPMプロジェクトで定義された主要パフォーマンス・インジケータが測定され、データベースに保存されます。プロセス参加者とアナリストは、プロセス・ワークスペースの各ダッシュボードまたはOracle BAMを使用して、プロセス分析データベースに保存されているメトリックを参照できます。

1.3.4.2 ガイド付きビジネス・プロセス

ガイド付きビジネス・プロセスでは、プロセス・アナリストと開発者は、ビジネス・プロセスの相互作用アクティビティを、プロセス参加者にとって意味のある一連のマイルストンにまとめることができます。これによって、ビジネス・プロセスの複雑さを意識させず、プロセス参加者が実行する必要のあるステップの概略を示します。

Oracle BPMモデリングおよび実装ガイドのガイド付きビジネス・プロセスの概要を参照してください

1.4 Oracle Business Process Analysis (BPA) Suite

Oracle BPA Suiteは、IDS ScheerのArisプラットフォームをベースにした、独立したOracle製品スイートです。Oracle Business Process Analysis (BPA) Suiteでは、全社的なビジネス・プロセスに対して、モデリングから分析、シミュレーションに到る総合的機能を提供します。Oracle BPAでは、戦略的な目標、目的、より高いKPI、リスクおよび管理などのビジネス・アーキテクチャのアーティファクトの取得と、バリュー・チェーン図などの概念モデルの取得がサポートされます。

また、Oracle BPA Suiteでは次がサポートされます。

- ビジネス・プロセスとビジネス戦略の整合。

- サービスの検出およびビジネス・プロセスへのリンク。これにより、Oracle SOA Suiteのサービスの必要な要素が構築されていきます。

- 最適リソース割当てを決定できるようにするシミュレーション・シナリオのロードと作成。シミュレーションでは、スループット分析、活動基準原価計算およびリソース使用率計算を実行できます。また、シミュレーション結果を簡単に分析するためのシミュレーション分析レポートを作成できます。

- チェックイン/チェックアウトから変更管理機能までをも含む、総合的なバージョン管理。

Oracle BPA Suiteで定義されたビジネス・アーキテクチャは、戦略的な目標と、Oracle BPMで作成された実際のビジネス・アプリケーションを正式に結びつけます。Oracle BPAでは、戦略的マップ、目標、目的、リスクおよび管理などのビジネス・アーキテクチャのアーティファクトをモデリングできるとともに、それらをビジネス・プロセスにリンクできます。

これにより、所要能力の優先順位付け、デシジョンの正当化、および、ビジネスの戦略的目標に対するビジネス・プロセス改善計画活動の追跡ができるようになり、このため、ビジネスとITがより整合するようになります。この製品により、どのBPMプロジェクトを開始するのか、またどのプロセスが現時点で企業に最も適しているのか、さらにどのサービスが事業戦略に最も整合しているのかを明確に理解できるようになるため、この製品は非常に大きな価値を提供します。

Oracle BPA Suiteは、組織のゴールを含めたモデリング・フェーズに直交ディメンションを追加することにより、Oracle BPM Suiteの機能を補完します。詳細は、Oracle BPAクイック・スタート・ガイドを参照してください

Oracle BPA Suiteで作成されたプロセスは、Oracle BPM Suiteにインポートできます。Oracle BPM Studioを使用して、自分のビジネス・プロセスを他のOracleテクノロジ(アダプタ、ビジネス・ルール、ヒューマン・タスクなど)に統合できます。

Oracle BPM Studio内でOracle BPAに作成したビジネス・プロセスを使用する方法の詳細は、Oracle BPMモデリングおよび実装ガイドを参照してください。

1.5 アプリケーション開発ライフサイクルの概要

この項では、Oracle BPMアプリケーションの開発ライフサイクルのステージの概要と、各ステージでOracle BPMの様々なコンポーネントがどのように使用されるかについて説明します。

図1-2 は、アプリケーション開発ライフサイクルの4つのステージ、各ステージに適したユーザー・ペルソナ、使用されるOracle BPMのツールおよびアプリケーションを示しています。

図1-2 Oracle BPMアプリケーション開発ライフサイクルのステージ

「図1-2 Oracle BPMアプリケーション開発ライフサイクルのステージ」の説明

1.5.1 プロセス・モデリング

アプリケーション開発ライフサイクルの最初のステージはプロセス・モデリングです。プロセス・アナリストは、このステージで実際のビジネス・プロセスと問題に基づいてプロセス・モデルを作成します。

Oracle BPMには、ビジネス・プロセスをモデリングするための個別のツールが3つ用意されています。各ツールは、Oracle BPM Suite内で別々のロールを持っています。使用するツールは、ユーザーのビジネス要件、アプリケーション開発サイクルのステージおよびユーザー・ペルソナによって決まります。

- Oracle BPM Studio
Oracle BPM StudioはOracle JDeveloper IDEプラットフォームで稼働します。Oracle BPM Studio では、プロセス・モデルの設計に重点を置いた簡易版のJDeveloper機能セットを表示するプロセス・アナリスト・ロールが提供されます。

Oracle BPM Studioでは、プロセス・アナリストとプロセス開発者が、Oracle BPMランタイムにデプロイされ、作業用アプリケーションとして実行される詳細なプロセス・フローを設計し、実装できます。また、Oracle BPA SuiteまたはBusiness Process Composerからの詳細なプロセス・フローは、Oracle BPM Studioで開いて追加の実装を行い、Oracle BPMランタイムにデプロイすることもできます。

- Oracle Business Process Composer
Business Process Composerは、プロセス・アナリストとプロセス開発者との共同作業を可能にするコラボレーション・ツールです。

- Oracle Business Process Analysis (BPA) Suite
Oracle BPA Suiteでは、組織全体を表す概念レベルのモデルから、実行プロセスとして実装できるより詳細なビジネス・プロセスまで、様々なビジネス・プロセスの強力なモデルを作成できます。

Oracle BPMの一般的なユース・ケースでこれらのツールを使用する方法の詳細は、1.6項「Oracle BPMのユース・ケース」を参照してください。アプリケーション開発ライフサイクルでOracle Business Process ComposerとOracle BPM Studioを連携させる方法の詳細は、3.2項「アプリケーション開発ライフサイクルの概要」を参照してください。

1.5.2 実装

プロセス・アナリストがビジネス・プロセスをモデリングした後、そのモデルを基にプロセス開発者がビジネス・アプリケーションを作成します。プロセス開発者はOracle BPM Studioを使用して、再使用可能サービスを実装し、その他のビジネス・システムと統合します。

実装には、プロセス開発者が一般的に実行する、次のタイプのタスクが通常含まれます。

- データ・マッピングおよび変換

- システム・フォルト処理

- Oracle Human Workflowを使用したユーザー・インタフェースの設計および実装。

- Oracle Business Rulesの設計

- ダッシュボードの作成

プロセス開発者がアプリケーションの実装を完了すると、そのアプリケーションは他のSOAコンポジット・アプリケーションと同様にコンパイルおよびデプロイされます。コンパイルおよびデプロイにはOracle BPM Studioを使用します。

1.5.3 デプロイメント

デプロイメントは、Oracle BPMプロジェクトを開発環境からランタイム環境に移行するプロセスです。ランタイム環境には、テスト用ランタイム環境か本番ランタイム環境があります。

ビジネス・プロセスをバックエンド・システムおよび再使用可能サービスと統合した後、プロセス開発者は作業用のプロセスベース・アプリケーションを作成し、コンパイルします。次にこのアプリケーションは、Oracle BPMランタイムにデプロイされます。

Oracle BPM Suiteには、Oracle BPMランタイムにデプロイするための一般的なシナリオがあります。次のとおりです。

- Oracle BPM Studioからの直接のデプロイメント
Oracle BPMで作成されたアプリケーションは、他のSOAコンポジット・アプリケーションと同様に直接ランタイム環境にデプロイできます。これは通常、プロセス開発者がBPM Studioを使用してテスト環境または開発環境から行います。

SOAコンポジット・アプリケーションのデプロイの詳細は、Oracle Fusion Middleware Oracle SOA Suite開発者ガイドを参照してください。

- Business Process Composerからの直接のデプロイメント
Oracle BPMでは、Business Process Composerがインストールされているのと同じランタイム環境に、直接プロジェクトをデプロイできます。承認ワークフローを指定できますが、このワークフローはプロジェクトのデプロイ前に完了しておく必要があります。

Business Process ComposerがOracle BPMランタイムと同じサーバー・インフラストラクチャにインストールされている場合は、Business Process Composerからデプロイできます。Business Process Composerからのデプロイでは、プロセス・アナリストがプロセスベースのビジネス・アプリケーションを容易にデプロイおよびテストできます。これは通常、テスト環境で行われます。

- エクスポートされたSARファイルを使用したデプロイメント
Oracle BPM StudioとBusiness Process Composerを使用すると、SARファイルを使用してアプリケーションをエクスポートできます。SARファイルは、ビジネス管理者がOracle Enterprise Managerを使用してランタイムにデプロイできます。

本番環境では、アプリケーションは通常この方法でデプロイされます。

- WebLogic Scripting Tool (WLST)を使用したデプロイ
Oracle BPMでは、Oracle BPMプロジェクトの管理およびデプロイ用にカスタマイズされたWLSTコマンドが用意されています。

1.5.4 Oracle BPMランタイム

アプリケーションのデプロイ後、そのランタイム環境では、ビジネス・プロセスがデプロイされた組織に割り当てられているロールに基づいて、Oracle BPMアプリケーションがプロセス参加者に対して使用可能になります。このステージは次の2つの機能にわかれています。

- ユーザーによる相互作用
プロセス参加者とプロセス所有者は、プロセス・ワークスペースを使用して、実行中のアプリケーションと相互作用を行います。

また、プロセス・アナリストと所有者は、Business Process Composerを使用して、プロセスを監視し、Oracle Business Rulesを実行時に修正することもできます。

- プロセス管理および監視
プロセス所有者は、プロセス・ワークスペースを使用して実行中のプロセスを監視および管理します。プロセス・アナリストと所有者は、Oracle Process Analyticsを使用してビジネス・プロセスのリアルタイムのパフォーマンスを監視します。

- プロセス作成
必要な権限を持つプロセス参加者は、プロセス・ワークスペースまたはOracle Business Process Management Process Spacesを使用して新しいプロセスを作成できます。

- システム管理
ビジネス管理者は、Oracle Enterprise ManagerおよびOracle WebLogic Server管理コンソールを使用して、実行中のビジネス・アプリケーションおよびランタイム・インフラストラクチャ全体を管理します。

1.6 Oracle BPMのユース・ケース

この項では、プロセス・モデリングからランタイムまでのOracle BPM Suiteのユースケースについて説明します。

1.6.1 ユース・ケース: BPM Studioを使用したプロジェクト・テンプレートの作成

このユース・ケースでは、Oracle BPM Studioを使用してプロジェクト・テンプレートを作成します。テンプレートは、プロセス・アナリストがBusiness Process Composerで新規プロジェクトを作成する際に使用されます。

Oracle BPM Studioを使用したプロジェクト・テンプレート作成の一般的なワークフロー

1. ビジネス要件を決定します。(プロセス・アナリスト)

2. Oracle BPM Studioを使用して必要なビジネス・プロセスをモデリングします(プロセス・アナリスト/プロセス開発者)。
プロセス・アナリストはOracle JDeveloper内のプロセス・アナリスト・ロールを使用できます。

3. プロセスの各要素をバックエンド・システムと再使用可能サービスに統合することでプロセスを実装します(プロセス開発者)。

4. Oracle BPM Studioを使用してプロジェクト・テンプレートを作成します(プロセス開発者)。

5. プロジェクト・テンプレートをOracle BPM MDSリポジトリに公開します(プロセス開発者)。

6. プロジェクト・テンプレートに基づいて、新しいOracle BPMプロジェクトを作成します(プロセス・アナリスト)。

7. プロジェクト・テンプレートで定義した再使用可能な必須サービスを実装します(プロセス・アナリスト)。

8. プロジェクトをOracle BPMランタイムにデプロイします(プロセス・アナリスト)。

1.6.2 ユース・ケース: BPM Studioを使用したプロセス・モデリングおよびアプリケーションのデプロイ

このユース・ケースでは、Oracle BPM Studioを使用してプロセス・モデルを作成します。モデルは、Oracle BPMランタイムにデプロイされる作業用ビジネス・アプリケーションの作成に使用されます。

Oracle BPM Studioを使用したプロセス・モデリングの一般的なワークフロー

1. ビジネス要件を決定します(プロセス・アナリスト)。

2. Oracle BPM Studioを使用して必要なビジネス・プロセスをモデリングします(プロセス・アナリスト/プロセス開発者)。
プロセス・アナリストはOracle JDeveloper内のプロセス・アナリスト・ロールを使用できます。

3. シミュレーションを実行し、プロセス・パフォーマンスをテストして向上させます。(プロセス・アナリスト/プロセス開発者)。

4. プロセスの各要素をバックエンド・システムと再使用可能サービスに統合することでプロセスを実装します(プロセス開発者)。

5. Oracle BPMプロジェクトをコンポジット・アプリケーションとしてコンパイルします(プロセス開発者)。

6. プロセスをランタイム環境にデプロイします(プロセス開発者、ビジネス管理者)。

7. 実行中のビジネス・アプリケーションの一部としてデプロイされたプロセスと相互作用します(プロセス参加者、プロセス所有者)。

8. 実行中のプロセスベースのアプリケーションを管理および監視します(ビジネス管理者、プロセス所有者)。

1.6.3 ユースケース: Business Process Composerを使用したプロジェクトの作成

このユースケースでは、Business Process Composerを使用して新規プロジェクトを作成します。プロジェクトはプロセス開発者が共有してOracle BPM Studioにインポートし、改良および実装します。

Business Process Composerを使用した新規プロジェクト作成の一般的なワークフロー

1. Business Process Composerを使用して、新規プロジェクトを作成します(プロセス・アナリスト)。

2. プロジェクトの実装の詳細を準備して、プロセスベースのビジネス・アプリケーションをデプロイメント対象として準備します(プロセス開発者)。

3. プロジェクト・テンプレートを作成し、Oracle BPM Studioを使用してそれをOracle BPMメタデータ・ストア・リポジトリに公開します(プロセス開発者)。

4. プロジェクト・テンプレートに基づいてプロジェクトを作成します(プロセス・アナリスト)。

5. プロジェクト・テンプレートの編集ポリシーで定義したとおり、プロジェクトを編集します(プロセス・アナリスト)。

6. プロジェクトをOracle BPMランタイムにデプロイします(プロセス・アナリスト、プロセス管理者)。

1.6.4 ユース・ケース: Business Process Composerを使用したOracle Business Rulesの修正

このユース・ケースでは、Business Process Composerを使用して、実行時にOracle Business Rulesを編集します。アプリケーションのデプロイ後、プロセス・アナリストと所有者は、デプロイ済プロジェクトを開き、Oracle Business Rulesを編集できます。

Business Process Composerを使用したOracle Business Rules修正の一般的なワークフロー

1. 一連のビジネス・プロセスをモデリングします(プロセス・アナリスト)。

2. アプリケーションを実装し、デプロイします(プロセス開発者)。

3. Business Process Composerを使用してOracle Business Rulesを実行時に編集します(プロセス所有者)。

1.6.5 ユース・ケース: Oracle Business Process Analysis Suiteを使用したビジネス・プロセスのモデリング

このユース・ケースでは、Oracle BPA Suiteを使用してビジネス・プロセスをモデリングします。これらのプロセスは、Oracle BPM Studioにインポートできます。

Oracle Business Process Analysis SuiteとOracle BPM Suiteを使用したプロセス・モデリングの一般的なワークフロー

1. ビジネス要件を決定します(プロセス・アナリスト)。

2. Oracle BPAを使用して戦略的な目標、プロセス・マップ、およびバリュー・チェーン図を取得し、ビジネス・アーキテクチャを設計します(プロセス・アナリスト)。

3. 戦略的な分析を実行し、Oracle BPMプロジェクトのプロセス候補を決定します(プロセス・アナリスト)。

4. 前記で識別されたプロセス候補の詳細なプロセス・フローを設計します(プロセス・アナリスト)。

5. プロセス・モデルをOracle BPM Studioにインポートします(プロセス・アナリスト、プロセス開発者)。

6. 各プロセス・コンポーネントをバックエンド・システムと再使用可能サービスに統合することでプロセスを実装します(プロセス開発者)。

7. ビジネス・プロセスをBPMプロジェクトとしてランタイム環境にデプロイします(プロセス開発者、ビジネス管理者)。

8. ビジネス・アプリケーションの一部としてデプロイされたプロセスと相互作用します(プロセス参加者、プロセス所有者)。

9. プロセスを管理します(ビジネス管理者、プロセス所有者)。

2 ビジネス・プロセス設計の概要

この章ではビジネス・プロセス設計について説明します。この章にはBusiness Process Management Notation (BPMN)の基本的な概要を示します。この概要では、主に、このガイドで使用されるBPMN固有の用語について説明します。

OracleでのBPMN 2.0の実装の詳細は、第6章「Oracle BPMを使用したビジネス・プロセスのモデリング」を参照してください。

また、この章では、営業見積サンプル・プロジェクトについても説明します。このプロジェクトはOracle BPMドキュメント・セット内の例全体で使用されています。

この章の内容は次のとおりです。

- 2.1項「Business Process Management Notation(BPMN)の概要」

- 2.2項「営業見積サンプルの概要」

2.1 Business Process Management Notation (BPMN)の概要

この項では、Business Process Management Notation (BPMN)の概要について説明します。ここでは、主に、このガイド全体で使用されるBPMN用語について説明します。

2.1.1 Business Process Management Notation (BPMN)とは

Business Process Management Notation (BPMN)は、ビジネス・プロセスの定義に関する業界標準の表記です。Oracle BPMでは、BPMN 2.0がサポートされています。

BPMNに関する一般的な情報については、http://www.bpmn.orgを参照してください。Oracle BPMでサポートされているBPMN機能仕様については、http://www.omg.org/spec/BPMN/2.0/を参照してください。

2.1.2 ビジネス・プロセス

一般的に、ビジネス・プロセスとは、実行後に適切に定義された結果が発生する、タスクのシーケンスのことであると定義できます。ビジネス・プロセスという用語が示すように、通常、ビジネス・プロセスは会社または組織のコンテキスト内で実行される作業を表します。

営業見積サンプル・プロジェクトは、ビジネス・プロセスの例を示しています。このプロジェクトにはタスクのシーケンスが含まれており、このシーケンスを実行すると、営業見積の承認または却下という結果が発生します。

また、Oracle BPMのコンテキストにおいては、ビジネス・プロセスはソフトウェアを使用して管理できる対象でもあります。Oracle BPMを使用すると、実際のビジネス・プロセスを営業見積サンプルのようにモデリングしてIT環境に統合できます。

2.1.2.1 プロセス・インスタンス

プロセス・インスタンスは、ビジネス・プロセスの特定のインスタンスを表します。通常、ビジネス・プロセスには組織における作業の実行方法を定義するのに対し、プロセス・インスタンスではその組織内の特定の担当者の作業を表します。Oracle BPMでは、この担当者はプロセス参加者と呼ばれます。

たとえば、営業見積サンプルでは、ビジネス・プロセスの全体的な定義またはモデルを示しています。ここには、作業の実行を担当するプロセス参加者のロールが含まれています。このサンプルでは、営業見積を作成および承認する方法、およびその作業を実行する担当者のタイプが定義されます。

対照的に、プロセス・インスタンスは、特定の営業見積およびその承認を担当する特定の担当者を表します。

Oracle BPMを使用すると、ビジネス・プロセスをモデリングして実行可能なビジネス・アプリケーションに変換し、これらのアプリケーション内で作成されたプロセス・インスタンスを管理できるため、プロセスとプロセス・インスタンスの間のこのような区別が重要になります。

2.1.2.2 プロセス・トークン

プロセス・トークンは、BPMNにおける抽象的な概念です。プロセス・トークンは、プロセスにおける現在の実行ポイントを表します。ビジネス・プロセスには複数のトークンが含まれている場合があります。このような場合は、そのプロセスが複数のパスを経由して実行されていることを示します。

たとえば、多くの場合、プロセスのパスをスプリットするのにゲートウェイが使用されます。プロセス・パスをスプリットすると、複数のプロセス・トークンが作成されます。

2.1.3 フロー・オブジェクト

フロー・オブジェクトは、プロセス内で実行される作業を表すBPMNコンポーネントです。次の各項では、BPMNで使用できるフロー・オブジェクトのタイプについて説明します。

2.1.3.1 タスク

Oracle BPMでは、プロセスによって実行される作業を表すためにタスクが使用されます。

2.1.3.2 イベント

イベントでは、プロセスにおいて発生する事柄を定義します。

2.1.3.3 ゲートウェイ

ゲートウェイはプロセスのフローを決定するために使用されます。

2.1.3.4 シーケンス・フロー

シーケンス・フローは、フロー・オブジェクトを接続するために使用されます。

2.1.4 データ・オブジェクト

フロー・オブジェクトがビジネス・プロセスの動作の定義に使用されるのに対し、データ・オブジェクトは、ビジネス・プロセスによって使用される情報の定義および格納に使用されます。データ・オブジェクトはモデリング中またはプロセスの実装中に定義される変数です。プロセス・インスタンスでは、これらの変数を使用して特定の情報を格納します。

たとえば、営業見積サンプルでは、営業見積に関する情報の格納に使用される、複数のデータ・オブジェクトが定義されています。プロセス・インスタンスでは、実行時、これらの変数について特定の値を生成および格納します。

2.2 営業見積サンプルの概要

営業見積プロジェクトでは、様々なOracle BPM機能の現実的な例を示します。このプロジェクトは、このドキュメントで説明されている機能の例を示すために、Oracle BPMドキュメント・セット内部で使用されています。

図2-1は、営業見積サンプルを示しています。

図2-1 営業見積サンプル

「図2-1 営業見積サンプル」の説明

2.2.1 営業見積サンプルの詳細

次の各項では、営業見積サンプル・プロセスがどのように動作するかについて説明します。この例は、次に示す、より高いレベルのタスクに細分化できます。

- 2.2.1.1項「営業見積の開始」

- 2.2.1.2項「ビジネス実行確認の決定」

- 2.2.1.3項「見積の承認」

- 2.2.1.4項「承認結果」

これらの高いレベルのタスクについては、次の項で説明します。各項では、それぞれのタスクの実行に必要となる特定のフロー・オブジェクトの詳細が示されています。

2.2.1.1 営業見積の開始

営業見積プロジェクト内の最初のフロー・オブジェクトは、図2-2に示すように、データ・オブジェクトの初期値を設定し、プロセス・インスタンスを開始するために使用されます。

図2-2 営業見積の開始

「図2-2 営業見積の開始」の説明

営業見積の開始の部分では、次の処理を実行します。

1. 開始ポイントの定義(None開始イベント)

2. データ・オブジェクトの開始(スクリプト・タスク)

3. プロセス・インスタンスの開始(イニシエータ・パターンを使用したユーザー・タスク)

4. ビジネス・インジケータ・データ・オブジェクトの値の設定(スクリプト・タスク)

2.2.1.2 ビジネス実行確認の決定

営業見積サンプルのフロー・オブジェクトの次のセットでは、企業のビジネス実行の確認が必要かどうかを決定します。確認が必要な場合、プロセスは、プロセス・フロー内の確認を実行する部分に進みます。確認が必要でない場合、プロセスは直接承認ステージに進みます。

図2-3は、ビジネス実行確認を実行するためのBPMNフロー・オブジェクトを示しています。

図2-3 ビジネス実行確認の決定

「図2-3 ビジネス実行確認の決定」の説明

次の手順は、ビジネス実行確認におけるプロセス・パスがどのように進むかを示しています。

ビジネス実行確認の決定

1. 承認フローの決定(ビジネス・ルール・タスク)
このステージは、ビジネス・ルール・タスクで開始します。このタスクには、ビジネス実行確認が必要かどうかを決定するために、Oracle Business Rulesが実装されています。

2. 承認フローを確認します(排他ゲートウェイ)。

- はいの場合は、ビジネス実行確認(ユーザー・タスク)を実行します。

- いいえの場合は、プロセス・フローは直接見積承認ステージに進みます。

3. 承認(パラレル・ゲートウェイ)。

2.2.1.3 見積の承認

営業見積サンプルのフロー・オブジェクトの次のセットでは、営業見積の承認方法を定義します。図2-4に示すように、ビジネス実行確認が完了した後、見積は承認フェーズに移動します。

この例では、承認プロセスは、同時に実行される2つの個別のフロー によって定義されています。次のとおりです。

- 営業見積を承認します。
また、このプロセス・パスも2つのパスにスプリットされています。この例では、見積が自動承認、つまり、一定の条件に従って承認される場合があります。それ以外の場合は、プロセス参加者が明示的に見積を承認することが必要となります。

- 営業見積に関連する契約条件を承認します。
このプロセス・パスでは、プロセス参加者が売買契約の条件を承認する必要があります。

これらのパラレル・プロセス・パスは、完了後にマージされます。次に、プロセス・パスは承認結果ステージに進みます。

図2-4 見積の承認

「図2-4 見積の承認」の説明

見積の承認

1. 承認(パラレル・ゲートウェイ-スプリット)

1. 自動承認の確認(ゲートウェイ)
見積の承認

見積の承認結果の設定

2. 条件の承認

2. 見積の承認のマージ(パラレル・ゲートウェイ-マージ)

2.2.1.4 承認結果

承認結果ステージは、営業見積サンプルの最終ステージを表します。このステージの最初に、営業見積が承認されたかどうかを確認します。

営業見積が承認されている場合は、プロセスは最終プロセス・フローに進みます。最終プロセス・フローは終了イベントに進みます。

営業見積が承認されていない場合は、プロセスは見積入力タスクに戻ります。このタスクでは見積を再度入力する必要があり、プロセスが繰り返されます。

図2-5 承認結果

「図2-5 承認結果」の説明

承認結果

1. 承認結果(排他ゲートウェイ)
承認結果は排他ゲートウェイを使用して実装されています。このゲートウェイには2つの送信シーケンス・フローが含まれており、これらのフローによってプロセスが排他ゲートウェイから外に出るパスが決定されます。

1. 承認
この処理はデフォルト・シーケンス・フローを使用して実装されています。

見積の完成

見積の保存

終了イベント

2. 却下: プロセス・フローが見積入力に戻ります。
この処理は、条件シーケンス・フローを使用して実装されています。この条件シーケンス・フローに使用される式によって、プロセス・パスが続行するかどうかが決定されます。

3 Oracle Business Process Composerの概要

この章では、Oracle Business Process Composerアプリケーションの概要を説明します。

この章の内容は次のとおりです。

- 3.1項「Oracle Business Process Composerの概要」

- 3.2項「アプリケーション開発ライフサイクルの概要」

- 3.3項「Oracle Business Process Composerへのサインオン」

- 3.4項「Business Process Composerアプリケーションのインタフェースの概要」

3.1 Oracle Business Process Composerの概要

Oracle Business Process Composerは、プロセス・アナリストがビジネス・プロセスを作成およびカスタマイズできるようにするWebベースのアプリケーションです。これらのプロセスはOracle BPMプロジェクト内に組み込まれています。Business Process Composerを使用すると、Oracle BPM Studioを使用してプロセス・ベースのビジネス・アプリケーションを作成するプロセス開発者との共同作業が容易になります。

Business Process Composerのユース・ケースの詳細は、次の項を参照してください。

3.1.1 Oracle Business Process Composerのユース・ケース

Oracle Business Process Composerの一般的なユース・ケースは次の3つです。

- プロジェクト・テンプレートに基づいてプロジェクトを作成、編集およびデプロイします。
プロジェクト・テンプレートは、Oracle BPM Studioで作成されて、Oracle BPMメタデータ・サービス・パーティション内部に格納されます。Business Process Composerを使用すると、これらのテンプレートを使用して新規ビジネス・プロセスを作成したり、既存のビジネス・プロセスを変更できます。

作成または変更したテンプレートは、Oracle BPMメタデータ・サービス・パーティションに再公開するか、Oracle BPMランタイムにデプロイできます。

Business Process Composerでのプロジェクト・テンプレートの使用方法については、7.2項「BPMプロジェクト・テンプレートの使用」を参照してください。プロジェクト・テンプレートの作成方法は、Oracle BPMモデリングおよび実装ガイドを参照してください。

- 新規プロジェクトを作成します。
Business Process Composerを使用して、新規BPMプロジェクトを作成できます。このプロジェクトは、Oracle BPM StudioとBusiness Process Composerの間で共有できます。

多くの場合、Business Process Composerで作成した新規プロジェクトには、Oracle BPMアプリケーションに必要な実装の詳細が含まれていません。プロセス開発者は、Oracle BPM Studioを使用して必要な実装を追加できます。

Oracle BPMリポジトリには、Business Process Composerからプロジェクトを保存できるため、プロセス開発者はOracle BPM Studioを使用して必要な技術的実装を追加できます。Business Process ComposerとOracle BPM Studioの間で、プロジェクトをインポートおよびエクスポートすることもできます。

- 進行中のプロセスのビジネス・ルールを編集します。
Business Process Composerを使用して、実行中のアプリケーションでOracle Business Rulesを編集できます。Oracle Business Rulesにより、ビジネス・ルール・タスクを使用して、プロセス内でビジネス・ポリシーを定義できます。ポリシーは、ビジネス・プロセスの再モデリングまたはビジネス・アプリケーションの再デプロイを行わずに、実行時に容易に変更できます。

3.2 アプリケーション開発ライフサイクルの概要

Oracle Business Process Composerは、プロセス・アナリストとプロセス開発者のやり取りを容易にするコラボレーション・ツールです。使いやすいユーザー・インタフェースが用意されており、プロジェクト・テンプレートに基づいてプロセス・ベースのビジネス・アプリケーションを作成できます。テンプレートは、Oracle BPM Studioを使用して作成されます。

Business Process Composerでは、新規BPMプロジェクトを作成するための環境も提供されます。新規作成したプロジェクトはプロセス開発者と簡単に共有でき、プロセス開発者はOracle BPM Studioを使用してビジネス・プロセスをビジネス・アプリケーションの一部として実装します。

以降の項では、プロセス・アナリストとプロセス開発者を含む個人と複数のOracle BPMコンポーネントの間の相互作用を表示する一般的なシナリオについて説明します。ただし、実際に使用されるワークフローは、それぞれのビジネス・ニーズに応じて異なります。プロセス・アナリストとプロセス開発者が共同でビジネス・プロセスを作成および改良していく過程では、何度も繰り返しが発生する場合があります。

3.2.1 ワークフロー: プロジェクト・テンプレートを基にしたプロジェクトの作成

図3-1は、開発サイクルの最初にOracle BPM Studioを使用してプロセス・テンプレートを作成する一般的なワークフローを示しています。ここで作成したテンプレートは、新規Oracle BPMプロジェクトの作成に使用されます。作成されたプロジェクトは、プロセス・アナリストがBusiness Process Composerを使用して編集できます。

図3-1 BPM Studioを使用したプロジェクト・テンプレートの作成

「図3-1 BPM Studioを使用したプロジェクト・テンプレートの作成」の説明

次の手順は、このワークフローの各ステージを説明しています。

1. Oracle BPM Studioを使用してプロジェクト・テンプレートを作成します(プロセス開発者)。

2. プロジェクト・テンプレートをOracle BPMメタデータ・サービス(MDS)パーティションに公開します(プロセス開発者)

3. Business Process Composerを使用して、プロジェクト・テンプレートを基にプロジェクトを作成します。(プロセス・アナリスト)

4. テンプレート内に定義されている編集ポリシーに従って、プロジェクト内のプロセスを編集します(プロセス・アナリスト)。

5. プロジェクトを検証します(プロセス・アナリスト)。

6. プロジェクトをデプロイするか、プロセス開発者に戻します。

1. プロジェクトを直接Oracle BPMランタイムにデプロイします(プロセス・アナリスト、ビジネス管理者)。これには承認ワークフローが必要な場合があります。

2. プロジェクトをOracle BPM MDSパーティションに再公開します(プロセス・アナリスト)。プロジェクトを再公開すると、ビジネス・プロセスをアプリケーション全体に実装する他のプロセス・アナリストまたはプロセス開発者とプロジェクトを共有できます。

3. プロジェクトをSARファイルとしてエクスポートします(プロセス・アナリスト)。このファイルは、Oracle BPMランタイムにデプロイできます(プロセス管理者)。

3.2.2 ワークフロー: 新規プロジェクトの作成

図3-2は、Business Process Composerを使用してアプリケーション開発ライフサイクルの最初のプロセス・モデリング・ステージを実行する一般的なワークフローを示しています。このワークフローには、Business Process Composerを使用した新規BPMプロジェクトの作成が含まれており、プロセス開発者はこの新規プロジェクトをOracle BPM Studioで開いて実装を完了できます。

図3-2 Oracle Business Process Composerを使用した新規プロジェクトの作成

「図3-2 Oracle Business Process Composerを使用した新規プロジェクトの作成」の説明

次の手順は、このワークフローの各ステージを説明しています。

1. Business Process Composerを使用して、新規プロジェクトを作成します(プロセス・アナリスト)。

2. プロジェクトをOracle BPM (MDS)リポジトリに保存します(プロセス・アナリスト)。

3. Oracle BPM Studioでプロジェクトを開きます(プロセス開発者)。

4. プロジェクトをプロセスベースのビジネス・アプリケーションの一部として実装します(プロセス開発者)。

5. プロジェクトをランタイムにデプロイするか、プロジェクト・テンプレートを作成します。

1. プロセスをランタイムにデプロイします(プロセス開発者、ビジネス管理者)。または

2. アプリケーションをプロジェクト・テンプレートとして保存します(プロセス開発者)。

3. プロジェクトをSARファイルとしてエクスポートします(プロセス・アナリスト)。このファイルは、Oracle BPMランタイムにデプロイできます(ビジネス管理者)。

3.2.3 ワークフロー: 実行時でのビジネス・ルールの編集

図3-3は、プロセスベースのビジネス・アプリケーションを作成してデプロイし、次にBusiness Process Composerを使用して実行時にビジネス・ルールを編集するワークフローを示しています。

図3-3 Oracle Business Process Composerを使用した実行時でのOracle Business Rulesの編集

「図3-3 Oracle Business Process Composerを使用した実行時でのOracle Business Rulesの編集」の説明

1. Oracle BPM Suiteを使用して、ビジネス・プロセスをモデリングし、プロセスベースのビジネス・アプリケーションを作成します。これは、前の項で定義したワークフローの組合せで実行できます。(プロセス・アナリスト/プロセス開発者)

2. アプリケーションをOracle BPMランタイムにデプロイします。(プロセス・アナリスト/プロセス開発者)

3. Business Process Composerを使用してランタイム内でビジネス・ルールを編集します(プロセス・アナリスト)。

3.3 Oracle Business Process Composerへのサインオン

Business Process Composerにサイオンするには、ビジネス管理者から次の情報が提供されている必要があります。

- URL: Business Process Composerがインストールされている場所。

- ユーザー名: Business Process Composerへのアクセスに使用するユーザー名。

- パスワード: Business Process Composerへのアクセスに使用するセキュリティ資格証明。

注意:

Oracle BPM Suiteでは、Oracle Application Server Single Sign-onがデフォルトで有効になっています。OracleAS Single Sign-Onを使用すると、1つのシングル・サインオン・セッションで複数のWebベース・アプリケーションにアクセスできます。OracleAS Single Sign-Onが有効化されており、他のアプリケーションにサインオン済の場合、Business Process Composerのサインオン画面が表示されない場合があります。

3.3.1 Oracle Business Process Composerにサインオンする方法

次の手順は、Oracle Business Process Composerアプリケーションにサインオンする方法を説明しています。

Oracle Business Process Composerにサインオンするには

1. Business Process ComposerのURLに移動します。
図3-4は、Oracle BPMアプリケーションのロード後に表示されるサインオン画面を示しています。

図3-4 Oracle Business Process Composerサインオン画面

「図3-4 Oracle Business Process Composerサインオン画面」の説明

2. ユーザー名とパスワードを入力し、「ログイン」をクリックします。

3.4 Business Process Composerアプリケーションのインタフェースの概要

Business Process Composerのユーザー・インタフェースを図3-5に示します。

図3-5 Oracle Business Process Composerアプリケーションのユーザー・インタフェース

「図3-5 Oracle Business Process Composerアプリケーションのユーザー・インタフェース」の説明

次の各項では、Business Process Composerのユーザー・インタフェースの主要な領域について説明します。

3.4.1 Business Process Composerツールバーの概要

Business Process Composerツールバーからは、一般的なアプリケーション機能にアクセスできます。図3-6に、アプリケーションのツールバーを示します。このツールバーは、アプリケーションの右上隅にあります。このツールバーは、アプリケーションの各ページから使用できます。

注意:

「管理」メニュー項目を使用できるのは、Business Process Composer管理者のみです。このメニュー項目は他のユーザーには表示されません。

図3-6 Business Process Composerツールバー

「図3-6 Business Process Composerツールバー」の説明

アプリケーション・ツールバーからは、次の要素にアクセスできます:

表3-1 Business Process Composerアプリケーション・ツールバー

ツールバーの要素

説明

ユーザー名

現行ユーザーの名前が表示されます。このテキスト・フィールドは読取り専用です。

管理

Business Process Composerの管理ページにアクセスします。この項目は、管理者セキュリティ・ロールが付与されているユーザーにのみ表示されます。詳細は、第12章「管理タスクの実行」を参照してください。

プリファレンス

一般的なアプリケーション・プリファレンスを構成できます。

ヘルプ

このガイドのHTMLバージョンが表示されます。

サインアウト

現行ユーザーをサインアウトします。

ネットワークの接続性

ネットワーク・アクティビティがあるかどうかを示します。ネットワーク・アクティビティがない場合、アイコンは「O」と表示されます。

3.4.2 Business Process Composerのようこそページの概要

Business Process Composerアプリケーションのようこそページを使用すると、BPMリポジトリ内のプロジェクトを表示および使用できます。図3-7は、プロジェクトのようこそページを示しています。次の各項では、このページのコンポーネントについて説明します。

図3-7 プロジェクト・ブラウザ

「図3-7 プロジェクト・ブラウザ」の説明

アプリケーションのようこそページを使用してBPMプロジェクトを使用する方法については、第4章「BPMプロジェクトの使用」を参照してください。

3.4.2.1 プロジェクト・ビュー

プロジェクト・ビューを使用すると、特定の基準に基づいてプロジェクト・ブラウザを表示できます。プロジェクト・ビューを選択するには、図3-7に示すように、プロジェクトのようこそページの左側からアイコンを選択します。表3-2では、様々なタイプのプロジェクト・ビューについて説明します。

表3-2 プロジェクト・ビュー

プロジェクト・ビュー

説明

すべてのプロジェクト

現行ユーザーに表示または編集の権限がある、BPMリポジトリ内のすべてのプロジェクトが表示されます。

Business Process Composer管理者に対しては、プライベートではないプロジェクトがすべて表示されます。プライベート・プロジェクトは、プロジェクト所有者にのみ表示されます。

お気に入り

現行ユーザーがお気に入りとマークしたプロジェクトのみが表示されます。

自分の所有

現行ユーザーが所有するプロジェクトのみが表示されます。

自分と共有

現行ユーザーと共有するプロジェクトのみが表示されます。

ランタイム・プロジェクト

ランタイムにデプロイ済のプロジェクトのみが表示されます。

3.4.2.2 プロジェクト・ブラウザ

プロジェクト・ブラウザはBPMリポジトリの階層ビューで、図3-7の中央部に示すように、プロジェクトやプロジェクト・フォルダなどが表示されます。

プロジェクト・ブラウザを使用すると、新規のプロジェクトやプロジェクト・フォルダを作成したり、プロジェクトを削除することもできます。

3.4.2.3 コントロール・パネル

コントロール・パネルを使用すると、プロジェクトやプロジェクト・フォルダをプロジェクト・ブラウザに表示する方法を制御できます。図3-8は、プロジェクト・ブラウザのコントロール・パネルを示しています。

図3-8 プロジェクト・ブラウザのコントロール・パネル

「図3-8 プロジェクト・ブラウザのコントロール・パネル」の説明

3.4.2.4 検索

「検索」フィールドを使用すると、名前、作成者または説明に基づいて、リポジトリ内のプロジェクトを検索できます。「検索」フィールドは、図3-7に示すように、プロジェクトのようこそページの右上隅にあります。

3.4.3 Business Process Composerのメイン・メニューの概要

アプリケーションのメイン・メニューからは、頻繁に使用するコマンドや機能にアクセスできます。このメニューには、アプリケーションおよびプロジェクトのようこそページからアクセスできます。メニューにアクセスするには、図3-9に示すように、上部に表示されたアイコンをクリックします。

図3-9 アプリケーションのメイン・メニュー

「図3-9 アプリケーションのメイン・メニュー」の説明

アプリケーションのメイン・メニューからは、表3-3に説明するメニュー項目にアクセスできます。

表3-3 アプリケーションのメイン・メニュー項目

メニュー項目

説明

新規

新規BPMプロジェクトを作成できます。

開く

BPMリポジトリ内に格納されているBPMプロジェクトを開くことができます。

インポート

プロジェクトをBPMリポジトリにインポートできます。

エクスポート

プロジェクトをローカル・ファイル・システムにエクスポートできます。

編集

現在のプロジェクトを編集モードに切り替えます。

保存

現在のプロジェクトへの変更を保存します。

保存して解放

現在のプロジェクトへの変更を保存し、ロックを解放します。これによって、アクセス権がある他のユーザーはプロジェクトの編集を開始できます。

取消

変更を保存せずに、プロジェクトのロックを解放します。

プロジェクトの検証

プロジェクトを検証します。

プロジェクトを閉じる

現在のプロジェクトを閉じます。

第II部

Oracle Business Process Composerの使用

この部では、Business Process Composerを使用してビジネス・プロセスをモデリングする方法について説明します。ここではアプリケーションの全般的な概要を示します。また、Oracle BPMN 2.0の実装についても詳しく説明します。

この部には、次の章が含まれます。

- 第4章「BPMプロジェクトの使用」

- 第5章「プロセスおよびプロセス・エディタの使用」

- 第6章「Oracle BPMを使用したビジネス・プロセスのモデリング」

- 第7章「プロジェクト・ライフサイクルの使用」

- 第8章「Oracle Business Rulesの使用」

4 BPMプロジェクトの使用

この章では、Oracle Business Process Composerを利用してプロジェクトを作成および使用する方法について説明します。

この章の内容は次のとおりです。

- 4.1項「Oracle BPMプロジェクトの概要」

- 4.2項「Oracle BPMリポジトリの概要」

- 4.3項「プロジェクトのようこそページの概要」

- 4.4項「他のユーザーとのプロジェクトの共有」

- 4.5項「プロジェクトの作成および使用」

- 4.6項「ガイド付きビジネス・プロセスを使用したプロジェクトのマイルストンの作成」

- 4.7項「プロジェクトで使用するロールの定義」

4.1 Oracle BPMプロジェクトの概要

プロジェクトは、Oracle BPMアプリケーションのコア要素です。BPMプロジェクトには、ビジネス・アプリケーションの作成とサポートに使用されるリソースが含まれます。これらには、ビジネス・プロセスや、データ・オブジェクト、サービス、ビジネス・ルール、ヒューマン・タスク、ロールといったビジネス・カタログのコンポーネントがあります。

Business Process Composerで新規プロジェクトを直接作成するか、Oracle BPM Studioを使用して作成したプロジェクト・テンプレートに基づいてプロジェクトを作成および編集できます。

Oracle BPMプロジェクトは、プロセス・アナリストとプロセス開発者のコラボレーションを促進します。プロジェクトは、BPM MDSリポジトリを使用することで、Business Process ComposerとOracle BPM Studio間で共有できます。詳細は、4.2項「Oracle BPMリポジトリの概要」を参照してください。

また、Oracle Business Process Composerを使用して、プロジェクトを検証し、ランタイムにデプロイすることもできます。詳細は、7.5項「プロジェクトのデプロイ」を参照してください。

開発ライフサイクルにおいてプロジェクトがどのように作成、編集および共有されるかについては、3.2項「アプリケーション開発ライフサイクルの概要」を参照してください。

4.1.1 プロジェクト・コンポーネントおよびリソースの概要

各プロジェクトには1つ以上のビジネス・プロセスが含まれています。ビジネス・プロセスやアプリケーションで使用される他のリソースが含まれることもあります。このリソースには、アプリケーションを他のアプリケーションおよびシステムに接続できる再利用可能なリソースが含まれます。

注意:

Oracle BPM Studio では、Oracle BPMプロジェクトのすべての要素を表示、作成および編集できます。Business Process Composerでは一部の要素が表示されない場合があります。

詳細は、Oracle BPMモデリングおよび実装ガイドを参照してください。

4.1.1.1 編集可能なプロジェクト・リソース

Business Process Composerを使用して、次のプロジェクト・リソースを作成および編集できます:

- プロセス
プロセスはビジネス・アプリケーションのコアになる要素です。プロセスは、関連したタスクまたはアクティビティの集まりです。Oracle BPMアプリケーションには1つ以上のプロセスを含めることができます。Business Process Composerを使用すると、BPMNプロセスを作成および編集できます。

BPMプロジェクト・ナビゲータから、新しいプロセスを作成したり、既存のプロセスを編集できます。プロセスの作成および使用については、第5章「プロセスおよびプロセス・エディタの使用」を参照してください。

- ヒューマン・タスク
Oracle Business Process Composerでは、ヒューマン・タスクを作成および編集できます。ヒューマン・タスクを使用して、ユーザーとプロセスベースのアプリケーションがどのように相互作用するかを定義します。

BPMプロジェクト・ナビゲータから、新しいヒューマン・タスクを作成したり、既存のヒューマン・タスクを編集できます。詳細は、第11章「ヒューマン・タスクの使用」を参照してください。作成したヒューマン・タスクは、ビジネス・カタログ内でアクセスできます。

- アクティビティ・ガイド
アクティビティ・ガイドはガイド付きビジネス・プロセスの一部です。ガイド付きビジネス・プロセスを使用すると、プロジェクトのマイルストンを定義できます。各プロジェクトには、プロジェクトのマイルストンを定義できる1つのアクティビティ・ガイドが含まれています。Business Process Composerでは、プロジェクト・テンプレートにあらかじめ定義されているマイルストンを使用したり、新しいマイルストンを作成できます。

プロジェクト・マイルストンの作成および使用については、4.6項「ガイド付きビジネス・プロセスを使用したプロジェクトのマイルストンの作成」を参照してください。

- Oracle Business Rules
Oracle Business Rulesは、ビジネス・ポリシーを表す文または重要なビジネスの意思決定を表す文です。Business Process Composerでは、Oracle Business Rulesは編集可能なプロジェクト・コンポーネントですが、ビジネス・カタログの一部としても表示されます。

詳細は、第8章「Oracle Business Rulesの使用」を参照してください。

注意:

Business Process Composerを使用して新規ビジネス・ルールは作成できません。編集できるのは、Oracle BPM Studioを使用してプロジェクトに追加されたビジネス・ルールのみです。

4.1.1.2 ビジネス・カタログ

プロジェクト・テンプレートには、ビジネス・カタログで定義されたリソースが含まれる場合があります。これらのリソースは、プロセス開発者がOracle BPM Studioを使用して作成する、再利用可能なサービスです。

Business Process Composerを使用すると、プロセス・アナリストは、BPMプロセス内にこれらの再利用可能なサービスを実装できます。これらのコンポーネントはBusiness Process Composerで作成および編集できませんが、特定のBPMNアーティファクトに割り当てることができます。

再利用可能なプロジェクト・リソースは、コンポーネント・パレットからアクセスできます。ビジネス・カタログで再利用可能なリソースは、次のとおりです。

- サービス
サービスを使用して、他のプロセス、システムおよびサービス(BPELプロセスやデータベースを含む)にBPMNプロセスを接続します。

Business Process Composerを使用して、Webサービスを基に新しいサービスを作成できます。詳細は、9.1項「サービスの使用」を参照してください。

また、プロジェクト・テンプレートの一部として作成された他のタイプのサービスを使用することもできます。

サービスは、サービス・タスクに割り当てることによって、BPMNプロセス内に実装されます。詳細は、6.4.1項「サービス・タスクの概要」を参照してください。

- 外部参照
参照は、BPMNプロセスのインタフェースの定義に使用できるインタフェースです。参照は、メッセージ・イベント、送信タスクおよび受信タスクをインタフェースに実装するために使用します。

詳細は、6.4項「他のプロセスおよびサービスとの通信」を参照してください。

- ヒューマン・タスク
ヒューマン・タスクを使用すると、エンド・ユーザーがどのようにBPMNプロセスと相互作用するかを定義できます。ヒューマン・タスクは、ユーザー・タスクを使用してビジネス・プロセスに追加できます。また、ビジネス・カタログのヒューマン・タスクを、ビジネス・プロセス内の各ユーザー・タスクに割り当てることができます。BPMNプロセス内でのヒューマン・タスクの使用については、6.3項「プロセスへのユーザー相互作用の追加」を参照してください。

- Oracle Business Rules
Oracle Business Rulesは、ビジネス・ポリシーを表す文または重要なビジネスの意思決定を表す文です。ビジネス・ルールは、ビジネス・ルール・タスクを使用してプロセスに統合されます。

Business Process ComposerによるOracle Business Rulesの使用方法の詳細は、第8章「Oracle Business Rulesの使用」を参照してください。BPMNプロセス内のビジネス・ルール・タスクの使用の詳細は、6.5.2項「ビジネス・ルール・タスクの概要」を参照してください。

4.1.1.2.1 編集または作成できるビジネス・カタログのコンポーネント

表4-1に、ビジネス・カタログのコンポーネントをリストし、Oracle Business Process Composerを使用して作成または編集できるコンポーネントを示します。

表4-1 編集可能なビジネス・カタログ・コンポーネント

ビジネス・カタログ・コンポーネント

Business Process Composerを使用して作成可能

Business Process Composerを使用して編集可能

ビジネス・ルール

いいえ

はい

ヒューマン・タスク

はい

はい

サービス

はい

はい

外部参照

いいえ

いいえ

4.2 Oracle BPMリポジトリの概要

Oracle BPMリポジトリは、Oracle Metadata Service(MDS)に基づきます。Oracle MDSは、デプロイされたアプリケーションに関する情報を格納するOracle Fusion Middlewareのコンポーネントです。Oracle BPMは、Oracle BPMランタイムにアプリケーションをデプロイするとき、このリポジトリを使用します。

さらに、Oracle BPMはOracle MDSリポジトリのパーティションを使用して、Oracle BPM StudioとOracle Business Process Composerの間でプロジェクトおよびプロジェクト・テンプレートを共有します。Oracle BPMリポジトリ内に、プロジェクトおよびプロジェクト・テンプレートの格納に使用する2つのパーティションがあります。次のとおりです。

- パブリック: Oracle BPMプロジェクトの格納に使用

- テンプレート: Oracle BPMプロジェクト・テンプレートの格納に使用

Oracle BPMリポジトリは、Business Process Composerのインストール時にシステム管理者がインストールおよび構成します。

Oracle BPMリポジトリを使用してOracle BPM StudioとBusiness Process Composer間でプロジェクトおよびプロジェクト・テンプレートを共有する方法の詳細は、3.2項「アプリケーション開発ライフサイクルの概要」を参照してください。

Oracle BPMリポジトリでプロジェクトを開く方法の詳細は、4.5項「プロジェクトの作成および使用」を参照してください。プロジェクト・テンプレートに基づいてプロジェクトを作成および使用する方法については、7.2項「BPMプロジェクト・テンプレートの使用」を参照してください。

4.3 プロジェクトのようこそページの概要

プロジェクトのようこそページからは、BPMプロジェクトに関する情報、およびプロジェクトに関連する共通機能にアクセスできます。図4-1は、営業見積サンプル・プロジェクトのようこそページを示しています。

図4-1 BPMプロジェクトのようこそページ

「図4-1 BPMプロジェクトのようこそページ」の説明

4.3.1 「プロジェクト情報」ペインの概要

「プロジェクト情報」パネルには、プロジェクトに関する一般的な情報が表示されます。図4-2は、営業見積デモ・プロジェクトの「プロジェクト情報」ペインの例を示しています。

図4-2 「プロジェクト情報」ペイン

「図4-2 「プロジェクト情報」ペイン」の説明

このペインには次の情報が表示されます:

- 説明: プロジェクトの一般的な説明を入力します。

- 承認ワークフロー: プロジェクトに承認ワークフローが定義されているかどうかを指定します。

- イベントの生成: このプロジェクトにイベントを生成する方法を決定します。

- 編集モード: 現在のプロジェクトが編集中かどうかを指定します。

- 共有: プロジェクトを共有するユーザーまたはグループがリストされます。

- プロジェクト言語: プロジェクトの現在の言語を指定します。

4.3.2 プロジェクト・コンポーネント・ペインの概要

プロジェクト・コンポーネント・ペインでは、プロセスやヒューマン・タスクの表示と作成、およびビジネス・ルールの表示ができます。図4-3は、営業見積サンプル・プロジェクトに表示されるプロジェクト・コンポーネント・ペインを示しています。

図4-3 プロジェクト・コンポーネント・ペイン

「図4-3 プロジェクト・コンポーネント・ペイン」の説明

4.3.3 「クイックスタート」メニューの概要

「クイックスタート」を使用すると、Business Process Composer内の次の共通機能に簡単にアクセスできます:

- ギャラリ: プロセスやヒューマン・タスクを参照および作成できます。ビジネス・ルールも参照できます。

- アクティビティ・ガイド: プロセス内のマイルストンを作成および管理できます。

- 承認ワークフロー・ブラウザ: デプロイメント承認ワークフローを表示および管理できます。

4.3.4 「最近のアクティビティ」ブラウザの概要

「最近のアクティビティ」ブラウザには、現在のBPMプロジェクトに対する主要な変更履歴が表示されます。

最近のプロジェクト・アクティビティを表示する方法については、4.5.11項「プロジェクトに対する変更履歴を表示する方法」を参照してください。

4.3.5 「スナップショット」ブラウザの概要

「スナップショット」ブラウザでは、プロジェクト・スナップショットを作成および表示できます。

プロジェクト・スナップショットを使用すると、開発ライフサイクル内でプロジェクトに加えた変更の記録を保持できます。詳細は、7.3項「プロジェクト・スナップショットの使用」を参照してください。

4.3.6 「組織」ブラウザの概要

「組織」ブラウザでは、プロジェクト・ロールを作成および管理できます。

4.3.7 Oracle Business Process Composerのエディタの概要

エディタでは、ビジネス・カタログのプロセスやコンポーネントなど、Oracle BPMプロジェクトの様々な要素を使用できます。エディタは、Business Process Composerアプリケーションの中央に表示されます。

各エディタはBusiness Process Composerアプリケーションのタブ・ペインとして表示されるため、複数のリソースを同時に開くことができます。

以降の項では、Business Process Composerで使用できる様々なタイプのエディタについて説明します。

4.3.7.1 プロセス・エディタ

「プロセス」エディタでは、ビジネス・プロセスを表示および編集できます。「プロセス」エディタには、プロジェクト・ナビゲータからプロセスを開くとアクセスできます。

エディタ・ウィンドウには、コンポーネント・パレットも含まれます。実際に使用可能なコンポーネントは、次のようにプロジェクトによって異なります。

- プロジェクト・テンプレートに基づくプロジェクトでは、コンポーネント・パレットには、ビジネス・カタログからの要素およびBPMNフロー・オブジェクトが含まれます。これにはプロジェクト・テンプレートで定義したOracle Business Rules、サービス、ヒューマン・タスクが含まれます。

- Business Process Composerで作成された新規プロジェクトのコンポーネント・パレットには、BPMNフロー・オブジェクトとともに、作成したビジネス・カタログ要素が表示されます。サービスおよびヒューマン・タスクはBusiness Process Composerで直接作成できます。

詳細は、第5章「プロセスおよびプロセス・エディタの使用」を参照してください。

4.3.7.2 アクティビティ・ガイド・エディタ

アクティビティ・ガイド・エディタを使用すると、アクティビティ・ガイドのマイルストンを表示、作成および編集できます。「アクティビティ・ガイド」エディタにアクセスするには、「クイックスタート」メニューの「アクティビティ・ガイド」リンクをクリックします。4.6項「ガイド付きビジネス・プロセスを使用したプロジェクトのマイルストンの作成」を参照してください。

4.3.7.3 ヒューマン・タスク・エディタ

「ヒューマン・タスク」エディタを使用すると、ビジネス・カタログの一部として含まれるヒューマン・タスクを編集できます。詳細は、第11章「ヒューマン・タスクの使用」を参照してください。

4.3.7.4 ビジネス・ルール・エディタ

ビジネス・ルール・エディタを使用すると、Oracle Business Rulesを表示および編集できます。ビジネス・ルール・エディタには、プロジェクト・ナビゲータからビジネス・ルールを開くとアクセスできます。詳細は、8項「Oracle Business Rulesの使用」を参照してください。

4.3.7.5 データ・アソシエーション・エディタ

「データ・アソシエーション」エディタを使用すると、実装を含むフロー・オブジェクトの入力および出力を定義できます。「データ・アソシエーション」エディタにアクセスするには、ビジネス・プロセス内のフロー・オブジェクトを右クリックし、「データ・アソシエーション」を選択します。

「データ・アソシエーション」の使用方法は、10.2項「データ・オブジェクトおよびデータ・アソシエーションの使用」を参照してください。

4.3.7.6 式エディタ

式エディタを使用すると、データ・アソシエーションと条件シーケンス・フローで使用する式を定義できます。式の使用と式エディタへのアクセスの詳細は、10.4項「式の概要」を参照してください。

4.3.8 サポートされているブラウザおよびエディタの概要

Business Process Composerには、その他のプロジェクト・コンポーネントを表示および編集できる追加のエディタが用意されています。これらのエディタは、アプリケーション・ウィンドウの下部に表示されます。

注意:

これらのエディタはデフォルトでは表示されません。各ウィンドウに関連するアクションが実行された後に表示されます。ただし、Business Process Composerアプリケーションの右下隅にあるペインのリストアアイコンをクリックして手動で表示することもできます。

4.3.8.1 プロジェクトおよびプロセスの検証ブラウザ

プロジェクトおよびプロセスのブラウザには、個別のプロセスまたはプロジェクト全体の検証エラーが表示されます。プロジェクトの検証の詳細は、4.5.8項「プロジェクトを検証する方法」を参照してください。

4.3.8.2 ドキュメント・エディタ

ドキュメント・エディタを使用すると、プロセスについてのドキュメントを作成および編集できます。詳細は、5.7項「プロセスのドキュメント化」を参照してください。

4.3.8.3 承認ワークフロー・ブラウザ

承認ワークフロー・ブラウザには、承認ワークフロー内のプロジェクトのステータスが表示されます。承認者として定義されているすべてのユーザーは、プロジェクトを承認した後に、そのプロジェクトをOracle BPMランタイムにデプロイできます。詳細は、7.5項「プロジェクトのデプロイ」を参照してください。

4.4 他のユーザーとのプロジェクトの共有

Oracle BPMを使用して、他のBPCユーザーとプロジェクトを共有できます。共有プロジェクトはBPMリポジトリに格納されます。また、どのユーザーにプロジェクトを表示または編集するためのアクセス権があるかを制御できます。

4.4.1 プライベート・プロジェクトとパブリック・プロジェクト

プライベート・プロジェクトは、プロジェクト所有者のみが表示または編集できます。パブリック・プロジェクトは、プロジェクト所有者に加えて、適切な権限がある他のユーザーも表示または編集できます。

プロジェクトの共有方法については、4.5.5項「他のユーザーとプロジェクトを共有する方法」を参照してください。

4.4.2 編集モード

共有プロジェクトの編集モードによって、プロジェクトを変更できるかどうかが決定します。編集モードの値は次のとおりです:

- 読取り専用: プロジェクトは読取り専用で開きます。このモードでは、一部のプロジェクト機能が使用できません。

- 編集: プロジェクトは編集用に開きます。編集モードでは、プロジェクトを変更できます。プロジェクトが編集モードの場合は、プロジェクトを編集しているユーザーのみが変更を行うことができます。適切な権限がある他のユーザーは、プロジェクトを表示できますが、変更することはできません。
編集モードの設定方法については、4.5.6項「共有プロジェクトを編集する方法」を参照してください。

プロジェクトの現在の編集モードは、図4-2に示すように、「プロジェクト情報」ペインで確認できます。

4.4.3 プロジェクト・ロール

プロジェクト・ロールを使用して、どのユーザーにプロジェクトを表示および変更するためのアクセス権があるかを定義します。次の3タイプのプロジェクト・ロールが定義されています:

- 所有者: ユーザーがプロジェクトを作成すると、そのユーザーがプロジェクトの所有者になります。また、別のユーザーをプロジェクトの所有者として定義することもできます。プロジェクトの所有者は、次の操作を実行できます:

- プロジェクトのデプロイ

- プロジェクト・スナップショットの作成

- 他のユーザーとのプロジェクトの共有

- プロジェクトの削除

- エディタ: エディタはプロジェクトを変更できます。

- 表示者: 表示者はプロジェクトを表示できますが、変更することはできません。

4.5 プロジェクトの作成および使用

次の各項では、Oracle BPMプロジェクトの作成方法と使用方法について説明します。

4.5.1 プロジェクトのようこそページにアクセスする方法

プロジェクトのようこそページは、アプリケーションのようこそページからプロジェクトを開くと、デフォルトで表示されます。プロジェクト内のコンポーネントを編集しているときは、「プロジェクト・ホーム」タブをクリックしてプロジェクトのようこそページに戻ることができます。

4.5.2 新規プロジェクトを作成する方法

プロジェクト・ナビゲータを使用して、新規Oracle BPMプロジェクトを作成できます。新規プロジェクトを作成するには、その前に、既存のプロジェクト・テンプレートに基づいてプロジェクトを作成するか、新規にプロジェクトを作成するかを決定する必要があります。

新規プロジェクトはプロジェクト・テンプレートに基づいていません。これらのプロジェクトには、プロセス・アナリストが作成した基本的なビジネス・プロセスのみが含まれます。Business Process Composerを使用して新規プロジェクトを作成した後は、Oracle BPM Studioを使用してプロジェクトの実装を完了して、そのプロジェクトを公開したり、プロジェクト・テンプレートを作成することができます。

プロジェクト・ナビゲータを使用して新規プロジェクトを作成するには:

プロジェクト・ナビゲータを使用すると、新規プロジェクトを簡単に作成できます。プロジェクトを作成した後は、追加のプロジェクト・プロパティを編集できます。

1. Oracle Business Process Composerを起動します。

2. 図4-4に示すように、プロジェクト・ナビゲータから「新規プロジェクト」をクリックします。

図4-4 「新規プロジェクト」ダイアログ

「図4-4 「新規プロジェクト」ダイアログ」の説明

3. 「次へ」をクリックします。

4. プロジェクトの名前を入力し、「プロジェクトの作成」をクリックします。

メイン・メニューを使用して新規プロジェクトを作成するには:

メイン・メニューから新規プロジェクトを作成すると、プロジェクト・プロパティを構成できるとともに、プロジェクト・テンプレートを選択できます。

1. Oracle Business Process Composerを起動します。

2. メイン・メニューから、「新規」を選択し、次に「プロジェクト」を選択します。

3. プロジェクトの名前を入力します。

4. 次のオプション情報を入力します:

- 説明: プロジェクトの説明を入力します。

- フォルダ: プロジェクトを格納するBPMリポジトリ内でフォルダを指定できます。

- テンプレートの使用: プロジェクト・テンプレートに基づいて新規プロジェクトを作成します。「選択」をクリックして、プロジェクト・テンプレートを選択します。

5. ドロップダウン・リストからオプションのデプロイメント・オプションを選択します。

6. 「終了」をクリックすると新規プロジェクトが作成されます。

新規プロジェクトをテンプレートに基づいて作成した場合、プロジェクトは必要なプロセスおよびビジネス・カタログ要素が含まれた状態で作成されます。テンプレートを使用しないで新規プロジェクトを作成した場合、必要なプロセスを手動で追加する必要があります。

プロセスの作成および編集の詳細は、第5章「プロセスおよびプロセス・エディタの使用」を参照してください。

4.5.3 アプリケーションのようこそページを使用してプロジェクトを開く方法

アプリケーションのようこそページでプロジェクトの名前をクリックすると、プロジェクトを直接開くことができます。

4.5.4 メイン・メニューを使用してプロジェクトを開く方法

メイン・メニューを使用してプロジェクトを開くことができます。たとえば、メイン・メニューを使用すると、アプリケーションのようこそページに戻らずに、プロジェクト間を直接移動できます。

プロジェクトを開くには:

1. メイン・メニューから「開く」を選択し、次に「プロジェクトを開く」を選択します。

2. 開くプロジェクトを選択し、「OK」をクリックします。

4.5.5 他のユーザーとプロジェクトを共有する方法

BPMリポジトリを使用して、プロジェクトを他のBusiness Process Composerユーザーと共有できます。

プロジェクトをすべてのユーザーとパブリックに共有するには:

1. 共有するプロジェクトを開きます。

2. メイン・メニューから「共有」を選択します。

3. ドロップダウン・リストから共有の表示方法を選択します。

- プライベート

- チーム・メンバーのみ

- パブリック

4. 「共有」をクリックします。

5. 「OK」をクリックします。

特定のユーザーまたはグループとプロジェクトを共有するには:

1. 共有するプロジェクトを開きます。

2. メイン・メニューから「共有」を選択します。

3. プロジェクトを共有するグループのユーザーを指定します。

1. 「選択」をクリックします。

2. ドロップダウン・リストからスコープを選択します:
すべて:

ユーザー:

グループ:

3. 「検索」をクリックします。

4. 「使用可能」列からアイテムを選択し、「移動」をクリックします。

5. 「OK」をクリックします。

4. ドロップダウン・リストからロールを選択します。

- 所有者

- エディタ

- 表示者

5. 「共有」をクリックします。

6. 「閉じる」をクリックします。

4.5.6 共有プロジェクトを編集する方法

共有プロジェクトを開くと、デフォルトでは表示モードで開きます。プロジェクトの編集権限があり、プロジェクトが別のユーザーによってロックされない場合は、プロジェクトを編集できます。

プロジェクトの編集を開始するには:

編集を開始するには、プロジェクトのようこそページの上部にある「編集」をクリックします。

プロジェクトの編集モードを有効にすると、変更が可能になります。詳細は、第5章「プロセスおよびプロセス・エディタの使用」を参照してください。

4.5.7 プロジェクトへの変更を保存する方法

プロセスおよび他のプロジェクトのコンポーネントを編集するときは、プロジェクトへの変更を保存できます。変更はBPMリポジトリに直接保存されます。

現在のプロジェクトへの変更を保存するには:

1. 編集を続行する場合は、プロセス・エディタ・ツールバーで「保存」をクリックします。
各プロジェクト・コンポーネントの未保存の変更がすべて保存されます。プロジェクトは引き続きロックされており、編集を続行できます。

2. プロジェクトのロックを解放する場合は、プロセス・エディタ・ツールバーで「保存して解放」をクリックします。
各プロジェクト・コンポーネントの未保存の変更がすべて保存されます。プロジェクトの共有が有効な場合、権限がある他のBusiness Process ComposerユーザーおよびOracle BPM Studioユーザーはプロジェクトの編集を開始できます。変更を行うには、編集モードに切り替える必要があります。

4.5.8 プロジェクトを検証する方法

プロジェクトを検証すると、プロジェクトとプロセスのエラーを確認できます。Business Process Composerでは、エラー・ブラウザにこれらのエラーが表示されます。Business Process Composerには、プロジェクト用のエラー・ブラウザがプロセスごとに1つあります。

図4-5は、プロジェクト・エラー・ブラウザに表示されるエラーのタイプを示しています。

図4-5 プロジェクト・エラー・ブラウザ

「図4-5 プロジェクト・エラー・ブラウザ」の説明

プロジェクトを検証するには:

1. プロジェクトを開きます。

2. プロジェクトの編集中であることを確認します。

3. メイン・メニューから「プロジェクトの検証」を選択します。

プロジェクトの検証後、検出されたエラーが、プロジェクトまたはプロセスのエラー・ブラウザに表示されます。

注意:

エラーがあるプロジェクトはデプロイできません。プロジェクトをデプロイするには、エラーを修正する必要があります。

4.5.9 共有プロジェクトへの変更を破棄する方法

プロジェクト要素の編集中に、変更を元に戻し、プロジェクトの最新の公開済バージョンに戻すことができます。

現在のプロジェクトに対して行った変更を破棄するには:

1. メイン・メニューから「取消」を選択します。

2. 「OK」をクリックして、現在のプロジェクトに対する変更の破棄を確認します。

注意:

破棄した変更は復元できません。

4.5.10 プロジェクトを閉じる方法

プロジェクトを閉じるには、メイン・メニューから「プロジェクトを閉じる」を選択します。

4.5.11 プロジェクトに対する変更履歴を表示する方法

プロジェクトに対する主要な変更履歴を「最近のアクティビティ」ブラウザに表示できます。このブラウザには、次の内容を含む変更が表示されます:

- プロジェクトの作成

- リソースの変更

- プロセスまたはヒューマン・タスクの作成

プロジェクトの履歴を表示するには:

1. プロジェクトのようこそページにアクセスします。
プロジェクトの変更が「最近のアクティビティ」ペインに表示されます。

2. 特定の変更の詳細を表示するには、隣にある展開アイコンをクリックします。

4.5.12 プロジェクト・プロパティの表示方法と編集方法

プロジェクトのようこそページの「プロジェクト情報」ペインで、プロジェクト・プロパティを表示および編集できます。「プロジェクト情報」ペインは、図4-2に示されています。

このペインからは、プロジェクトの次のプロパティを編集できます:

- 説明: プロジェクトの説明を追加できます(オプション)。これは、他のユーザーとプロジェクトを共有する場合に役立ちます。

- 承認ワークフロー: プロジェクトの承認ワークフローを定義できます。詳細は、7.4項「プロジェクトの承認ワークフローの構成」を参照してください。

- イベントの生成: プロジェクト全体に対してサンプリング・ポイントを生成する方法を構成できます。サンプリング・ポイントを使用すると、実行中のプロセス内のフロー・オブジェクトのパフォーマンスに関する情報を生成できます。この構成に基づいて生成されたデータは、プロセス分析データベースに格納されます。
個々のフロー・オブジェクトのサンプリング・ポイント生成の設定については、付録A「共有プロパティ」を参照してください。サンプリング・ポイントについては、Oracle Fusion Middleware Business Process Managementのユーザーズ・ガイドを参照してください。

「プロジェクト情報」ペインからは、次のプロジェクト・プロパティを表示できます:

- 編集モード: プロジェクトの編集モードが表示されます。プロジェクトの編集モードの変更方法については、4.5.6項「共有プロジェクトを編集する方法」を参照してください。

- 共有: プロジェクトの共有構成が表示されます。

- プロジェクト言語: プロジェクト言語が表示されます。

4.5.13 プロジェクトをお気に入りとしてマークする方法

プロジェクトをお気に入りとしてマークすると、重要なプロジェクトや頻繁に使用するプロジェクトを特定できます。プロジェクト・ブラウザに、お気に入りとフラグが付いたプロジェクトのみを表示することもできます。

プロジェクトをお気に入りとしてマークするには、右上隅にある「プロジェクトをお気に入りとしてマーク」ボタンをクリックします。

4.6 ガイド付きビジネス・プロセスを使用したプロジェクトのマイルストンの作成

次の各項では、ガイド付きビジネス・プロセスおよびプロジェクトのマイルストンの使用方法について説明します。

4.6.1 ガイド付きビジネス・プロセスの概要

ガイド付きビジネス・プロセスは、プロセス・フローのガイド付き視覚表現を提供します。プロセス参加者にビジネス・プロセスのカプセル化された階層ビューを提供することによって、ユーザーの操作性を向上します。

プロセス設計者は、ガイド付きビジネス・プロセスを使用することによって、プロセス参加者がプロセスに関連付けられた一連のガイド付き手順に従ってビジネス・プロセスを完了できるように設定できます。ガイド付きビジネス・プロセスには手順の概要が示されます。この手順に従うことによって、プロセス参加者はより少ないトレーニングでビジネス・プロセスを完了できるようになり、プロセスの結果もより予測可能になります。

4.6.1.1 アクティビティ・ガイドおよびマイルストンの概要

ガイド付きビジネス・プロセスは、ビジネス・プロセスに基づいたアクティビティ・ガイドとしてモデリングされます。アクティビティ・ガイドには、一連のマイルストンが含まれています。マイルストンには、プロセス参加者が完了する必要がある一連のタスクが含まれています。マイルストンに含まれている一連のタスクをユーザーが正常に実行すると、マイルストンが完了します。

各マイルストンは、ヒューマン・ワークフロー・タスクの特定のセットです。各ヒューマン・ワークフロー・タスクは、それ自体が、様々なロールの複数の参加者のコラボレーションを必要とするタスク・フローである場合があります。タスク・フローの内容によっては、参加者は未完了のタスク・フローをいったん保存して、後でそのタスク・フローに戻ることもできます。

4.6.2 アクティビティ・ガイドの構成方法およびプロジェクトのマイルストンの作成方法

Business Process Composerを使用すると、ガイド付きビジネス・プロセスを構成して、それらにマイルストンを追加できます。

プロジェクトのアクティビティ・ガイドを構成するには:

1. プロジェクトを開きます。

2. 「クイックスタート」メニューから「アクティビティ・ガイド」を選択します。
「アクティビティ・ガイド」エディタが表示されます。

3. アクティビティ・ガイドのタイトルを入力します。

4. 次のオプションのプロパティを構成します。

- 表示モード: ガイド付きビジネス・プロセス内のマイルストンおよびタスクにおけるリンクの表示方法を指定します。マイルストンおよびタスクで他の構成が使用される場合は、ガイド付きビジネス・プロセスの構成は無視されます。
可能な値は次のとおりです。

- 常時: このガイド付きビジネス・プロセスのすべてのマイルストンで、マイルストンおよびタスクのリンクを常に表示します。

- インスタンス化時: ガイド付きビジネス・プロセスのすべてのマイルストンで、マイルストンの1つ以上のユーザー・タスクがインスタンス化されているときにのみ、マイルストンおよびタスクのリンクを表示します。

- タスク・アクセス: タスクが完了した後、ガイド付きビジネス・プロセスではこの構成を使用してリンクが表示されます。タスク・モードが「アクティブのみ」の場合は、タスクのリンクがグレー表示されます。タスク・モードが「任意の状態」の場合は、タスクのリンクは有効なままになり、タスクを実行するときにメッセージが表示されます。
可能な値は次のとおりです。

- アクティブのみ: タスクへのリンクは、タスクがアクティブであり、ユーザーが更新可能なときにのみ有効になります。タスクを完了すると、タスクへのリンクはグレー表示されます。

- 任意の状態: タスクへのリンクは、タスクをインスタンス化した後は常に有効になります。タスクを完了した後でも有効なままです。

- ルート・プロセス: このアクティビティ・ガイドに使用されるプロセスを指定します。BPMプロジェクトごとに、1つのガイド付きビジネス・プロセスのみを定義できます。このプロセスが、ルート・プロセスです。

- 説明: アクティビティ・ガイドのオプションの説明を指定します。

5. プロジェクト・ツールバーで「保存」をクリックします。

新しいマイルストンを作成する手順は、次のとおりです。

1. 「新規マイルストンをクリックします。

2. リストから、今作成したマイルストンを選択します。

3. 必要に応じて、マイルストンを構成します。

4. プロジェクト・ツールバーで「保存」をクリックします。

マイルストンにユーザー・タスクを追加するには:

1. マイルストンを追加するプロセスを開きます。

2. マイルストンに追加するユーザー・タスクを右クリックします。

3. リストからマイルストンを選択して、「OK」をクリックします。

4.7 プロジェクトで使用するロールの定義

この項では、プロジェクト・ロールの作成方法を説明します。

4.7.1 プロジェクト・ロールの概要

プロジェクト・ロールをビジネス・プロセス内で使用して、ビジネス・プロセスでの作業の実行を担当するユーザーまたはグループをモデリングします。ロールを使用すると、組織内の職務や責任を表す機能上のカテゴリを定義できます。Business Process Composerを使用すると、プロセス内で必要なロールを作成および編集して、それらをスイムレーンに割り当てることができます。プロジェクトがランタイムにデプロイされると、プロジェクト・ロールは実際の組織のユーザーやグループにマップされます。BPM StudioまたはOracle Business Process Management Workspaceを使用すると、プロジェクト・ロールのより詳細なマッピングおよび構成を実行できます。

プロジェクト・ロールはプロジェクト全体に対して定義されます。これによって、プロジェクト内のすべてのプロセスでプロジェクト・ロールを共有できます。プロセス内では、ロールは水平スイムレーンに割り当てられます。

4.7.2 プロジェクト・ロールの使用

次の手順では、プロジェクト・ロールを作成および削除する方法を説明します。

プロジェクト・ロールを作成するには:

1. プロジェクトのようこそページにアクセスします。

2. 「組織」を展開し、「追加」アイコンをクリックします。

3. 新規ロールの名前を入力し、「ロールの追加」をクリックします。

プロジェクト・ロールを削除するには:

1. プロジェクトのようこそページにアクセスします。

2. 「組織」を展開します。

3. 削除するロールを選択し、「削除」アイコンをクリックします。

5
プロセスおよびプロセス・エディタの使用

この章では、Oracle BPMでビジネス・プロセスを作成および使用する方法について説明します。ここではビジネス・プロセスの全般的な概要を示し、プロセス・エディタ・ウィンドウについて説明します。また、プロセスを作成および使用する手順についても説明します。

Business Process Management Notation (BPMN)を使用してビジネス・プロセスを設計する方法の詳細は、第6章「Oracle BPMを使用したビジネス・プロセスのモデリング」を参照してください。

この章の内容は次のとおりです。

- 5.1項「ビジネス・プロセスの概要」

- 5.2項「プロセス・エディタの概要」

- 5.3項「ビジネス・プロセスの使用」

- 5.4項「フロー要素の使用」

- 5.5項「ビジネス・カタログのコンポーネントの使用」

- 5.6項「ドラフト・プロセスの使用」

- 5.7項「プロセスのドキュメント化」

- 5.8項「プロセス・モデルのインポートおよびエクスポート」

5.1 ビジネス・プロセスの概要

ビジネス・プロセスは、明確な出力を生成する一連のタスクとして定義できます。ビジネス・プロセスは、Oracle BPM Suiteで作成されたプロセスベースのビジネス・アプリケーションのコア・コンポーネントです。

ビジネス・アプリケーションのすべてのリソースを含む上位レベルのラッパーがプロジェクトであり、アプリケーションの動作はプロジェクト内のプロセスによって決定されます。このフローは様々なBPMNフロー・オブジェクトによって決定されます。

ビジネス・プロセスは一般にプロセス・アナリストによって作成されます。プロセス・アナリストは、対処が必要なビジネス要件を特定して、対応するプロセス・フローを定義します。

ビジネス・プロセスには様々なタイプがあり、このタイプによって、プロセスが他のプロセスに関連してどのように動作するかが決定されます。これらについて、表5-1で説明します。

注意:

デフォルトでは、新規ビジネス・プロセスは同期です。新規プロセスを作成した後は、そのプロセスを編集してタイプを変更できます。

表5-1 ビジネス・プロセスのタイプ

プロセス・タイプ

説明

同期サービス

同期サービスは、他のプロセスまたはサービスから同期的に起動できるプロセスです。同期サービスでは、コール側プロセスは、起動されたプロセスが完了するまで待ってから続行します。

非同期サービス

非同期サービスは、他のプロセスまたはサービスから非同期的に起動できるプロセスです。非同期サービスでは、コール側プロセスは、起動されたプロセスが完了するまで待たずに続行します。

手動プロセス

手動プロセスは、ユーザー相互作用を必要とするプロセスです。手動プロセスは開始イベントおよび終了イベントなしで開始および終了します。

再使用可能なプロセス

再使用可能なプロセスは、コール・アクティビティを使用してBPMNプロセスがコールできるプロセスです。

5.2 プロセス・エディタの概要

プロセス・エディタは、BPMNフロー・オブジェクトを追加することでビジネス・プロセスを作成できるグラフィカル・エディタです。BPMNフロー・オブジェクトは、コンポーネント・パレットからプロセス・エディタにドラッグできます。

図5-1は、プロセス・エディタのタブの例を示しています。

図5-1 プロセス・エディタ・ウィンドウ

「図5-1 プロセス・エディタ・ウィンドウ」の説明

Business Process Composerで同じプロジェクト内にある複数のプロセスを同時に開くことができます。各プロセスはエディタ・ウィンドウ内の専用タブで開きます。

プロセス・エディタの様々な領域について以降の項で説明します。

5.2.1 プロセス・エディタ・ツールバーの概要

プロセス・エディタ・ウィンドウにはツールバーがあり、このツールバーを使用してBusiness Process Composerの機能(表5-2を参照)にアクセスできます。

表5-2 プロセス・エディタのメニュー

メニュー項目

説明

元に戻す

プロセスに対して実行した直前の変更を元に戻します。

再実行

直前に実行した元に戻すアクションを再実行します。

切取り

選択したアイテムを切り取り、クリップボードにコピーします。

コピー

選択したアイテムをクリップボードにコピーします。

貼付け

現在クリップボードにあるアイテムを貼り付けます。

削除

選択した要素をプロセスから削除します。

自動レイアウト

プロセスのレイアウトを自動的に調整します。

グリッド表示の切替え

プロセス・エディタ・ウィンドウのグリッドを表示または非表示にします。

グリッドにスナップ

フロー・オブジェクトの中心が最も近いグリッド軸に整列されます。既存のフロー・オブジェクトは自動的に整列されます。新規のフロー・オブジェクトを追加している場合は、そのオブジェクトが追加されるときに自動的に整列されます。

このボタンは、グリッド表示の切替えが有効になっている場合にのみアクティブになります。

印刷

ブラウザのプリンタの設定を使用してプロセスを印刷します。

会話の編集

会話エディタを開きます。プロセス開発者はこのエディタを使用して、入力および出力データ・オブジェクトの決定に使用するインタフェースを定義できます。

プロセス使用方法の検索

現在のプロジェクト内にある他のプロセスが現在のプロセスを呼び出すかどうかを決定します。

コラボレーションの表示

プロセス・エディタをコラボレーション・ビューに切り替えます。

ズーム・スライダ

プロセスにズーム・インおよびプロセスからズーム・アウトします。

5.2.2 プロセス・エディタ・キャンバスの概要

プロセス・エディタ・キャンバスは、プロセス・エディタ・ウィンドウの中央の領域です。この領域では、BPMNフロー・オブジェクトを使用して、プロセスのグラフィカル表示を作成できます。プロセス・エディタ・キャンバスにはプロセス・フロー以外にスイムレーンも表示されます。

5.2.3 BPMNコンポーネント・パレットの概要

エディタ・ウィンドウ内に表示されるコンポーネント・パレットを使用して、BPMNシーケンス・フローおよびビジネス・カタログ要素をプロセスに追加できます。図5-2は、コンポーネント・パレットを示しています。

図5-2 コンポーネント・パレット

「図5-2 コンポーネント・パレット」の説明

コンポーネント・パレットを使用して、アーティファクトをプロセス・エディタ・ウィンドウにドラッグ・アンド・ドロップできます。

注意:

コンポーネント・パレットは、プロジェクト編集モードに切り替えるまでグレー表示されています。

コンポーネント・パレットを使用すると、BPMN要素を次のグループに分類できます:

- アクティビティ

- 対話型

- ゲートウェイ

- 捕捉イベント

- スロー・イベント

- ノート

- 測定

Business Process Composerには、フロー・オブジェクトをプロセスに追加するために、次の2つのモードが用意されています:

- 単一オブジェクト・モード: 一度に1つのフロー・オブジェクトを追加できます。このモードでは、図5-3に示すように、青い円内に「1」と表示されます。

図5-3 単一オブジェクト入力モード

「図5-3 単一オブジェクト入力モード」の説明

- 複数オブジェクト・モード: 同じタイプの複数のフロー・オブジェクトを簡単に追加できます。このモードでは、青い円内に「N」と表示されます。

青い円をクリックすると、2つのモード間で切り替えることができます。

5.2.4 ビジネス・カタログの概要

このパネルでは、ビジネス・カタログから再使用可能なサービスを選択できます。図5-4は、ビジネス・カタログを示しています。

図5-4 ビジネス・カタログ

「図5-4 ビジネス・カタログ」の説明

これらのサービスは次のカテゴリに従ってグループ化できます。

- サービス

- 外部参照

- ヒューマン・タスク

- ビジネス・ルール

注意:

外部参照およびビジネス・ルールは、Business Process Composerでは作成できません。これらはOracle BPM Studioで作成され、プロジェクト・テンプレートまたはOracle BPM Studioで共有される任意のプロジェクトの一部として組み込まれています。

Business Process Composerを使用して、Webサービスに基づくサービスを作成できます。ただし、アダプタや他のSOAコンポーネントに基づくサービスは、Oracle BPM Studioで作成し、プロジェクト・テンプレートまたは共有プロジェクト内に組み込む必要があります。

Business Process Composerを使用して、ビジネス・カタログから対応するフロー・オブジェクトに再使用可能サービスを割り当てることができます。

詳細は、4.1.1.2項「ビジネス・カタログ」を参照してください。

5.3 ビジネス・プロセスの使用

次の各項では、ビジネス・プロセスを作成したり削除する方法、および開く方法について説明します。

5.3.1 新規のビジネス・プロセスを作成する方法

ビジネス・プロセスはOracle BPMプロジェクト内に作成されます。1つ以上のプロセスをプロジェクトに追加できます。

新しいビジネス・プロセスを作成するには

1. プロジェクトのようこそページにアクセスします。

2. 共有プロジェクトを編集する場合は、現在そのプロジェクトを編集中であることを確認します。

3. 「プロセス」をクリックし、次に「新規プロセス」をクリックします。

4. プロセスの名前を入力し、「作成」をクリックします。

新規プロセスがプロセスのリストに表示されます。

新規ビジネス・プロセスは、デフォルト・シーケンス・フローで接続されている開始および終了イベントを使用して作成されます。デフォルトでは、開始イベントと終了イベントの両方にメッセージ・トリガー・タイプが含まれています。

詳細は、6.2項「プロセスの開始点および終了点の定義」を参照してください。

5.3.2 ビジネス・プロセスを開く方法

Oracle BPMプロジェクトを開いた後、このプロジェクトに含まれる任意のプロセスを開くことができます。プロセスはプロセス・エディタ・ウィンドウで開きます。

ビジネス・プロセスを開くには

1. プロジェクトのようこそページにアクセスします。

2. 「プロセス」をクリックします。

3. 開くプロセスの名前をクリックします。

プロセス・エディタ・ウィンドウでプロセスが開きます。プロセスを編集する前に、編集モードであることを確認する必要があります。

5.3.3 ビジネス・プロセスを削除する方法

プロジェクトからプロセスを削除できます。

プロジェクトのビジネス・プロセスを削除するには:

1. プロジェクトを開きます。

2. プロジェクトのようこそページにアクセスします。

3. 「プロセス」をクリックします。

4. 削除するプロセスの名前にカーソルを移動します。

5. 「削除」アイコンをクリックし、「OK」をクリックします。

5.3.3.1 ビジネス・プロセスの削除に関する注意事項

プロセスを削除するときは、削除するプロセスへの参照がプロジェクト内の他の部分に残っていないことを確認する必要があります。たとえば、削除するプロセスが別のプロセスからメッセージ・スロー・イベントを通じて起動されていた場合は、削除するプロセスを参照しないように呼び出し側プロセスを再構成したことを確認する必要があります。削除するプロセスへの参照が残っている場合は、検証時にエラーが表示されます。

5.4 フロー要素の使用

この項では、プロセス・エディタを使用してプロセスにフロー要素を追加する方法の基本メカニズムについて説明します。BPMN 2.0を使用したビジネス・プロセスの設計の詳細は、第6章「Oracle BPMを使用したビジネス・プロセスのモデリング」を参照してください。

5.4.1 コンポーネント・パレットからフロー・オブジェクトを追加する方法

フロー・オブジェクトは、コンポーネント・パレットからプロセス・エディタ・キャンバスにドラッグすることによって、プロセスに追加できます。

コンポーネント・パレットからフロー要素を追加するには:

1. フロー要素を追加するプロセスを開きます。

2. 編集モードであることを確認します。

3. コンポーネント・パレットで、追加するフロー・オブジェクトのタイプをダブルクリックします。

4. 使用するオブジェクト入力モードを選択します。
単一のフロー・オブジェクトを入力するか、または同じタイプの複数のフロー・オブジェクトを入力するかを選択できます。詳細は、5.2.3項「BPMNコンポーネント・パレットの概要」を参照してください。

5. 追加するフロー・オブジェクトをクリックし、このフロー・オブジェクトを配置するプロセス・エディタ・キャンバス内の領域にドラッグします。
カーソルに、フロー・オブジェクトのタイプに関連付けられているアイコンが表示されます。

6. フロー・オブジェクトを追加するプロセス内のポイントにカーソルを置いてから、マウスをクリックします。
複数オブジェクト・モードで作業している場合は、引き続きプロセス・エディタ・キャンバス内をクリックして、同じタイプのフロー・オブジェクトを追加できます。

注意:

シーケンス・フローにカーソルを置くと、Business Process Composerによって、新規フロー・オブジェクトの受信シーケンス・フローと送信シーケンス・フローが自動的に作成されます。

5.4.2 フロー・オブジェクトの切取り、コピーまたは削除を行う方法

プロセス・エディタ・ウィンドウ内で、フロー・オブジェクトの切取り、コピーまたは削除を行うことができます。

フロー・オブジェクトの切取り、コピーまたは削除を行うには:

1. 切取り、コピーまたは削除を行うフロー・オブジェクトまたはシーケンス・フローを選択します。

2. プロセス・エディタ・ツールバーから「切取り」、「コピー」または「削除」を選択します。

注意:

受信シーケンス・フローおよび送信シーケンス・フローを含むフロー・オブジェクトの切取りまたは削除を行うと、Business Process Composerによって、そのフロー・オブジェクトが送信シーケンス・フローに自動的に接続されます。ただし、周囲のフロー・オブジェクトを手動で再構成する必要が生じる場合があります。

5.4.3 プロセスにフロー・オブジェクトを貼り付ける方法

事前に切取りまたはコピーしたフロー・オブジェクトを貼り付けることができます。

プロセスにフロー・オブジェクトを貼り付けるには:

1. フロー・オブジェクトを貼り付けるプロセス・エディタ・キャンバスの領域で右クリックします。

2. 「貼付け」を選択します。

5.4.4 プロセスにシーケンス・フローを追加する方法

シーケンス・フローでは、プロセスにおいて作業が実行される順序、つまりシーケンスを定義します。詳細は、6.6項「シーケンス・フローを使用したプロセス・フローの制御」を参照してください。

プロセスにシーケンス・フローを追加するには:

1. プロセスを開きます。

2. 送信シーケンス・フローを作成するフロー・オブジェクトにカーソルを移動します。

3. 「シーケンス・フローの追加」ボタンをクリックします。
このボタンは、フロー・オブジェクトに送信シーケンス・フローが含まれていない場合のみ表示されます。

4. 接続するフロー・オブジェクトにカーソルを移動してクリックします。

5.4.5 シーケンス・フローを削除する方法

BPMNプロセスからシーケンス・フローを削除できます。

プロセスからシーケンス・フローを削除するには:

1. プロセス・エディタ・キャンバスで、削除するシーケンス・フローを右クリックします。

2. 「削除」を選択します。

5.4.5.1 シーケンス・フローの削除に関する注意事項

プロセスからシーケンス・フローを削除すると、そのシーケンス・フローに対して構成した実装の詳細はすべて失われます。

5.4.6 フロー・オブジェクトのプロパティを編集する方法

シーケンス・フローの基本プロパティを編集できます。

フロー・オブジェクトのプロパティを編集するには:

1. プロパティを編集するフロー・オブジェクトを右クリックします。

2. 「プロパティ」を選択します。

3. フロー・オブジェクトのプロパティを編集します。

4. プロパティの編集を終了した後は、「プロパティ」ダイアログ・ウィンドウの外側をクリックします。
変更内容が自動的に保存され、ダイアログ・ウィンドウが閉じます。

5.4.7 カスタム・アイコンをフロー・オブジェクトに割り当てる方法

Business Process Composerでは、カスタム・アイコンを選択して、フロー・オブジェクトのデフォルトのBPMNアイコンと置き換えることができます。Oracle BPMで提供されているカスタム・アイコンのリストから選択できます。

カスタム・アイコンをフロー・オブジェクトに割り当てるには:

1. フロー・オブジェクトを右クリックし、「プロパティ」を選択します。

2. 「変更」をクリックし、使用するアイコンを選択します。

3. 「プロパティ」ウィンドウの外側をクリックすると、変更内容が適用されます。

5.5 ビジネス・カタログのコンポーネントの使用

次の各項では、Business Process Composerでビジネス・カタログを使用する際に必要な情報について説明します。ビジネス・カタログの詳細は、4.1.1.2項「ビジネス・カタログ」を参照してください。

5.5.1 ビジネス・カタログ・コンポーネントをフロー・オブジェクトに割り当てる方法

Business Process Composerを使用してビジネス・カタログのコンポーネントをフロー・オブジェクトに割り当てることにより、フロー・オブジェクトの実装の詳細を構成できます。

次のフロー・オブジェクトにビジネス・カタログのコンポーネントを割り当てることができます:

- ビジネス・ルール・タスク

- サービス・タスク

- ユーザー・タスク

- メッセージ・イベントと受信タスク

ビジネス・カタログのコンポーネントをフロー・オブジェクトに割り当てるには:

1. プロセスを開きます。

2. ビジネス・カタログのコンポーネントを追加するフロー・オブジェクトを右クリックします。

3. 「実装」を選択します。

4. 「参照」を選択し、リストからビジネス・カタログのコンポーネントを選択します。

5. 「OK」をクリックします。

6. 「変更の適用」をクリックします。

注意:

フロー・オブジェクトの実装に対する変更内容を保存するには、「変更の適用」をクリックする必要があります。プロジェクトを保存しても、「変更の適用」をクリックしないと実装の変更内容は保存されません。

5.5.2 ビジネス・カタログで新しいヒューマン・タスクを作成する方法

ビジネス・カタログ内に新しいヒューマン・タスクを作成できます。詳細は、第11章「ヒューマン・タスクの使用」を参照してください。

ヒューマン・タスクを作成したら、それをプロセス内のユーザー・タスクに割り当てることができます。BPMNプロセス内でのヒューマン・タスクの使用については、6.3項「プロセスへのユーザー相互作用の追加」を参照してください。

5.6 ドラフト・プロセスの使用

Oracle BPMを使用して、ドラフト・プロセスを作成およびデプロイできます。

5.6.1 ドラフト・プロセスの概要

ドラフト・プロセスとは、実装が未定義のフロー・オブジェクトを1つ以上含むプロセスです。ドラフト・プロセスをデプロイすると、プロセス内で完了している部分をテストできるため、すべてのフロー・オブジェクトが実装されるのを待機する必要がありません。ドラフト・プロセスを作成するには、プロセス内の1つ以上のフロー・オブジェクトをドラフトとしてマークします。

フロー・オブジェクトをドラフトとして構成すると、そのフロー・オブジェクトのデータ・アソシエーションは構成できません。すでにデータ・アソシエーションを割り当てたフロー・オブジェクトをドラフトとしてマークすると、データ・アソシエーションは失われます。

ドラフト・フロー・オブジェクトの実装の詳細を定義できます。ただし、これは必須ではありません。ドラフト・フロー・オブジェクトに実装が定義されていなくても、プロジェクトの検証時にエラーは発生しません。

ドラフト・フロー・オブジェクトを含むプロジェクトをデプロイすると、定義されている実装の詳細は無視されます。たとえば、ドラフトとしてマークされたユーザー・タスクがプロセスに含まれている場合、そのプロセスでは関連付けられたヒューマン・タスクのインスタンスがランタイム時に作成されません。

5.6.2 フロー・オブジェクトをドラフトとしてマークする方法

フロー・オブジェクト実装のプロパティを編集することによって、フロー・オブジェクトをドラフトとしてマークできます。

フロー・オブジェクトをドラフトとしてマークするには:

1. プロセスを開きます。

2. フロー・オブジェクトを右クリックし、「実装」を選択します。

3. 「ドラフト」の隣にあるチェック・ボックスを選択します。

4. 「変更の適用」をクリックします。

5.7 プロセスのドキュメント化

Oracle BPMでは、ドキュメント・エディタを使用してプロセスのドキュメントを作成できます。プロセス全体のドキュメント、およびプロセス内の個々のフロー・オブジェクトのドキュメントを追加できます。

Oracle BPMでは、別々の2つのタイプのドキュメントを作成できます。

- エンド・ユーザー: プロセスのエンド・ユーザーがプロセス・ワークスペース・アプリケーションを使用して入手できるドキュメントです。

- 内部(ユースケース): 他のプロセス・アナリストや開発者が後でプロセスを修正する場合に、プロセスの理解を助けるためのドキュメントです。
プロセス内のアクティビティ、イベントおよびゲートウェイごとにユースケース・ドキュメントを定義できます。

注意:

シーケンス・フローまたは測定マークのドキュメントは作成できません。

5.7.1 ドキュメント・エディタの概要

ドキュメント・エディタには、ツールバーおよびプロセスのドキュメントを入力できるエディタ・ペインが含まれています。

図5-5 ドキュメント・エディタ

「図5-5 ドキュメント・エディタ」の説明

5.7.1.1 ドキュメントへのリンクの挿入

ドキュメントにリンクを追加する場合、リンク部分として完全なURLを含める必要があります。たとえば、外部リンクは単にwww.oracle.comではなく、http://www.oracle.comとして参照する必要があります。

5.7.2 ドキュメントをプロセスに追加する方法

Business Process Composerでは、プロセスおよびプロセス内のフロー・オブジェクトにドキュメントを追加できます。

プロセスにドキュメントを追加するには:

1. プロセスを開きます。

2. ペインのリストアをクリックして、ドキュメント・エディタを表示します。ペインのリストア・アイコンはBusiness Process Composerアプリケーションの右下隅にあります。

3. 「ドキュメント」タブをクリックしてから、プロセスのタブを選択します。

4. 「ドキュメント・タイプ」ドロップダウン・メニューから、作成するドキュメントのタイプを選択します。

5. エディタ・ウィンドウでドキュメントを入力します。

6. 「適用」をクリックして、変更を保存します。

注意:

別のプロセスまたはプロセス要素を選択する前に、変更を適用する必要があります。変更を適用する前にドキュメント・エディタ以外の機能にナビゲートすると、その変更は保存されません。

プロセス内の特定のフロー・オブジェクトにドキュメントを追加するには:

1. ドキュメントを追加するプロセスを開きます。

2. ドキュメントを追加するフロー・オブジェクトを右クリックし、「プロパティ」を選択します。

3. 「プロパティ」ダイアログ・ボックスで、「ドキュメント」をクリックします。

4. 「ドキュメント・タイプ」ドロップダウン・メニューから、作成するドキュメントのタイプを選択します。

5. エディタ・ウィンドウでドキュメントを入力します。

6. 「適用」をクリックして、変更を保存します。

注意:

別のプロセスまたはプロセス要素を選択する前に、変更を適用する必要があります。変更を適用する前にドキュメント・エディタ以外の機能にナビゲートすると、その変更は保存されません。

5.7.3 プロセスにノートを追加する方法

プロセスを簡単に理解できるように、プロセスにノートを追加できます。

プロセスにノートを追加するには:

1. プロセスを開きます。

2. 編集モードであることを確認します。

3. BPMNコンポーネント・パレットで、「ノート」アイコンをクリックし、ノートを追加するプロセス内のポイントにドラッグします。

4. テキストを編集するノートをダブルクリックします。

5. ノートのテキストを入力してから、ノートの外側をクリックして終了します。

5.8 プロセス・モデルのインポートおよびエクスポート

Business Process Composerを使用すると、他のプログラムに作成されたプロセス・モデルをインポートおよびエクスポートすることができます。

5.8.1 プロセス・モデルのOracle BPMへのインポート

Business Process Composerでは、プロセス・モデルをインポートして、BPMN表記に変換できます。プロセス・モデルのインポートは次の形式で行うことができます。

- Visio

- ワークフロー

- XPDL

- Oracle Tutor(ファイルは拡張子.docxで保存されます)

VisioプロセスやXPDLプロセスを変換する場合は、正しく変換されるように、変換前にプロセスを変更する必要がある場合があります。詳細は、付録B「BPMNにインポートするためのプロセスの準備」を参照してください。

注意:

元のファイルにBPMNでサポートされていないプロパティおよびアーティファクトが含まれている場合は、サポートされていない要素は変換されず、BPMNの最終プロセスから省略されます。

たとえば、元のファイルで定期的なアクティビティにBPMNでサポートされていないloop文字が含まれている場合、変換後BPMNプロセスにはloop文字は含まれません。

プロセス・モデルをインポートするには:

1. メイン・メニューの「インポート」を選択し、「モデルのインポート」を選択します。

2. ローカル・ファイル・システムでインポートするファイルを参照し、「OK」をクリックします。

3. VisioファイルまたはXPDLファイルをインポートする場合は、次のいずれかを選択します。

- 各プールから個別のモデルを作成

- プールを1つのモデルにマージ

このダイアログは、元のファイルに複数のプールが含まれていない場合でも表示されます。

4. 「OK」をクリックします。

プロジェクトのようこそページから、新しく作成されたBPMNプロセスを参照できます。

5.8.2 BPMNプロセスのOracle Tutorへのエクスポート

Business Process Composerを使用すると、BPMNプロセスをOracle Tutorにエクスポートできます。これらのファイルはMicrosoft Word(.docx)ファイルとしてエクスポートされ、Oracle Tutorの書式設定が含まれています。

BPMNプロセスをOracle Tutorにエクスポートするには:

1. メイン・メニューの「エクスポート」を選択し、Wordにエクスポートを選択します。

2. 次の中から選択します。

- アクティブ・プロセス

- 開かれているすべてのプロセス:

- プロジェクトのすべてのプロセス:

変換されたプロセスは.zipファイル形式でローカル・ファイル・システムにダウンロードされます。

3. 「保存」をクリックします。

エクスポートされたプロセスを表示するには、.zipファイルを展開する必要があります。個々のプロセス・ファイルには、変換時に変更されたすべてのオブジェクトについての変換ノートが含まれています。

6 Oracle BPMを使用したビジネス・プロセスのモデリング

この章では、Oracle Business Process Management Suite内部でBusiness Process Management Notation and Modeling (BPMN)を使用して、ビジネス・プロセスを作成およびモデリングする方法について説明します。

この章では、オラクル社のBPMN 2.0の実装に関する具体的な情報について説明します。営業見積サンプル・プロジェクトを使用したBPMNの概要説明については、第2章「ビジネス・プロセス設計の概要」を参照してください。正式な仕様を含むBPMNの一般的な情報については、http://www.bpmn.orgを参照してください。

この章は、ビジネス・プロセスで実行する必要がある様々なタイプのタスクで構成されています。この章には次の項が含まれます。

- 6.1項「スイムレーンを使用したプロセスの整理」

- 6.2項「プロセスの開始点および終了点の定義」

- 6.3項「プロセスへのユーザー相互作用の追加」

- 6.4項「他のプロセスおよびサービスとの通信」

- 6.5項「Oracle Business Rulesを使用したビジネス・ロジックの追加」

- 6.6項「シーケンス・フローを使用したプロセス・フローの制御」

- 6.7項「ゲートウェイを使用したプロセス・フローの制御」

- 6.8項「中間イベントを使用したプロセス・フローの制御」

- 6.9項「サブプロセスおよびインライン・ハンドラを使用したプロセスの整理」

- 6.10項「プロセス内のデータ・オブジェクトの値の変更」

- 6.11項「測定マークを使用したプロセス・パフォーマンスの測定」

6.1 スイムレーンを使用したプロセスの整理

この項では、スイムレーンを使用してプロセスを整理する方法を示します。また、ロールを使用してプロセスベースのアプリケーションの作業を実行するビジネス組織のメンバーを決定する方法についても説明します。

6.1.1 ロールの概要

ビジネス・プロセスの設計においては、ユーザー相互作用を必要とする各タスクを完了させる責任を負うユーザーおよびロールを決定することが重要となります。プロセスにおいて、ロールは、ビジネス・プロセス内で実行される作業の実行責任者をモデリングするために使用されます。ロールを使用すると、組織内の職務や責任を表す機能上のカテゴリを定義できます。

また、プロセスに定義されたロールは、論理ロールとも呼ばれます。Oracle BPMプロジェクトがランタイム環境にデプロイされると、これらのロールは、実際の組織におけるユーザーに対応するLDAPロールにマップされます。

ロールは水平のスイムレーンに割り当てられます。スイムレーンには、プロセス内のアクティビティおよびタスクを完了する責任を負うロールが表示されます。Business Process Composerを使用すると、プロセス内で必要なロールを作成および編集して、それらをスイムレーンに割り当てることができます。

Oracle BPM Studioを使用すると、LDAPを使用する特定のユーザーにロールをマップすることもできます。また、Oracle BPM Studioでは、組織単位、カレンダおよび休日を使用して、より堅牢な組織モデルを作成できます。詳細は、Oracle BPMモデリングおよび実装ガイドを参照してください。

6.1.1.1 コンテキスト内のロール

プロセス・アナリストは、ビジネス・プロセスを設計するときにどのようなロールが必要となるかを決定します。

営業見積サンプルでは、次のロールが定義されています。

- 営業担当者: 営業担当者は、プロジェクトに定義された他のロールによって承認されるまでの間における、営業見積の作成および更新を担当します。

- 承認者: 承認者は、営業見積で定義された製品と価格設定構成の組合せの承認を担当します。

- ビジネス実行: このロールは、営業見積の参照および承認を担当するユーザーを表します。これらのユーザーは、営業見積のレビューにおいて、追加の承認者を追加する権限も持っています。

- 契約: このロールは、営業見積に指定された条項の承認を担当するユーザーを表します。これらのユーザーは、顧客に転送可能な正式な法的文書の作成も担当します。

営業見積サンプル・プロジェクトの詳細は、2.2項「営業見積サンプルの概要」を参照してください。

6.1.2 スイムレーンの概要

スイムレーンは、プロセス・エディタを横方向に走る水平線です。すべてのフロー・オブジェクトは、スイムレーン内に配置する必要があります。

また、スイムレーンを使用して、プロセス内で定義されているロールに基づいてフロー・オブジェクトをグループ化することもできます。ユーザー・タスクを含むスイムレーンには、ロールを割り当てる必要があります。スイムレーンは、プロセス内の各フロー・オブジェクトを実行するロールを視覚的に表示します。また、複数のスイムレーンを同じロールに割り当てることができます。

同じプロセスの様々な部分で同じロールを使用する必要がある場合、スイムレーンを使用することでプロセスが読みやすくなります。

新しいプロセスを作成すると、Oracle BPM StudioおよびBusiness Process Composerによってデフォルトのスイムレーンが作成されます。必要に応じて、プロセスに追加のスイムレーンを追加できます。プロセスに対話型アクティビティや手動アクティビティを追加する場合は、スイムレーンにロールを割り当てる必要があります。

注意:

プロセスの開始イベントまたは終了イベントのみを含むスイムレーンは削除できません。

6.1.2.1 コンテキスト内のスイムレーン

図6-1は、複数のスイムレーンにスプリットされた単純なプロセスを示しています。この例では、営業担当者ロールが最初のスイムレーンに割り当てられています。このスイムレーン内には見積入力ユーザー・タスクが表示されているため、営業担当者ロールに割り当てられているプロセス参加者は、このタスクの実行を担当します。

図6-1 2つのスイムレーンにスプリットされた、単純なビジネス・プロセス

「図6-1 2つのスイムレーンにスプリットされた、単純なビジネス・プロセス」の説明

実際のビジネス・プロセスでは、スイムレーンの組合せ、およびスイムレーン内のフロー・オブジェクトが複雑になる場合があります。図2-1に示した営業見積サンプル・プロジェクトは、複数のスイムレーンを使用したより複雑なプロセスの例です。

6.1.3 プロセスにロールおよびスイムレーンを追加する方法

BPMNプロセスにロールおよびスイムレーンを追加できます。

プロセスに新しいスイムレーンを追加するには:

1. プロセス・エディタ・キャンバスの白い領域を右クリックします。

2. 「レーンの追加」を選択します。

新しいスイムレーンが作成されます。デフォルトでは、スイムレーンにロールは割り当てられていません。ロールを追加するには、スイムレーンのプロパティを編集します。

新しいフロー・オブジェクトを追加してプロセスに新しいスイムレーンおよびロールを追加するには:

1. スイムレーンを追加するプロセスを開きます。

2. コンポーネント・パレットからフロー・オブジェクトを選択し、それを既存のスイムレーンの下のプロセス・キャンバスにドラッグ・アンド・ドロップします。

新しいスイムレーンが作成されます。デフォルトでは、スイムレーンにロールは割り当てられていません。ロールを追加するには、スイムレーンのプロパティを編集します。

6.1.4 スイムレーンのプロパティを編集する方法

スイムレーンのプロパティはプロセス・エディタで編集できます。

スイムレーンのプロパティを編集するには:

1. スイムレーンのロール名にカーソルを移動します。

2. 「編集」アイコンをクリックします。

3. 既存のロールを使用するか、または新しいロールを作成するかを決定します:
既存のロールをスイムレーンに割り当てるには:

1. 「使用」ボタンをクリックします。

2. ドロップダウン・リストからロールを選択します。

新しいロールをスイムレーンに割り当てるには:

1. 「作成」ボタンをクリックします。

2. テキスト・フィールドに、新しいロールの名前を入力します。

4. (オプション)カスタム・アイコンをスイムレーンに追加するには、「変更」をクリックし、使用するアイコンを選択します。

5. (オプション)スイムレーンの背景色を変更するには:

1. 「実装」をクリックします。

2. 実装プロパティ・エディタで、色のRGB値を入力するか、カラー・パレットから色を選択します。

3. 「変更の適用」をクリックします。

6.1.5 Business Process ComposerとBPM Studioとの間でのロールの共有

Oracle BPM Studioでは、組織単位、カレンダおよび休日に基づいて、複雑な組織モデル内にロールを統合できます。

Business Process Composerでプロジェクト・テンプレートに基づいてプロジェクトを作成または編集するときに、そのプロジェクト内に定義されたロールにアクセスできます。ただし、プロジェクト内に定義された組織情報は表示または編集できません。

また、Business Process Composerを使用して新しいロールを作成することもできます。これらのロールは、プロジェクトの全体的な組織情報の一部として統合されます。

6.2 プロセスの開始点および終了点の定義

この項では、プロセスの開始と終了を定義するために使用するBPMNフロー・オブジェクトについて説明します。

6.2.1 開始イベントと終了イベントの概要

開始イベントは、プロセスの開始点を定義するBPMNフロー・オブジェクトです。開始イベントには様々なタイプがあり、それによってプロセス・インスタンスの作成方法が定義されます。

一方、終了イベントはプロセスの終了点を定義します。終了イベントには様々なタイプがあり、それによってプロセス・インスタンス完了時の処理が定義されます。

注意:

Oracle BPMでは、すべてのBPMNプロセスに少なくとも1つの開始イベントと1つの終了イベントが必要です。

開始イベントではプロセスの始まりを定義するため、受信シーケンス・フローは含まれません。同じく、終了イベントには送信シーケンス・フローを含めることができません。

ただし、None開始イベントとNone終了イベント以外の開始イベントと終了イベントには、プロセスへの入力と出力を含めることができます。

6.2.1.1 様々なタイプのプロセスに対する開始イベントの指定

新しいプロセスを作成すると、Business Process Composerではメッセージ開始イベントとメッセージ終了イベントが作成されます。

これらのデフォルトは、作成するビジネス・プロセスのタイプに応じて変更できます。表6-1は、各プロセス・タイプのデフォルトの開始イベントと終了イベントを示しています。

表6-1 各プロセス・タイプの開始イベントおよび終了イベント

プロセス・タイプ

デフォルトの開始および終了イベント・タイプ

非同期サービス

メッセージ開始および終了イベント

同期サービス

メッセージ開始および終了イベント

手動プロセス

None開始および終了イベント

Oracle BPMでサポートされている様々なタイプのプロセスの詳細は、5.1項「ビジネス・プロセスの概要」を参照してください。

サブプロセスには、デフォルトでNone開始イベントおよびNone終了イベントが含まれています。これらは必須の開始イベントおよび終了イベントであり、変更できません。

イベント・サブプロセスには、デフォルトでメッセージ開始イベントおよびNone終了イベントが含まれています。ただし、処理するイベントのタイプに応じて、開始イベントを変更できます。

6.2.1.2 1プロセスでの複数の開始イベントの使用

1つのBPMNプロセスに、複数の開始点を定義できます。複数の開始点を定義すると、使用される開始イベントに応じて、プロセス・インスタンスの複数の作成方法を指定できます。

図6-2は、メッセージ開始イベントとタイマー開始イベントの両方を含むプロセスの例を示しています。

図6-2 1プロセスでの複数の開始イベントの使用

「図6-2 1プロセスでの複数の開始イベントの使用」の説明

このプロセスは、他のプロセスまたはサービスから呼び出されたときにメッセージ・イベントを使用して開始できます。また、プロセス・インスタンスを自動的に作成する必要がある場合は、一定の時間間隔に基づいて開始することもできます。

複数の開始イベントを使用すると、2つの異なるプロセスを作成することなく、1つのプロセスが複数の方法で開始されるようにできます。

6.2.1.3 1プロセスでの複数の終了イベントの使用

終了イベントは、プロセス・パスの終わりを示します。プロセスに1つしか終了イベントがないときに、トークンがその終了イベントに到達すると、終了イベント到達時にプロセスが停止します。

注意:

メッセージ終了イベントは、メッセージ開始イベントによって起動されたプロセスを終了するためにのみ使用できます。また、1つのメッセージ開始イベントに関連付けられているメッセージ終了イベントが複数ある場合、これらのメッセージ終了イベントのそれぞれの出力引数の量とタイプは同じである必要があります。

複数の終了イベントを使用している場合は、1プロセス内で様々なトークンが様々なパスを経由する可能性があります。通常は、すべてのパラレル・パスが終了イベントに達して初めてプロセスが完了します。

ただし、次のような特別な場合には、すべてのプロセス・パスが完了する前にプロセス・インスタンスが停止することがあります。

- エラー終了イベント: エラー終了イベントに達すると、すべてのプロセス・アクティビティが停止します。エラー・スロー・イベントと同様に、エラー終了イベントでは、プロセスのフローが停止されます。詳細は、6.2.9項「エラー終了イベントの概要」を参照してください。

- 強制終了イベント: 強制終了イベントが発生すると、プロセス上のすべての作業が即時に停止します。エラー処理や、その他の実行中プロセスのクリーン・アップは行われません。詳細は、6.2.11項「強制終了イベントの概要」を参照してください。

6.2.2 プロセス・インスタンスのトリガー方法の定義

Oracle BPMでは、プロセス・インスタンスをトリガーするために次の方法がサポートされています。

- メッセージ開始イベント、シグナル開始イベントまたはタイマー開始イベントを使用する方法。詳細は、次の各項を参照してください。

- 6.2.4項「メッセージ開始イベントの概要」

- 6.2.5項「シグナル開始イベントの概要」

- 6.2.6項「タイマー開始イベントの概要」

- 受信タスクが後に続くNone開始イベントを使用する方法。プロセス・インスタンスを作成するには、受信タスクを構成する必要があります。詳細は、6.4.5項「受信タスクの概要」を参照してください。

- イニシエータ・パターンを使用して定義されたユーザー・タスクが後に続くNone開始イベントを使用する方法。詳細は、6.3.2項「ユーザー・タスクの概要」を参照してください。

- 新しいプロセス・インスタンスを作成するように構成されたEvent-based Gatewayを使用する方法。詳細は、4.6項「ガイド付きビジネス・プロセスを使用したプロジェクトのマイルストンの作成」を参照してください。

6.2.3 None開始イベントの概要

None開始イベントは、インスタンス・トリガーが明確に定義されていないときに使用します。プロセスで必要な開始イベントが不明な場合、または開始イベントが後でプロセス開発者によって定義および実装される場合、プロセス・アナリストはNone開始イベントをプレースホルダとして使用できます。

図6-3は、None開始イベントのデフォルトの表記を示しています。

図6-3 None開始イベント

「図6-3 None開始イベント」の説明

None開始イベントは、プロセス・インスタンスが別のフロー・オブジェクトで作成される場合に、プロセスの始まりを指定するためにも使用されます。通常、None開始イベントは新しいプロセス・インスタンスの作成をトリガーしません。

ただし、次のタスクとともに使用する場合、None開始イベントは新しいプロセス・インスタンスをトリガーします。

- 受信タスク。受信タスクでは、「インスタンスの作成」プロパティがtrueに設定されている必要があります。

- ユーザー・タスク。イニシエータ・パターンを使用して実装されたユーザー・タスク。

他の開始イベントと同様に、None開始イベントも受信シーケンス・フローを含むことはできません。含むことができるのは、デフォルトの送信シーケンス・フローのみです。

注意:

Noneイベントは、サブプロセスの開始を定義するときに常に使用されます。

6.2.3.1 コンテキスト内のNone開始イベント

図6-4は、営業見積サンプル・プロジェクト内のNone開始イベントの例を示しています。この例では、None開始イベントによってプロセスの開始が定義されています。また、プロセスにはイニシエータ・パターンを使用して実装されたユーザー・タスクが含まれているため、None開始イベントによってプロセス・インスタンスがトリガーされます。

図6-4 営業見積サンプル・プロセス内のNone開始イベント

「図6-4 営業見積サンプル・プロセス内のNone開始イベント」の説明

6.2.3.2 データ・アソシエーション

None開始イベントでは、プロセスの入力引数を受け入れません。

6.2.4 メッセージ開始イベントの概要

メッセージ開始イベントは、メッセージを受信するとプロセス・インスタンスをトリガーします。このメッセージは、別のBPMNまたはBPELプロセス、あるいはサービスから送信されます。

メッセージとは、プロセス間で情報を交換するために使用されるタイプのデータです。データ・オブジェクトが、プロジェクト内で使用されるデータを定義するために使用されるのと同様に、メッセージは、プロセス間またはプロセスとサービスとの間で使用されるデータを定義するために使用されます。

図6-5は、メッセージ開始イベントのデフォルトの表記を示しています。

図6-5 メッセージ開始イベント

「図6-5 メッセージ開始イベント」の説明

他の開始イベントと同様に、メッセージ開始イベントには受信シーケンス・フローを含めることができません。メッセージ開始イベントには、デフォルトの送信シーケンス・フローが必要です。

他のプロセスやアプリケーションがプロセスを起動できるように、BPMNプロセスをサービスとして公開できます。プロセスをサービスとして公開するには、プロセスをメッセージ開始イベントで開始する必要があります。また、プロセスへの入力引数(メッセージ開始イベントに渡されるデータ・オブジェクト)を定義する必要があります。詳細は、10.5.1項「プロセスへの入力引数の定義方法」を参照してください。

6.2.4.1 コンテキストにおけるメッセージ開始イベント

図6-6は、営業見積プロセスの修正バージョンを示しています。ここでは、プロセスは、プロセス・インスタンスを開始するメッセージ開始イベントから開始されています。

図6-6 営業見積サンプル・プロセス内のメッセージ開始イベント

「図6-6 営業見積サンプル・プロセス内のメッセージ開始イベント」の説明

6.2.4.2 プロセスの入力引数と出力引数の使用

メッセージ開始イベントを使用すると、プロセスに対して入力引数および出力引数を指定できます。これらの引数では、他のプロセスやサービスがプロセスを呼び出すときに送信する必要があるメッセージが定義されます。プロセスの入力および出力引数を構成する方法については、10.5項「プロセスの入力および出力の定義」を参照してください。

6.2.5 シグナル開始イベントの概要

シグナル開始イベントは、別のプロセスまたはサービスからの通信に基づくという点でメッセージ開始イベントに似ています。ただし、メッセージ開始イベントは、特定のプロセスに送信されたメッセージに応答します。対照的に、シグナル開始イベントは複数のプロセスにブロードキャストされたシグナルに対するレスポンスです。

シグナルは、BPMNプロセスからシグナル・スロー・イベントを使用してブロードキャストできます。シグナル・スロー・イベントとシグナル開始イベントを組み合せて使用すると、複数のプロセスを同時に起動できます。

シグナル開始イベントとシグナル・スロー・イベントは、プロセス開発者によってプロセスに追加されます。シグナル・スロー・イベントの実装の詳細は、Oracle BPMモデリングおよび実装ガイドのシグナル・イベントを使用したプロセス間の通信の概要を参照してください。

図6-7は、シグナル開始イベントのデフォルトの表記を示しています。

図6-7 シグナル開始イベント

「図6-7 シグナル開始イベント」の説明

6.2.5.1 コンテキストにおけるシグナル開始イベント

シグナル開始イベントおよびシグナル・スロー・イベントは、プロセス開発者によってプロセスに追加され、実装されます。

6.2.6 タイマー開始イベントの概要

タイマー開始イベントは、特定の時間条件に基づいてプロセス・インスタンスの作成をトリガーします。タイマー開始イベントは、次の内容に基づいてプロセス・インスタンスをトリガーするように構成できます。

- 特定の日付および時刻。たとえば、12月31日の午後11時59分にプロセスをトリガーできます。

- 繰返し間隔。たとえば、10時間ごと、5分ごと、32秒ごとにプロセスをトリガーできます。

図6-8は、タイマー開始イベントのデフォルトの表記を示しています。

図6-8 タイマー開始イベント

「図6-8 タイマー開始イベント」の説明

6.2.7 エラー開始イベントの概要

エラー開始イベントは、インライン・ハンドラの開始イベントとして使用されます。インライン・ハンドラを使用して、プロセス内で発生するエラーに対応する個別のプロセス・フローを定義できます。

図6-10は、None終了イベントのデフォルトの表記を示しています。

図6-9 エラー開始イベント

「図6-9 エラー開始イベント」の説明

注意:

注意: エラー開始イベントを使用できるのは、インライン・ハンドラ内のみです。通常のプロセス・フロー内では使用できません。

複数のインライン・ハンドラを指定して、エラーの状況に対応できます。ただし、同じ例外を使用するインライン・ハンドラを複数定義することはできません。

6.2.8 None終了イベントの概要

None終了イベントは、プロセス・パスの終わりを示すために使用します。トークンは、None終了イベントに到達すると消費されます。プロセス・インスタンス内に他のトークンがない場合は、インスタンスが完了します。

None終了イベントは、プロセス完了後にアクションを実行する必要がない場合に使用します。また、このイベントは、後で実装時にプロセス開発者が変更するためのプレースホルダとして、プロセス・アナリストが使用することもできます。

図6-10は、None終了イベントのデフォルトの表記を示しています。

図6-10 None終了イベント

「図6-10 None終了イベント」の説明

None終了イベントは、サブプロセスおよびイベント・サブプロセスの終わりを示すときに常に使用されます。

6.2.8.1 コンテキスト内のNone終了イベント

図6-11は、営業見積サンプル内のNone終了イベントの例を示しています。この例では、営業見積サービス・タスクを使用して、営業見積に関する情報をデータベースに保存しています。

図6-11 営業見積サンプル内のNone終了イベント

「図6-11 営業見積サンプル内のNone終了イベント」の説明

トークンがプロセスの終わりに到達した場合は、他の作業を実行できないため、None終了イベントが使用されています。プロセス・トークンがすべてNone終了イベントに到達すると、プロセス・インスタンスが完了します。

6.2.9 エラー終了イベントの概要

エラー終了イベントは、エラー状態が原因でプロセスを終了する場合に使用します。

通常、エラー終了イベントは、エラー境界イベントとともに使用します。エラー境界イベントは、特定のエラーに基づいてプロセス・フローを変更するために使用します。通常、エラー境界イベントを使用したフローは、エラー終了イベントを使用して終了します。エラー中間イベントの使用方法の詳細は、6.8.3項「エラー・キャッチ・イベントの概要」を参照してください。

図6-12は、エラー終了イベントのデフォルトの表記を示しています。

図6-12 エラー終了イベント

「図6-12 エラー終了イベント」の説明

エラー終了イベントの実装の詳細は、Oracle BPMモデリングおよび実装ガイドを参照してください。

6.2.10 メッセージ終了イベントの概要

メッセージ終了イベントは、プロセス完了時に他のプロセスやサービスにメッセージを送信するために使用します。メッセージ終了イベントは、常にメッセージ開始イベントまたはメッセージ・キャッチ・イベントとともに使用します。

注意:

複数の終了イベントを持つプロセスを作成する場合は、メッセージ終了イベントに到達するすべてのトークンがメッセージ開始イベントによって作成されることを確認する必要があります。たとえば、タイマー開始イベントによって開始されたプロセス・インスタンスを終了するためにメッセージ終了イベントを使用することはできません。

図6-13は、メッセージ終了イベントのデフォルトの表記を示しています。

図6-13 メッセージ終了イベント

「図6-13 メッセージ終了イベント」の説明

メッセージ終了イベントを使用したプロセスの出力引数の構成方法については、10.5.3項「プロセスへの出力引数の定義方法」を参照してください。

6.2.11 強制終了イベントの概要

強制終了イベントは、即時にプロセスを停止するために使用します。強制終了イベントに到達すると、プロセスは即時に停止します。エラー処理や、追加のクリーン・アップは行われません。

6.3 プロセスへのユーザー相互作用の追加

多くのビジネス・アプリケーションでは、組織内のプロセス参加者からの相互作用が必要です。相互作用は、フォームに情報を入力するなどの単純な操作の場合や、複数のワークフローおよび複数のユーザーが関与する場合があります。

この項では、プロセス参加者がビジネス・プロセスと相互作用する方法をモデリングするために使用されるBPMNフロー・オブジェクトについて説明します。内容は次のとおりです。

- 6.3.1項「ヒューマン・ワークフローの概要」

- 6.3.2項「ユーザー・タスクの概要」

- 6.3.3項「手動タスクの概要」

6.3.1 ヒューマン・ワークフローの概要

多くのエンドツーエンドのビジネス・プロセスでは、プロセスとの手動による相互作用が必要です。承認、例外管理、ビジネス・プロセスを進めるために必要なアクティビティの実行などにユーザーの相互作用が必要となります。

Oracle Human Workflowでは、次の機能によってユーザーの参加が包括的にサポートされます。

- 適切なユーザーまたはグループに対するタスクの割当ておよびルーティングを含む、プロセスとの手動による相互作用

- タスクが適切なタイミングで実行されることを保証するために必要な期限、エスカレーション、通知およびその他の機能

- プロセス参加者が各自のタスクを実行するときの生産性を向上するために必要な組織、フィルタ、優先順位付けおよびその他の機能。

- スーパーバイザおよびビジネス所有者がタスクのパフォーマンスを管理するために必要なレポート、再割当て、ロード・バランシングおよびその他の機能。

詳細は、Oracle Fusion Middleware Oracle SOA Suite開発者ガイドのヒューマン・ワークフローの概要を参照してください。

6.3.1.1 ヒューマン・タスクの概要

ヒューマン・タスクは、Oracle Human Workflowのコンポーネントの1つです。ヒューマン・タスクを使用すると、エンドツーエンドのプロセス・フロー内のシステムおよびサービスとの接続を使用して、手動による相互作用をインタリーブできます。ヒューマン・タスクの役割は、ビジネス・プロセスに参加しているユーザーおよびグループのすべての相互作用を処理することです。これを行うために、組織内で該当するユーザーのタスクを作成して追跡しています。ユーザーは通常、ワークリスト・アプリケーション、電子メール、ポータル、カスタム・アプリケーションなどの各種クライアントを通じてタスクにアクセスします。

プロセス開発者は、ヒューマン・タスクを使用して、Oracle BPM SuiteおよびSOA Suiteを使用して作成されたプロセスベースのアプリケーションとプロセス参加者との相互作用の方法を定義できます。

プロセス開発者はヒューマン・タスクを使用して次の要素を作成することで、エンド・ユーザー相互作用のインタフェースとワークフローを定義できます。

- ロールと割当て

- 期限とエスカレーション

- プレゼンテーション

ヒューマン・タスクは、同じUIを使用する他のプロセス内で使用できる再使用可能なサービスです。ヒューマン・タスクは、Oracle BPM Studioを使用して作成されます。

6.3.2 ユーザー・タスクの概要

ユーザー・タスクは、プロセス内で、プロセス参加者が作業を実行する必要がある部分を表します。ユーザー・タスクは、フォームへの入力などの単純な相互作用である場合もあれば、複数のプロセス参加者からの入力を必要とする複雑なワークフローの一部である場合もあります。

図6-14は、ユーザー・タスクのデフォルトの表記を示しています。

図6-14 ユーザー・タスク

「図6-14 ユーザー・タスク」の説明

Oracle BPM Suiteでは、プロセス参加者はプロセス・ワークスペースを使用してビジネス・アプリケーションと相互作用を行います。プロセス参加者に対して表示される画面やパネルなどの具体的なユーザー・インタフェース要素は、ヒューマン・タスクを使用して作成します。

プロセスの設計時には、多くの場合、プロセス・アナリストがユーザー・タスクをプロセス図に追加します。その後、プロセス開発者が必要なヒューマン・タスクを作成し、プロセスベースのビジネス・アプリケーション作成の構成要素として実装します。

トークンがユーザー・タスクに到達すると、対応するヒューマン・タスクが実行されます。トークンは、ヒューマン・タスクが完了するまで待機してから、次のフロー・オブジェクトに移動します。

ビジネス・カタログの要素をユーザー・タスクに割り当てる手順については、5.5.1項「ビジネス・カタログ・コンポーネントをフロー・オブジェクトに割り当てる方法」を参照してください。

ユーザー・タスクの実装方法の詳細は、Oracle BPMモデリングおよび実装ガイドのヒューマン・タスクの使用を参照してください。

他のフロー・オブジェクトと同様、ユーザー・タスクには受信および送信データ・アソシエーションを含めることができます。

また、ユーザー・タスクには、受信シーケンス・フローおよびデフォルトの送信シーケンス・フローを含めることもできます。

6.3.2.1 コンテキスト内のユーザー・タスク

営業見積サンプルでは、見積入力タスク(図6-15を参照)は見積情報を入力する作業を表します。

図6-15 見積入力ユーザー・タスク

「図6-15 見積入力ユーザー・タスク」の説明

ユーザーが営業見積に関する情報を入力すると、プロセス・フローは送信シーケンス・フローに従ってプロセス内の次のフロー・オブジェクトに移動します。

6.3.2.2 対話型アクティビティの使用

Oracle BPM Studioを使用すると、対話型アクティビティをコンポーネント・パレットからプロセスに直接追加できます。対話型アクティビティは、Oracle Human Workflowのタスク・ルーティング機能および承認機能に基づくショートカットです。詳細は、Oracle Fusion Middleware Oracle SOA Suite開発者ガイドのヒューマン・ワークフローの概要を参照してください。

表6-2は、Business Process Composerのコンポーネント・パレットで利用できる対話型アクティビティを示しています。

表6-2 対話型アクティビティ

パターン

説明

複合

ヒューマン・タスク内に定義されている複雑なルーティング・フローを使用します。

管理

スイムレーンに割り当てられたグループまたはロールに属するプロセス参加者の管理チェーン・パターンに割当て先を設定する管理チェーン・パターンを使用します。

FYI

割当てはスイムレーンに定義された参加者、ロールまたはグループに基づきます。FYIアクティビティはユーザー対話型アクティビティに類似していますが、完了を待機せずに処理を続行する点が異なります。

グループ

グループ投票パターンを使用します。タスクの割当て先はレーンに関連付けられたロールまたはグループに自動的に設定されます。この対話型アクティビティはロールまたはグループに関連付けられたスイムレーンにのみ追加できます。

イニシエータ

イニシエータ・パターンは、プロセス・インスタンスを作成するために使用します。

6.3.2.3 プロジェクト・テンプレートでのユーザー・タスクの使用

Oracle BPM Studioを使用して、ヒューマン・タスクをビジネス・カタログに追加できます。プロセス・アナリストは、プロジェクト・テンプレートから作成されたプロジェクトを使用するときに、Business Process Composerでこれらのヒューマン・タスクを使用できます。

ユーザー・タスクをプロジェクト・テンプレートに追加してBusiness Process Composer内で使用する場合は、次のガイドラインに従ってください。

- プロセス開発者は、Business Process Composerでテンプレートを使用する前に、必要なすべてのヒューマン・タスク・サービスをOracle BPM Studioで作成する必要があります。ヒューマン・タスクは、ユーザー・タスク内に実装することも、プロジェクト・テンプレートに基づいてプロジェクトを編集するときに実装することもできます。

- ただし、プロジェクト・テンプレート内でシールされたユーザー・タスクに対してヒューマン・タスク・サービスを実装する場合は、Business Process Composerでプロジェクト・テンプレートを使用する前にも実装を行う必要があります。

6.3.3 手動タスクの概要

手動タスクは、Oracle BPMのスコープ外のプロセス参加者が実行するタスクを表します。手動タスクはプロセス内のプレースホルダとして使用され、実行時にBPMNサービス・エンジンによって管理されない作業を示します。また、手動タスクはプロセス・ワークスペースアプリケーションには表示されません。

注意:

手動タスクはOracle BPMによって管理されません。Oracle BPMランタイムでは、手動タスクの開始および完了は追跡されません。

図6-16は、手動タスクのデフォルトの表記を示しています。

図6-16 手動タスク

「図6-16 手動タスク」の説明

手動タスクでは、デフォルト受信シーケンス・フローとデフォルト送信シーケンス・フローをそれぞれ1つのみ使用できます。

多くのBPMNフロー・オブジェクトと異なり、手動タスクではデータ・オブジェクトを操作できません。以前のフロー要素に関連付けられたデータ・オブジェクトはそのままの状態で次のフロー要素に渡されます。

6.3.3.1 コンテキスト内の手動タスク

営業見積サンプルのコンテキストでは、図6-17に示すように正式な契約書を印刷して署名するための手動タスクを追加できます。

図6-17 手動タスクの例

「図6-17 手動タスクの例」の説明

この例では、正式な契約書への署名をビジネス・プロセスの一部として明示的に示す必要がありますが、署名はBPMNサービス・エンジンによって管理されないため、手動タスクが使用されています。

6.3.4 更新タスクの概要

更新タスクは、1つ以上のヒューマン・タスクに対して操作を実行する場合に使用します。たとえば、更新タスクを使用して、別のユーザーへのタスクの再割当てなどのアクションを実行できます。

図6-18は、更新タスクのデフォルトの表記を示しています。

図6-18 更新タスク

「図6-18 更新タスク」の説明

更新タスクの使用方法の詳細は、Oracle BPMモデリングおよび実装ガイドを参照してください。

6.4 他のプロセスおよびサービスとの通信

Oracle BPMでは、プロセス指向アプリケーション内のビジネス・プロセス間の相互作用を定義できます。以降の項では、プロセス間の通信のモデリングに使用されるBPMNフロー・オブジェクトについて説明します。

この項では、Business Process Composerを使用してプロセス・モデルを作成する場合のこれらのフロー・オブジェクトの使用方法について説明します。プロセスベースのアプリケーションにおけるこれらのフロー・オブジェクトの実装方法の詳細は、Oracle BPMモデリングおよび実装ガイドを参照してください。

6.4.1 サービス・タスクの概要

サービス・タスクを使用すると、他のプロセスおよびサービスと通信できます。プロセス・アナリストは、プロセスで外部サービスまたは外部プロセスを呼び出す必要がある場合、サービス・タスクを追加できます。

その後、プロセス開発者は必要なサービスを実装できます。サービス・タスクを使用して、次を呼び出すことができます。

- 他のBPMNプロセス

- BPELプロセス

- SOAサービス・アダプタ

- サービスとして公開されているメディエータ

ビジネス・カタログの要素をサービス・タスクに割り当てる手順については、5.5.1項「ビジネス・カタログ・コンポーネントをフロー・オブジェクトに割り当てる方法」を参照してください。

サービス・タスクの動作は、送信タスクと受信タスクのペアの動作、およびメッセージ・スロー・イベントとメッセージ・キャッチ・イベントのペアの動作と似ています。主な違いは、サービス・タスクがプロセスおよびサービスを同期的に起動するために使用される点です。サービス・タスクがプロセスやサービスを起動すると、レスポンスが返されるまで、トークンはサービス・タスクで待機します。レスポンスを受信した後、トークンはプロセス内の次のシーケンス・フローに移動します。

サービスおよびBPMNプロセスを使用したサービス・タスクの実装方法の詳細は、Oracle BPMモデリングおよび実装ガイドのサービス・タスクを使用した、サービスおよびBPMNプロセスの同期操作の起動を参照してください。

図6-19は、サービス・タスクのデフォルトの表記を示しています。

図6-19 サービス・タスク

「図6-19 サービス・タスク」の説明

6.4.1.1 コンテキスト内のサービス・タスク

図6-20は、完成した営業見積をデータベースに保存するために使用されるサービス・タスクの例を示しています。

図6-20 営業見積サンプル・プロセス内のサービス・タスク

「図6-20 営業見積サンプル・プロセス内のサービス・タスク」の説明

6.4.1.2 プロジェクト・テンプレートでの再使用可能なサービスの実装

Oracle BPMを使用すると、プロジェクト・テンプレートに再使用可能なサービスを統合できます。これらのサービスは、ビジネス・カタログのコンポーネントです。

6.4.2 通知タスクの概要

通知タスクはサービス・タスクに類似しています。通知タスクは、事前定義されたサービスを使用して、様々なタイプの通知を実行します。さらに、式を使用して、通知タスクで生成された通知を受信するユーザーまたはグループを決定できます。

通知タスクの実装方法の詳細は、Oracle BPMモデリングおよび実装ガイドを参照してください。

次のようなタイプの通知があります:

- IM: インスタント・メッセージをユーザーまたはグループに送信します。図6-21は、IM通知タスクのデフォルトの表記を示しています。

図6-21 インスタント・メッセージ通知タスク

「図6-21 インスタント・メッセージ通知タスク」の説明

- 電子メール: 電子メールをユーザーまたはグループに送信します。電子メールには添付ファイルを含めることもできます。図6-22は、電子メール通知タスクのデフォルトの表記を示しています。

図6-22 電子メール通知タスク

「図6-22 電子メール通知タスク」の説明

- SMS: SMSメッセージをユーザーに送信します。図6-23は、SMS通知タスクのデフォルトの表記を示しています。

図6-23 SMS通知タスク

「図6-23 SMS通知タスク」の説明

- 音声: ボイスメールをユーザーに送信します。図6-24は、ボイス・メール通知タスクのデフォルトの表記を示しています。

図6-24 ボイスメール通知タスク

「図6-24 ボイスメール通知タスク」の説明

- ユーザー: 使用可能な通知タイプに基づいて、通知をユーザーに送信します。たとえば、ユーザーがボイスメールと電子メールの両方を構成している場合、通知タスクでは両方とも送信します。図6-25は、ユーザー通知タスクのデフォルトの表記を示しています。

図6-25 ユーザー通知タスク

「図6-25 ユーザー通知タスク」の説明

6.4.3 コール・アクティビティの概要

コール・アクティビティを使用すると、再使用可能なプロセスを現在のプロセス内からコールできます。被コール側プロセスは、コール側プロセスの子プロセスになります。再使用可能なプロセスをコールしている場合、親プロセスのコール・アクティビティは、子プロセスが完了するまで待機してから処理を続行します。

図6-26は、コール・アクティビティのデフォルトの表記を示しています。

図6-26 コール・アクティビティ

「図6-26 コール・アクティビティ」の説明

親プロセスのデータ・オブジェクトは、再使用可能なプロセスに対して自動的に使用可能になりません。データ・オブジェクトは、コール・アクティビティの引数マッピングを使用して、子プロセスとの間で受け渡す必要があります。

6.4.3.1 再使用可能なプロセス

Oracle BPMでは、再使用可能なプロセスというプロセス・タイプをサポートしています。BPMN用語では、再使用可能なサブプロセスと呼ばれることもあります。再使用可能なプロセスを使用すると、別のBPMNプロセスからコールできるプロセスを作成できます。

再使用可能なプロセスを使用すると、別のBPMNプロセスからコールできるプロセスを作成できます。たとえば、すべてのプロセスにクレジット・カード払いが必要な場合は、再使用可能なクレジット・カード払いのサブプロセスを作成できます。

再使用可能なプロセスには、次の特性があります。

- 単一のNone開始イベントで開始する必要があります。

- 複数の終了イベントを含めることができます。

- コールできるのは、別のBPMNプロセスのみです。

6.4.4 送信タスクの概要

送信タスクでは、現在のプロセス外部のシステムまたはプロセスにメッセージが送信されます。このメッセージが送信されると、タスクは完了し、プロセスの実行はプロセス・フロー内の次のタスクに移動します。

多くの場合、送信タスクは受信タスクと組み合せて使用され、プロセスまたはサービスを起動してレスポンスを受信します。送信タスクおよび受信タスクは非同期的にプロセスおよびサービスを起動するために使用します。プロセスおよびサービスを同期的に起動する場合は、サービス・タスクを使用します。

注意:

送信タスクおよび受信タスクでは、メッセージ・スロー・イベントおよびメッセージ・キャッチ・イベントと同様の機能が実行されます。ただし、メッセージ開始イベントによって開始されるプロセスは、送信タスクを使用して起動できません。

図6-27は、送信タスクのデフォルトの表記を示しています。

図6-27 送信タスク

「図6-27 送信タスク」の説明

プロセスまたはサービスを起動するための送信タスクの実装の詳細は、Oracle BPMモデリングおよび実装ガイドの送信タスクおよび受信タスクを使用した、BPMNプロセスでの同期操作の定義を参照してください。

6.4.4.1 コンテキスト内の送信タスク

プロセス間で通信するための送信タスクおよび受信タスクの使用方法の詳細は、第6章「送信タスクおよび受信タスクを使用した、プロセス間の通信」を参照してください。

6.4.5 受信タスクの概要

送信タスクとは対照的に、受信タスクでは、現在のプロセス外部のシステムまたはプロセスからのメッセージを待機します。このメッセージを受信すると、タスクは完了し、プロセスの実行はプロセス・フロー内の次のタスクに移動します。

図6-28は、受信タスクのデフォルトの表記を示しています。

図6-28 受信タスク

「図6-28 受信タスク」の説明

プロセスまたはサービスを起動するための送信タスクの実装の詳細は、Oracle BPMモデリングおよび実装ガイドの送信タスクおよび受信タスクを使用した、BPMNプロセスでの同期操作の定義を参照してください。

6.4.5.1 コンテキスト内の受信タスク

プロセス間で通信するための送信タスクおよび受信タスクの使用方法の詳細は、6.4.6項「送信タスクおよび受信タスクを使用した、プロセス間の通信」を参照してください。

6.4.5.2 受信タスクによるプロセスの開始

受信タスクを使用して、プロセスの開始をトリガーできます。これは、他のプロセスから送信タスクを使用してプロセスを起動する場合に役立ちます。

受信タスクを使用してプロセスを開始する場合は、次の条件を満たしている必要があります。

- 受信タスクの前にNone開始イベントがあること。

- プロセスに他の開始イベントが含まれていないこと。

- 「インスタンスの作成」プロパティが有効であること。

次の項では、プロセス間の通信で送信タスクおよび受信タスクを使用する方法について説明します。

6.4.6 送信タスクおよび受信タスクを使用した、プロセス間の通信

送信タスクおよび受信タスクを使用すると、他のBPMNプロセスを起動して、起動したプロセスからメッセージを受信できます。受信タスクによって開始され、送信タスクを含むプロセスは、Oracle BPMアプリケーション内の他のプロセスやサービスから使用できるサービスとして公開されます。

図6-29は、送信タスクおよび受信タスクを使用してプロセスを起動し、レスポンスを受信する場合の基本的な動作の概要を示しています。

図6-29 送信タスクおよび受信タスクを使用した、プロセス間の通信

「図6-29 送信タスクおよび受信タスクを使用した、プロセス間の通信」の説明

次の手順は、送信タスクおよび受信タスクを使用してプロセス間で通信する場合のシナリオの例を示しています。

1. プロセスAが起動されます。

2. プロセスAのトークンが送信タスクに到達します。

3. 送信タスクによって、プロセスBが起動されます。
この動作は、送信タスクの実装によって定義されます。

4. プロセスAのトークンは、プロセスの次のフロー・オブジェクトに進みます。

5. 受信タスクによって、プロセスBのプロセス・インスタンスが開始されます。
受信タスクには、「インスタンスの作成」プロパティが定義されている必要があります。6.4.5.2項を参照してください。

6. 新しく作成されたトークンがプロセスBに沿って進みます。

7. プロセスの具体的な動作に応じて、次のシナリオが発生する場合があります。

1. プロセスAのトークンが、プロセスBからの送信タスクとペアになっている受信タスクに到達すると、プロセスAのトークンはレスポンスを受信するまで待機します。レスポンスを受信した後、プロセスAのトークンは次のフロー・オブジェクトに移動します。

2. プロセスBのトークンが、プロセスA内の受信タスクとペアになっている送信タスクに到達すると、プロセスBはプロセスAにレスポンスを送信します。プロセスBのトークンは、次のフロー・オブジェクトに移動します。

8. 両方のプロセスが引き続き実行されます。この後に、さらに送信タスクと受信タスクのペアを使用して、2つのプロセス間での通信を定義できます。

6.4.7 メッセージ・スロー・イベントの概要

メッセージ・スロー・イベントを使用すると、他のプロセスまたはサービスにメッセージを送信できます。

図6-30は、メッセージ・スロー・イベントのデフォルトの表記を示しています。

図6-30 メッセージ・スロー・イベント

「図6-30 メッセージ・スロー・イベント」の説明

メッセージ・スロー・イベントを使用すると、次のタイプのプロセスおよびサービスを起動できます。

- 他のBPMNプロセス

- BPELプロセス

- SOAサービス・アダプタ

- サービスとして公開されているメディエータ

プロセス・アナリストは、プロセスにメッセージ・スロー・イベントを追加して、プロセスから他のプロセスやサービスを呼び出す必要がある位置を定義できます。ただし、他のプロセスとの接続の実装は、通常はプロセス開発者が担当します。また、メッセージ・スロー・イベントによって起動されるサービスの作成および実装も、通常はプロセス開発者が担当します。

メッセージ・スロー・イベントの実装方法の詳細は、Oracle BPMモデリングおよび実装ガイドのメッセージ・イベントを使用した、他のBPMNプロセスおよびサービスとの通信を参照してください。

多くの場合、メッセージ・スロー・イベントは、他のプロセスのメッセージ開始イベントを呼び出すことによって他のBPMNプロセスを起動するために使用します。詳細は、6.2.4項「メッセージ開始イベントの概要」を参照してください。

また、多くの場合、メッセージ・スロー・イベントは、起動したプロセスまたはサービスからレスポンスを受信するメッセージ・キャッチ・イベントとともに使用します。ただし、メッセージ・スロー・イベントは常に非同期的に使用されます。メッセージ・スロー・イベントから他のプロセスまたはサービスにメッセージが送信された後、トークンは即時にプロセスの次のフロー・オブジェクトに移動します。

プロセスで同期的にレスポンスを受信する場合は、サービス・タスクを使用してプロセスまたはサービスを起動します。詳細は、6.4.1項「サービス・タスクの概要」を参照してください。

注意:

送信タスクおよび受信タスクでは、メッセージ・スロー・イベントおよびメッセージ・キャッチ・イベントと同様の機能が実行されます。ただし、メッセージ受信タスクによって開始されるプロセスをメッセージ・スロー・イベントを使用して起動することはできません。

6.4.8 メッセージ・キャッチ・イベントの概要

メッセージ・キャッチ中間イベントでは、別のプロセスまたはサービスからのメッセージを受信できます。

図6-31は、メッセージ・キャッチ・イベントのデフォルトの表記を示しています。

図6-31 メッセージ・キャッチ・イベント

「図6-31 メッセージ・キャッチ・イベント」の説明

多くの場合、メッセージ・キャッチ・イベントは、他のBPMNプロセスと通信するためのメッセージ・スロー・イベントとともに使用されます。メッセージ・スロー・イベントとメッセージ・キャッチ・イベントを組み合せて使用する方法の詳細は、6.4.9項を参照してください。

メッセージ・スロー・イベントの実装方法の詳細は、Oracle BPMモデリングおよび実装ガイドのメッセージ・イベントを使用した、他のBPMNプロセスおよびサービスとの通信を参照してください。

6.4.9 メッセージのスロー・イベントおよびキャッチ・イベントを使用した、プロセス間の通信

スロー・イベントとキャッチ・イベントを組み合せて使用することによって、他のBPMNプロセスを起動したり、他のBPMNプロセスと通信できます。スロー・イベントを使用して他のプロセスを起動する場合は、次の条件を満たしている必要があります。

- 起動されるプロセスは、非同期プロセスである必要があります。メッセージ・スロー・イベントを使用して同期プロセスを起動することもできますが、起動したプロセスから同期的にメッセージをキャッチするメカニズムは用意されていません。
同期プロセスを起動する場合は、サービス・タスクを使用します。詳細は、6.4.1項「サービス・タスクの概要」を参照してください。

- 最初にメッセージ・スロー・イベントを使用する場合は、他のプロセスのメッセージ開始イベントとペアにする必要があります。これは、プロセス・インスタンスをトリガーするために必要となります。インスタンスがトリガーされた後は、2つ目のプロセスによってキャッチされる後続のメッセージ・スロー・イベントを使用できます。

メッセージ開始イベントで開始し、メッセージ終了イベントで終了するプロセスは、Oracle BPMアプリケーション内の他のプロセスやサービスから使用できるサービスとして公開されます。

他のプロセスから起動されたプロセスは、子プロセスであるとはみなされません。このことは、強制終了イベントをプロセスの終了点として使用するプロセスを設計する場合に重要となります。たとえば、コール側プロセスの終了イベントでは、メッセージ・スロー・イベントによって起動されたプロセスは停止しません。

図6-32は、メッセージ・スロー・イベントおよびキャッチ・イベントを使用してプロセスを起動し、レスポンスを受信する場合の基本的な動作を示しています。

図6-32 プロセス間でのメッセージのスロー・イベントおよびキャッチ・イベントの使用

「図6-32 プロセス間でのメッセージのスロー・イベントおよびキャッチ・イベントの使用」の説明

次の手順は、メッセージ・スロー・イベントおよびメッセージ・キャッチ・イベントを使用してプロセス間で通信を行う場合のシナリオの例を示しています。

1. プロセスAが起動されます。

2. プロセスAのトークンが、プロセスBを起動するように構成されているメッセージ・スロー・イベントに到達します。

3. メッセージ・スロー・イベントからプロセスBのメッセージ開始イベントにメッセージが送信されます。

4. プロセスAのトークンは、次のフロー・オブジェクトに進みます。

5. メッセージ開始イベントによって、プロセスBのインスタンスがトリガーされます。

6. 新しく作成されたトークンがプロセスBに沿って進みます。

7. プロセスの動作に応じて、次のシナリオが発生する場合があります。

1. プロセスAのトークンが、プロセスBからのスロー・イベントとペアになっているキャッチ・イベントに到達すると、プロセスAのトークンはメッセージを受信するまで待機します。メッセージを受信した後、プロセスAのトークンは次のフロー・オブジェクトに移動します。

2. プロセスBのトークンが、プロセスAのキャッチ・イベントとペアになっているスロー・イベントに到達すると、プロセスBはプロセスAにメッセージをスローします。プロセスBのトークンは、次のフロー・オブジェクトに移動します。

8. 両方のプロセスが引き続き実行されます。この後に、さらにキャッチ・イベントとスロー・イベントのペアを使用して、2つのプロセス間での通信を定義できます。

6.5 Oracle Business Rulesを使用したビジネス・ロジックの追加

この項では、ビジネス・ルール・タスクを使用してビジネス・プロセス内にOracle Business Rulesを取り込む方法について説明します。Business Process ComposerによるOracle Business Rulesの使用方法の詳細は、第8章「Oracle Business Rulesの使用」を参照してください。

6.5.1 Oracle Business Rulesの概要

ビジネス・ルールは、ビジネス・ポリシーを表す文または重要なビジネスの意思決定を表す文です。

6.5.2 ビジネス・ルール・タスクの概要

ビジネス・ルール・タスクを使用すると、プロセス内にOracle Business Rulesを取り込むことができます。

図6-33は、ビジネス・ルール・タスクのデフォルトの表記を示しています。

図6-33 ビジネス・ルール・タスク

「図6-33 ビジネス・ルール・タスク」の説明

ビジネス・プロセス内にOracle Business Rulesを取り込むユース・ケースは、主に2つあります。

- 構造ルールの使用
構造ルールを使用すると、ビジネス・プロセス内で使用される計算を実行できます。たとえば、信用度を計算するためにビジネス・ルールを使用できます。

- 運用ルールの使用
運用ルールは、プロセスのフローを変更するために使用します。運用ルールの典型的な使用方法として、ルール・カタログ内のルール条件のチェックの実行があります。その後、出力データ・アソシエーションの一部として、式を使用してデータ・オブジェクトに値を割り当てます。

このシナリオでは、ビジネス・ルール・タスクの直後にゲートウェイが配置されます。このゲートウェイは、データ・オブジェクトの値に従ってプロセス・パスを分岐するために使用されます。

営業見積サンプル内での操作ルールの使用方法の詳細は、6.5.2.1項「コンテキスト内のビジネス・ルール・タスク」を参照してください。

ビジネス・カタログの要素をビジネス・ルール・タスクに割り当てる手順については、5.5.1項「ビジネス・カタログ・コンポーネントをフロー・オブジェクトに割り当てる方法」を参照してください。

6.5.2.1 コンテキスト内のビジネス・ルール・タスク

図6-34は、営業見積サンプル・プロセス内のビジネス・ルール・タスクの例を示しています。

図6-34 営業見積サンプル・プロセス内のビジネス・ルール・タスク

「図6-34 営業見積サンプル・プロセス内のビジネス・ルール・タスク」の説明

6.6 シーケンス・フローを使用したプロセス・フローの制御

この項では、シーケンス・フローを使用してビジネス・プロセスの動作を定義する方法を説明します。

6.6.1 シーケンス・フローの概要

シーケンス・フローでは、プロセス内で作業が実行される順序(シーケンス)が定義されます。シーケンス・フローによって、プロセス内のフロー・オブジェクトが接続され、プロセス内でプロセス・トークンが移動するパスが特定されます。

受信シーケンス・フローは、フロー・オブジェクト内に移動するシーケンス・フローです。送信シーケンス・フローは、フロー・オブジェクトから外部に移動するプロセス・パスを特定するシーケンス・フローです。

多くのフロー・オブジェクトには、受信シーケンス・フローと送信シーケンス・フローの両方が含まれています。ただし、開始イベントと終了イベントは例外です。開始イベントで使用できるのは送信シーケンス・フローのみです。終了イベントで使用できるのは受信シーケンス・フローのみです。また、イベント・サブプロセスには、受信シーケンス・フローも送信シーケンス・フローも含まれません。

6.6.2 無条件シーケンス・フローの概要

無条件シーケンス・フローは2つのフロー・オブジェクト間の典型的なパスです。デフォルトのシーケンス・フローは図6-35のように矢印線として表示されます。

図6-35 無条件シーケンス・フロー

「図6-35 無条件シーケンス・フロー」の説明

ほとんどのフロー・オブジェクトでは、デフォルト送信シーケンス・フローを1つのみ使用できます。プロセスのパラレル・パスを表す複数の無条件シーケンス・フローを使用できるのは、パラレル・ゲートウェイのみです。

排他ゲートウェイ、包含ゲートウェイおよび条件ゲートウェイには、無条件送信シーケンス・フローを使用できません。これらのゲートウェイでは、条件シーケンス・フローおよびデフォルト・シーケンス・フローを使用して、プロセスのフローを決定します。

6.6.3 条件シーケンス・フローの概要

条件シーケンス・フローは、特定の条件に基づいてプロセスのフローを制御するために使用します。無条件シーケンス・フローと同様に、条件シーケンス・フローは、矢印線として表示されます。

図6-36は、2つの送信条件シーケンス・フローと1つのデフォルト・シーケンス・フローを示しています。

図6-36 条件シーケンス・フローとデフォルト・シーケンス・フロー

「図6-36 条件シーケンス・フローとデフォルト・シーケンス・フロー」の説明

送信条件シーケンス・フローを使用できないフロー・オブジェクトもあります。送信条件シーケンス・フローを使用できるのは、次のタイプのゲートウェイのみです。

- 排他ゲートウェイ

- 包含ゲートウェイ(スプリット)

条件シーケンス・フロー内で使用される条件は、式を使用して定義されます。式エディタを使用して式を定義する方法は、10.4項「式の概要」を参照してください。

6.6.4 デフォルト・シーケンス・フローの概要

条件シーケンス・フローと同様に、デフォルト・シーケンス・フローは排他ゲートウェイ、包含ゲートウェイおよび条件ゲートウェイへの送信シーケンス・フローとして使用されます。デフォルト・シーケンス・フローは、いずれの条件もtrueと評価されない場合に、プロセスがこれらのゲートウェイから脱出するパスを表します。

デフォルト・シーケンス・フローは、図6-36のように一方の端にチック・マークが付いた矢印として表示されます。

6.7 ゲートウェイを使用したプロセス・フローの制御

この項では、ゲートウェイを使用してプロセスのフローおよび動作を制御する方法を説明します。

6.7.1 ゲートウェイの概要

ゲートウェイはプロセスのフローを定義するフロー要素です。ゲートウェイはトークンがプロセスを辿るパスを指定します。ゲートウェイはパスのスプリットとマージによってプロセス内の制御ポイントを定義します。

プロセスのデフォルト・パスに対する例外または逸脱となるパスには、可能なかぎりゲートウェイを使用します。

6.7.1.1 スプリットとマージのペア

次のゲートウェイにはスプリットとマージのペアが必要です。

- パラレル・ゲートウェイ

- 包含ゲートウェイ

- 複合ゲートウェイ

これらのゲートウェイのいずれかをBPMNプロセスに追加すると、Oracle BPM Studioはスプリットとマージのフロー・オブジェクトを自動的に作成します。

ゲートウェイのマージ部分は常に必要となりますが、必ずしもスプリットされたすべてのパスをマージ部分に戻す必要はありません。

ゲートウェイでスプリットされたプロセス・パスのうち、ゲートウェイでマージされないものがあってもかまいませんが、通常はお薦めしません。ゲートウェイのマージ動作の詳細は、後述の各ゲートウェイ・タイプの項を参照してください。

注意:

プロセスからマージ・ゲートウェイを削除すると、対応する分割ゲートウェイも削除されます。

6.7.2 排他ゲートウェイの概要

排他ゲートウェイを使用すると、プロセスを複数のパスにスプリットできます。ただし、複数の送信シーケンス・フローが存在する場合でも、プロセスが経由するパスは、これらのパスのうちの1つのみです。排他ゲートウェイでは、条件送信シーケンス・フローを使用でき、少なくとも1つのデフォルト送信シーケンス・フローが必要です。

プロセスが条件シーケンス・フローを経由するかどうかを決定するために使用される式を定義できます。詳細は、10.4項「式の概要」を参照してください。

プロセスに排他ゲートウェイの送信シーケンス・フローが複数ある場合は、それらの評価順序を定義できます。評価の順序は、排他ゲートウェイのプロパティで構成されます。

複数の条件でtrueと評価された排他ゲートウェイがあると、プロセスは、この順序に従って決定された最初の条件シーケンス・フローの下で続行されます。

排他ゲートウェイは、他のゲートウェイとは異なり、スプリット後、対応するマージをプロセス内に明示的に定義する必要はありません。

図6-37は、排他ゲートウェイのデフォルトの表記を示しています。

図6-37 排他ゲートウェイ

「図6-37 排他ゲートウェイ」の説明

6.7.2.1 コンテキスト内の排他ゲートウェイ

図6-38は、営業見積サンプル内で使用されている排他ゲートウェイの例を示しています。ここでは、排他ゲートウェイは、ビジネス実行のレビューが必要であるかどうかを評価するために使用されます。

図6-38 営業見積サンプル・プロセス内の排他ゲートウェイ

「図6-38 営業見積サンプル・プロセス内の排他ゲートウェイ」の説明

この評価は、送信条件シーケンス・フローに定義された式によって決定されます。評価がtrueである場合、プロセス・フローは「はい」のパスを進みます。評価がfalseである場合、プロセス・フローは、デフォルト送信シーケンス・フローのパスを進みます。

6.7.2.2 排他ゲートウェイのスプリットとマージ

トークンが排他ゲートウェイに到達すると、送信条件シーケンス・フローの1つがtrueに評価されるまで、送信条件シーケンス・フローが評価されます。排他ゲートウェイのプロパティを構成することによって、送信条件シーケンス・フローが評価される順序を定義できます。この構成に基づいて、最初の条件シーケンス・フローの評価がtrueである場合、トークンはこの送信シーケンス・フローに従って次のフロー・オブジェクトに移動します。複数の送信条件シーケンス・フローがある場合は、それらの評価順序を決定できます。trueと評価される送信条件シーケンス・フローが存在しない場合、トークンはデフォルト送信シーケンス・フローに従って移動します。したがって、排他ゲートウェイには、デフォルト送信シーケンス・フローを定義する必要があります。

排他ゲートウェイでは受信シーケンス・フローもマージできます。ただし、プロセス・フロー内の他のパスから受信する可能性がある他のトークンと同期されません。

注意:

他のトークンが排他ゲートウェイのマージに到達した場合、そのトークンもそのまま次のフロー・オブジェクトに渡されます。トークンを同期する場合や、受信シーケンス・フローで評価を実行する場合は、別のタイプのゲートウェイを使用する必要があります。

6.7.3 包含ゲートウェイの概要

包含ゲートウェイを使用すると、プロセスを複数のパスに分割できます。ただし、排他ゲートウェイとは異なり、送信条件シーケンス・フローの評価結果に応じて、トークンは1つ以上のパスに移動する場合があります。

包含ゲートウェイのスプリットには、複数の送信条件シーケンス・フローを指定できます。また、少なくとも1つのデフォルト・シーケンス・フローを定義する必要があります。

図6-39は、包含ゲートウェイのスプリットのデフォルトの表記を示しています。

図6-39 包含ゲートウェイ(スプリット)

「図6-39 包含ゲートウェイ(スプリット)」の説明

図6-40は、包含ゲートウェイのマージのデフォルトの表記を示しています。

図6-40 包含ゲートウェイ(マージ)

「図6-40 包含ゲートウェイ(マージ)」の説明

6.7.3.1 包含ゲートウェイのスプリットとマージ

包含ゲートウェイでは、排他ゲートウェイと同様にプロセスがスプリットされますが、トークンが複数の送信シーケンス・フローを進むことができる点が異なります。トークンが包含ゲートウェイに到達すると、包含ゲートウェイの条件シーケンス・フローの式が評価されます。

次に、trueと評価された各条件シーケンス・フローに対してトークンが生成されます。trueと評価された条件シーケンス・フローがない場合のみ、デフォルトのシーケンス・フローに対してトークンが生成されます。

これらのトークンは、包含ゲートウェイのマージで結合されます。トークンがマージ・ゲートウェイに到達すると、分割によって生成されたすべてのトークンがマージに到達するまで待機します。すべてのトークンが包含ゲートウェイのマージに到達すると、マージが完了して、トークンはゲートウェイに続く次のシーケンス・フローに移動します。

6.7.4 パラレル・ゲートウェイの概要

Parallel Gatewayを使用してプロセスを複数のパスに分割すると、プロセス・フローがすべてのパス上を同時に進むようにできます。Parallel Gatewayは、プロセスで複数のタスクをパラレルに実行する必要がある場合に便利です。

図6-41は、パラレル・ゲートウェイのスプリットのデフォルトの表記を示しています。

図6-41 パラレル・ゲートウェイ(スプリット)

「図6-41 パラレル・ゲートウェイ(スプリット)」の説明

図6-42は、パラレル・ゲートウェイのマージのデフォルトの表記を示しています。

図6-42 パラレル・ゲートウェイ(マージ)

「図6-42 パラレル・ゲートウェイ(マージ)」の説明

6.7.4.1 コンテキスト内のパラレル・ゲートウェイ

営業見積のサンプルでは、プロセスの承認ステージでパラレル・ゲートウェイを使用しています。図6-43に、パラレル・ゲートウェイを使用して2つのプロセス・パスを同時に実行する方法を示します。

図6-43 パラレル・ゲートウェイの例

「図6-43 パラレル・ゲートウェイの例」の説明

この例では、2つの異なるプロセス・パスが同時に実行されます。

6.7.4.2 パラレル・ゲートウェイのスプリットとマージ

トークンがパラレル・ゲートウェイに到達すると、パラレル・ゲートウェイでは各送信シーケンス・フローのトークンが作成されます。パラレル・ゲートウェイのスプリットでは、送信シーケンス・フローは評価されません。

パラレル・ゲートウェイを使用して、パラレル・ゲートウェイによってスプリットされたプロセス・パスをマージすることもできます。パラレル・ゲートウェイのマージでは、各受信シーケンス・フローからのトークンの到着が待機されます。すべてのトークンが到着すると、1つのトークンのみが送信シーケンス・フローに渡されます。

注意:

Parallel Gatewayのマージの各受信シーケンス・フローにトークンが到着するようにプロセスを設計してください。このように設計しないと、到着しないトークンをマージで待機し続け、プロセスがフリーズする可能性があります。

6.7.5 複合ゲートウェイの概要

複合ゲートウェイでは、包含ゲートウェイと同様にプロセスが分割されます。ただし、複合ゲートウェイのマージにすべてのトークンが到着しない場合でもインスタンスを続行できるアクティブ化条件を定義できます。

たとえば、2つ以上のトークンが到着した後に続行する、複合ゲートウェイを構成できます。包含ゲートウェイの条件のうち2つのみがtrueと評価されると、プロセス・インスタンスは次のアクティビティに進みます。ただし、包含ゲートウェイではすべての条件シーケンス・フローが即時に評価されるため、これらのプロセス・パスのすべてのフロー・オブジェクトもすべて実行されます。

図6-44は、複合ゲートウェイのスプリットのデフォルトの表記を示しています。

図6-44 複合ゲートウェイ(スプリット)

「図6-44 複合ゲートウェイ(スプリット)」の説明

図6-45は、複合ゲートウェイのマージのデフォルトの表記を示しています。

図6-45 複合ゲートウェイ(マージ)

「図6-45 複合ゲートウェイ(マージ)」の説明

6.7.6 Event-based Gatewayの概要

Event-based Gatewayを使用すると、イベントが発生する可能性に基づいてプロセス・フローを分岐できます。これは、コンテキストに応じて、様々なイベント・タイプの1つになります。

Event-based Gatewayでは、様々なタイプのイベントがプロセス内の特定の位置で発生する可能性を予想できます。これは排他ゲートウェイに類似していますが、式に基づいてパスを選択するのではなく、Event-based Gatewayではプロセス内でのイベントの発生に基づいてパスを選択します。

たとえば、注文処理プロセスでは、現在使用可能な在庫がない場合にプロセス内のある位置に移動できます。プロセスは、在庫が使用可能になるまで待機する必要がありますが、無限に待機することはできません。Event-based Gatewayを使用すると、プロセスは、(メッセージ・キャッチ・イベントを使用して)新しい在庫の到着を知らせるメッセージを待機したり、(タイマー・イベントを使用して)一定時間の経過後にメッセージを受信しない場合に処理を続行できます。

図6-46は、Event-based Gatewayのデフォルトの表記を示しています。

図6-46 イベントベース・ゲートウェイ

「図6-46 イベントベース・ゲートウェイ」の説明

Event-based Gatewayは、プロセス・フローに関する決定がデータ固有の条件ではなく、イベントに基づいている点が他のゲートウェイと異なります。

Event-based Gatewayは、次の要素から構成されます。

- イベントベース・ゲートウェイ

- 2つ以上のターゲット・イベント。これらのイベントには、次のタイプがあります。

- メッセージ・キャッチ・イベント
メッセージ・キャッチ・イベントを使用してプロセスを開始する場合は、メッセージ・スロー・イベントを使用してプロセスを起動する必要があります。

- タイマー・キャッチ・イベント
一般に、Event-based Gatewayに付随して単一のタイマー・イベントのみが使用されます。

- 受信タスク
Event-based Gatewayに付随して受信タスクを使用し、プロセス・インスタンスを開始できます。ただし、プロセスは、コール側プロセス内の送信タスクから起動する必要があります。

注意:

同じEvent-based Gateway内にメッセージ・イベントと受信タスクを混在させることはできません。

ターゲット要素には、Event-based Gatewayからの受信シーケンス・フローのみを含めることができます。プロセスの他の部分からのシーケンス・フローを含めることはできません。Event-based Gatewayでは、プロセスにおいて発生する可能性のあるイベントを複数設定できますが、プロセス・インスタンス内でトリガーされるのは1つのイベントのみです。Event-based Gatewayで最初のイベントがトリガーされると、そのイベントに続くパスが使用されます。

デフォルトで、プロセスにイベントベース・ゲートウェイを追加すると、タイマー・キャッチ・イベントおよびメッセージ・キャッチ・イベントも作成されます。

注意:

Event-based Gatewayを削除すると、すべての送信シーケンス・フローも削除されます。関連付けられたイベントは削除されません。

6.7.6.1 Event-based Gatewayを使用したプロセスの開始

プロセスの最初でEvent-based Gatewayを使用して新しいプロセス・インスタンスを作成することもできます。これはプロセス内に複数の開始イベントを保持するのと同じです。

Event-based Gatewayを使用可能にして新しいプロセス・インスタンスを作成するには、次のことを確認する必要があります。

- Event-based GatewayのInitiateプロパティが有効であること。

- Event-based Gatewayへの受信シーケンス・フローがないこと。

Event-based Gatewayは、新しいプロセス・インスタンスの作成に使用できますが、別のプロセスからのデータ入力は受け入れません。プロセス・インスタンスに渡す必要があるデータは、ターゲット・イベントを使用して構成する必要があります。

6.8 中間イベントを使用したプロセス・フローの制御

この項では、中間イベント、および中間イベントを使用してプロセスのフローおよび動作を制御する方法について説明します。

6.8.1 中間イベントの概要

開始イベントおよび停止イベントとは異なり、中間イベントはプロセス・フローの最中に発生します。

中間イベントには次の2つのタイプがあります。

- 標準フロー・イベント
標準フロー・イベントは、プロセスの一般的なフローで発生します。

- 境界イベント
境界イベントは、プロセスの中断をトリガーします。境界イベントはフロー・オブジェクトに関連付けられており、これらのオブジェクトの通常の動作を中断するように構成できます。

境界イベントは、プロセスが経由するフロー・オブジェクトのパスを特定するために使用されるという点で、シーケンス・フローと同様に動作します。

境界イベントは、連続しないタイプおよび連続するタイプの2つのタイプに分類されます。

6.8.2 タイマー・キャッチ・イベントの概要

タイマー・キャッチ・イベントを使用すると、時間条件を使用してプロセスのフローを制御できます。次に、タイマー・キャッチ・イベントの使用例を示します。

- アクティビティ実行の前に遅延を作成する

- アクティビティの期限を構成する

- プロセスの期限を構成する

- 一定時間経過後に追加のアクティビティをトリガーする

図6-47は、タイマー・キャッチ・イベントのデフォルトの表記を示しています。

図6-47 タイマー・キャッチ・イベント

「図6-47 タイマー・キャッチ・イベント」の説明

タイマー・イベントは、アクティビティの境界イベントとして使用できます。タイマー・イベントは、連続しない境界イベントまたは連続する境界イベントとして定義できます。

連続しないタイマー・イベントが発生した場合、トークンはメイン・プロセス・フローを離れて、タイマー・イベントによって定義されたフローを進みます。連続しないタイマー・イベントによって定義されたフローは、メイン・プロセス・フローに直接戻ることができます。

連続するイベントが発生した場合は、トークンのコピーが作成され、タイマー・イベントによって定義されたフローに渡されます。連続するイベントによって定義されたフローからメイン・プロセス・フローに戻ることはできません。

6.8.3 エラー・キャッチ・イベントの概要

エラー・キャッチ・イベントは、プロセス・フロー内で発生したエラーを処理するために使用される中間イベントです。

注意:

インライン・ハンドラを使用して、プロセス内で発生するエラー状態に対応することもできます。

エラー・キャッチ・イベントは、常に境界イベントとして使用されます。このイベントは、次の対象にアタッチできます。

- サービス・タスク

- コール・アクティビティ

- ユーザー・タスク

- 送信タスク

- 受信タスク

- スクリプト・タスク

- ルール・タスク

- サブプロセス

エラー・キャッチ・イベントは常に割込みを実行します。つまり、このイベントによって、プロセスの通常のフローが中断されます。

図6-48は、サービス・タスクに境界イベントとしてアタッチされたエラー・キャッチ・イベントのデフォルトの表記を示しています。

図6-48 サービス・タスクにおける境界イベントとしてのエラー・キャッチ・イベント

「図6-48 サービス・タスクにおける境界イベントとしてのエラー・キャッチ・イベント」の説明

サービスまたはプロセスでエラーが発生すると、エラー・キャッチ・イベントがトリガーされます。これにより、プロセス・フローはエラー・キャッチ・イベントの送信シーケンス・フローのパスに進みます。

このフローを使用して、エラーの処理方法を定義できます。エラーは、次の2通りの方法のいずれかで処理されます。

- プロセス・フローが、メイン・プロセス・フローに戻ります。実行する必要があるすべての作業は、メイン・フローに戻る前にエラー・プロセス・フロー内で処理されます。

注意:

境界イベントが非割込みである場合、境界フローはメイン・フローに戻ることができません。

- プロセス・フローは終了イベントに移動します。プロセスは即時に停止されます。プロセスの制御は、そのプロセスを開始したサービスまたはプロセスに戻ります。

6.9 サブプロセスおよびインライン・ハンドラを使用したプロセスの整理

サブプロセスおよびインライン・ハンドラを使用して、プロセスを整理できます。機能領域をグループ化してプロセスをさらにわかりやすくできます。

6.9.1 サブプロセスの概要

サブプロセスを使用すると、BPMNフロー・オブジェクトをグループ化して、プロセスをさらにわかりやすくできます。Oracle BPMでは、サブプロセスは埋込みのサブプロセスとなります。サブプロセスは、親サブプロセスの一部として包含されます。サブプロセスは、None開始イベントで始まり、None終了イベントで終わる必要があります。

サブプロセスは開閉できます。図6-49は、プロセス内の閉じられたサブプロセスの表示を示しています。

図6-49 閉じられたサブプロセスの例

「図6-49 閉じられたサブプロセスの例」の説明

図6-50は、プロセス内の開かれたサブプロセスの表示を示しています。サブプロセスを開くと、サブプロセス内のフロー・オブジェクトを編集できます。また、サブプロセス・ウィンドウの端をクリックしてドラッグすると、ウィンドウのサイズを変更できます。

図6-50 開かれたサブプロセスの例

「図6-50 開かれたサブプロセスの例」の説明

他のタイプのプロセスと同様に、サブプロセスには開始イベントと終了イベントがあり、個別のプロセス・フローが含まれています。サブプロセスは、None開始イベントで始まり、None終了イベントで終わる必要があります。サブプロセスにスイムレーンを含めることはできません。

また、サブプロセスはアクティビティと同様に動作します。受信シーケンス・フローおよび送信シーケンス・フローを使用できます。また、サブプロセス内で使用されるデータ・オブジェクトを定義するデータ・アソシエーションが含まれています。

サブプロセスには、タイマー境界イベント、メッセージ境界イベントおよびエラー境界イベントを含めることもできます。

必要に応じて、プロセスにはネストしたサブプロセスを含めることができます。ただし、ネストしたサブプロセスは、プロセスをわかりやすくするために必要な場合にのみ使用してください。

6.9.1.1 サブプロセスとシーケンス・フロー

サブプロセス内のフロー・オブジェクトには、サブプロセス外部のフロー・オブジェクトに接続するシーケンス・フローを含めることができません。

他のフロー・オブジェクトと同様に、サブプロセスには、受信シーケンス・フローおよび送信シーケンス・フローがあります。

6.9.1.2 コンテキスト内のサブプロセス

図6-51は、サブプロセスの例を示しています。この例では、サブプロセスは、営業見積の処理に使用されるサービス・タスクをグループ化するために使用されています。

図6-51 サブプロセスの例

「図6-51 サブプロセスの例」の説明

6.9.1.3 ループ・サブプロセス

プロセス・フローのコンテキスト内で、複数回繰り返すようにサブプロセスを構成できます。ループは、プロセスの設計時にプロセス・アナリストが検討する必要がありますが、実装はプロセス開発者が行います。

注意:

Oracle Business Process Composerではループを構成できません。ループを構成するには、Oracle BPM Studioを使用する必要があります。詳細は、Oracle BPMモデリングおよび実装ガイドを参照してください。

6.9.2 インライン・ハンドラの概要

インライン・ハンドラはサブプロセスのタイプで、通常のプロセス・フローの外部で発生する条件をモデル化できます。

インライン・ハンドラは、次の開始イベントで使用できます。

- エラー開始

- タイマー開始

- メッセージ開始

インライン・ハンドラをプロセスに追加すると、デフォルトでは、メッセージ開始イベントで作成されます。開始イベントのタイプは、必要に応じて変更できます。

注意:

一連のインライン・ハンドラには、1つの開始イベントのみを使用できます。ただし、プロセス内では複数のインライン・ハンドラを使用できます。

6.10 プロセス内のデータ・オブジェクトの値の変更

この項では、スクリプト・タスクを使用してプロセス内のデータ・オブジェクトの値を変更する方法について説明します。データ・オブジェクトの一般的な情報については、第10章「データ・オブジェクトおよび式の使用」を参照してください。

6.10.1 スクリプト・タスクの概要

スクリプト・タスクは、プロセス内のデータ・オブジェクトの値を変更するために使用します。スクリプト・タスクは、値の変更をビジネス・プロセス内で明示的に表示する場合、または別のフロー・オブジェクトの外部でデータ・オブジェクトの値を変更する場合に使用します。多くの場合、スクリプト・タスクは、プロセス開始時にデータ・オブジェクトの初期値を設定するために使用します。

図6-52は、スクリプト・タスクのデフォルトの表記を示しています。

図6-52 スクリプト・タスク

「図6-52 スクリプト・タスク」の説明

スクリプト・タスクは、プロセスおよびプロセスベースのアプリケーション内におけるデータ・オブジェクトの動作の定義を担当する、プロセス開発者がプロセスに追加します。

6.10.1.1 コンテキスト内のスクリプト・タスク

図6-53は、営業見積サンプルの開始時に使用される2つのスクリプト・タスクの例を示しています。営業見積サンプルでは、プロセス・インスタンスの作成時にデータ・オブジェクトに対して初期値を設定し、いくつかのビジネス・インジケータに値を設定するスクリプト・タスクが使用されています。

図6-53 営業見積サンプル内のスクリプト・タスク

「図6-53 営業見積サンプル内のスクリプト・タスク」の説明

プロジェクト・データ・オブジェクトは、プロジェクト内に定義するデータ・オブジェクトです。プロジェクト内のすべてのプロセスは、定義されているデータ・オブジェクトにアクセスしますが、実際の値はオブジェクトを使用するプロセスに応じて変化します。また、プロジェクトがビジネス・インジケータを使用するように構成されている場合には、ビジネス・インジケータとしてマークされたデータ・オブジェクトの値が、エンジンによってプロセス分析データベースに保存されます。

図6-54は、ビジネス・インジケータの初期値を設定するために使用されるデータ・アソシエーションを示しています。

図6-54 ビジネス・インジケータの設定スクリプト・タスクによって使用されるデータ・アソシエーション

「図6-54 ビジネス・インジケータの設定スクリプト・タスクによって使用されるデータ・アソシエーション」の説明

データ・アソシエーションを受け入れる他のフロー・オブジェクトと同様に、式を使用してデータ・オブジェクトの値を変更できます。図6-55は、割引プロジェクト変数の値を変更する場合の式の使用方法を示しています。

図6-55 割引プロジェクト変数の値の変更に使用される式

「図6-55 割引プロジェクト変数の値の変更に使用される式」の説明

注意:

BPM Studioを使用して、変換を使用するスクリプト・タスクを実装した場合、Business Process ComposerでBPMプロジェクトを開く際それらのタスクは表示されません。

6.11 測定マークを使用したプロセス・パフォーマンスの測定

測定マークを使用して、プロセス・パフォーマンスを測定できます。測定マークを使用すると、プロセス内の特定の位置、またはプロセスの特定のセクションにおいて、タイプが測定のビジネス・インジケータを測定できます。

測定マークおよびプロセス分析データベースの使用方法の詳細は、Oracle BPMモデリングおよび実装ガイドのプロセス分析の使用を参照してください。

測定マークによって、プロセス分析データベースに次のデータが保存されます。

- プロセスのデフォルト測定の値

- 該当する測定マークに関連付けられている測定ビジネス・インジケータの値

- プロセスに定義されているディメンションの値

1つの測定マークを使用して、複数の測定ビジネス・インジケータを測定できます。

BPMNサービス・エンジンでは、測定ビジネス・インジケータの値が保存されるときに、プロセスに定義されたディメンションの値も保存されます。後でプロセスを監視するためにダッシュボードを構築するときに、これらのディメンションを使用して値を様々なカテゴリにグループ化できます。たとえば、営業見積サンプルでは、承認済見積件数の合計を地域ごとに表示できます。

定義できる測定マークのタイプは次のとおりです。

- 単一測定

- 間隔の開始

- 間隔の停止

6.11.1 プロセスへの測定マークの追加方法

測定マークは、コンポーネント・パレットからプロセス・エディタ・キャンバスにドラッグすることによって、ビジネス・プロセスに追加できます。

単一測定マークをプロセスに追加するには:

1. BPMNプロセスを開きます。

2. コンポーネント・パレットで、「アーティファクト」セクションを開き、次のいずれかを選択します。

- 「測定の開始」マーク

- 「測定の終了」マーク

- 「単一測定」マーク(スナップショット)

3. ビジネス・インジケータを測定するシーケンス・フロー付近まで測定マークをドラッグします。シーケンス・フローが青色になったら、測定マークをドロップします。

4. 測定マークを右クリックして、「プロパティ」を選択します。

5. 「名前」フィールドに、測定マークを識別するための名前を入力します。

6. 「ビジネス・インジケータ」セクションで、使用可能なビジネス・インジケータのリストからビジネス・インジケータを選択し、2つのリストの間にある矢印を使用して「選択済」リストに移動します。

注意:

1つの測定マークで複数のビジネス・インジケータを測定できます。

注意:

ビジネス・インジケータを選択しない場合、この測定マークにはデフォルト・ビジネス・インジケータの値のみが保存されます。「測定マーク・プロパティ」ダイアログ・ボックスを開いた状態でビジネス・インジケータを追加するには、「選択済」リストの下にある「新規」ボタンをクリックします。

7. 「OK」をクリックします。

7 プロジェクト・ライフサイクルの使用

この章では、BPMプロジェクトに関連するいくつかの拡張機能について説明し、開発ライフサイクル内でそれらの拡張機能を使用する方法について説明します。

この章の内容は次のとおりです。

- 7.1項「プロジェクトのインポートおよびエクスポート」

- 7.2項「BPMプロジェクト・テンプレートの使用」

- 7.4項「プロジェクトの承認ワークフローの構成」

- 7.5項「プロジェクトのデプロイ」

7.1 プロジェクトのインポートおよびエクスポート

Business Process Composerを使用すると、BPMプロジェクトを.expファイルとしてインポートおよびエクスポートできます。この機能によって、BPMリポジトリを使用せずに、ファイル・システムを直接使用して、他のBusiness Process ComposerユーザーおよびBPM Studioユーザーとプロジェクトを直接共有できます。

7.1.1 ローカル・ファイル・システムからプロジェクトをインポートする方法

以前にエクスポートして.EXPファイルとして保存したBPMプロジェクトをインポートできます。インポートしたプロジェクトは、BPMリポジトリに格納されます。

プロジェクトをインポートするには:

1. アプリケーションのようこそページにアクセスします。

2. メイン・メニューのインポートを選択し、「プロジェクトのインポート」を選択します
図7-1に示すように、メイン・メニューは、Business Process Composerユーザー・インタフェースの左上にあります。

図7-1 Application Composerのメイン・メニュー

「図7-1 Application Composerのメイン・メニュー」の説明

3. 「参照」をクリックして、インポートするプロジェクト・ファイルを選択します。

4. 「OK」をクリックします。

5. プロジェクトの名前を入力します。
インポートするプロジェクト・ファイルを選択すると、名前フィールドは自動的に伝播されます。

6. 説明を入力します(オプション)。

7. 必要に応じて、インポートしたプロジェクトが作成されるBPMリポジトリ内のフォルダを選択する場合は、「参照」をクリックしてから、フォルダを選択します。

8. 「OK」をクリックして、プロジェクトをBPMリポジトリにインポートします。

7.1.2 ローカル・ファイル・システムにプロジェクトをエクスポートする方法

Business Process ComposerからエクスポートしたプロジェクトをOracle BPM Studioにインポートできます。プロジェクトをローカル・ファイル・システムにエクスポートすると、Oracle BPM MDSリポジトリを使用せずにプロジェクトを共有できます。

Oracle BPM Studioへのプロジェクトのインポートの詳細は、Oracle BPMモデリングおよび実装ガイドを参照してください。

プロジェクトをEXPファイルとしてエクスポートするには:

1. エクスポートするプロジェクトを開きます。

2. メイン・メニューの「エクスポート」を選択し、「プロジェクトのエクスポート」を選択します。

3. ローカル・ファイル・システム上の場所を選択し、「保存」をクリックします。

エクスポートしたプロジェクトは、ローカル・ファイル・システム上に.EXPファイルとして保存されます。

プロジェクトをOracle Tutorファイルとしてエクスポートするには:

1. エクスポートするプロジェクトを開きます。

2. メイン・メニューの「エクスポート」を選択し、「Oracle Tutorのエクスポート」を選択します。

3. 次の中から選択します。

- アクティブ・プロセス: 現在アクティブなプロセスを選択します。このオプションは、プロセスがすでに開かれていて、現在焦点がそのプロセスに置かれている場合にのみ表示されます。

- 開かれているすべてのプロセス: 現在開いているプロセスのみをエクスポートします。

- プロジェクトのすべてのプロセス: 現在のプロジェクトのすべてのプロセスをエクスポートします。

4. 「OK」をクリックします。

ファイルは、ファイル・システム上に.ZIPファイルとして保存されます。

7.2 BPMプロジェクト・テンプレートの使用

次の項では、Oracle BPMプロジェクトの作成および使用の方法について説明します。

7.2.1 プロジェクト・テンプレートの概要

プロジェクト・テンプレートを使用すると、ビジネス・ユーザーは、開発者の支援を受けなくてもカスタムOracle BPMアプリケーションを迅速に作成し、それをランタイムにデプロイできます。ビジネス・ユーザーは、Oracle Business Process Composerを使用して、プロジェクト・テンプレートを基に新しいBPMプロジェクトを作成できます。これらのプロジェクトには、BPMNプロセス・フローが含まれており、ランタイムに直接デプロイできます。

プロジェクト・テンプレートには、ヒューマン・タスク、ビジネス・ルール、アダプタなどの再使用可能なコンポーネントとサービスを統合できます。これらのサービスは、ビジネス・カタログの一部として格納されます。

管理者権限があるBusiness Process Composerユーザーは、ローカル・ファイル・システムからプロジェクト・テンプレートを直接インポートすることもできます。詳細は、第12章「管理タスクの実行」を参照してください。

Oracle BPM Studioを使用すると、プロセス開発者は、通常のプロジェクトをテンプレートに変換し、それをOracle BPMリポジトリに公開できます。テンプレートがリポジトリで使用可能になると、Business Process Composerを使用してテンプレートを基に新しいプロジェクトを作成できます。

プロセス・テンプレートの作成の詳細は、Oracle BPMモデリングおよび実装ガイドを参照してください。

プロジェクト・テンプレートは、通常のOracle BPMプロジェクトに基づいており、一般に、ビジネス・カタログで定義される必須の実装とサービスをすべて保持しています。ただし、必要なフロー・オブジェクトに割り当てられる必須のサービスが一部ない場合があります。プロジェクト・テンプレートに基づいて新しいプロジェクトを作成した後、ビジネス・アナリストは、必要なフロー・オブジェクトにビジネス・カタログ・コンポーネントを割り当てることができます。

各アクティビティに必要な特定のサービスは、プロジェクト・テンプレートのエディタ・ポリシーによって定義されます。プロセス・アナリストが必要なサービスを取り込んだ後、プロジェクトをOracle BPMランタイムにデプロイできるようになります。

7.2.1.1 編集ポリシーの概要

プロジェクト・テンプレートを使用して、プロセスおよびプロセス内のフロー・オブジェクトの編集ポリシーを定義することもできます。編集ポリシーにより、プロジェクト・テンプレートに基づく新規プロジェクトの作成時に、プロセスのどの部分を変更または編集できるかが決定します。編集ポリシーはプロセス全体に対して定義されます。ただし、個々のフロー・オブジェクトに対する編集ポリシーを定義することもできます。

プロセス・テンプレートでの編集ポリシーの定義の詳細は、Oracle BPMモデリングおよび実装ガイドを参照してください。

編集ポリシーを使用すると、テンプレートからのプロジェクト作成時にプロセスのどの要素を変更でき、どの要素を変更できないかを、プロジェクト・テンプレートの作成者が定義できます。

注意:

Business Process Composerを使用してプロセスおよび要素の編集ポリシー設定を変更することはできません。

7.2.1.1.1 プロセス・レベルの編集ポリシー

プロジェクト・テンプレートでは、各プロセスに編集ポリシーが含まれており、そのポリシーによって、Business Process Composerを使用してプロセスに加えることができる変更が決定されます。

表7-1では、プロセス・レベルの編集ポリシーについて説明します。

表7-1 プロセス・レベルの編集ポリシー

編集ポリシー

説明

シールされたアクティビティ

ユーザーはプロセス内のアクティビティに変更を加えることはできません。

シールされたフロー

プロセスの全体的なフローを変更することはできません。ユーザーは特定の実装の詳細を編集できますが、プロセス・フローを変更できません。

7.2.1.1.2 コンポーネント・レベルの編集ポリシー

プロセス内には、プロセス内のフロー・オブジェクトに適用される編集ポリシーもあります。コンポーネント・レベルの編集ポリシーは、プロセス内のフロー・オブジェクト用に構成できます。

表7-2では、コンポーネント・レベルの編集ポリシーに対して構成できる編集ポリシーの値について説明します。

表7-2 コンポーネント・レベルの編集ポリシー

編集ポリシー

説明

シール済

フロー・オブジェクトは変更できません

実装を変更できます

ユーザーは必要に応じてこのフロー・オブジェクトを再定義できます。

実装する必要があります

ユーザーは、適切に機能させるために、コンポーネントをビジネス・カタログからこのフロー・オブジェクトに割り当てる必要があります。

プロセス権限の使用

プロセスで定義されたデフォルトの編集ポリシーを使用します。

7.2.1.2 プロジェクト・テンプレートでのデータ・オブジェクトと変数の使用の概要

プロジェクト・テンプレートでは、プロジェクト内で使用されるデータ・オブジェクトを定義できます。使用されるデータ・オブジェクトには、Oracle BPMのデフォルト・タイプや、プロセス・テンプレート開発者がOracle BPM Studioで作成した複合データ・オブジェクトがあります。

Business Process Composerでプロジェクト・テンプレートに基づいてプロジェクトを編集する場合は、必要に応じて新規データ・オブジェクトを追加および作成できます。ただし、新規データ・オブジェクトは必ず、プロジェクト・テンプレートに以前に定義されたタイプに基づいて作成する必要があります。複合データ・オブジェクトの新規のタイプは作成できません。

プロジェクト・テンプレートで定義されたデータ・アソシエーションおよび式のすべてのデータ・オブジェクトを使用できます。詳細は、10項「データ・オブジェクトおよび式の使用」を参照してください。

7.2.2 プロジェクト・テンプレートに基づいたプロジェクトの作成

Business Process Composerを使用して、プロジェクト・テンプレートを基に新しいプロジェクトを作成できます。

プロジェクト・テンプレートから新規プロジェクトを作成するには:

1. Oracle Business Process Composerを起動します。

2. メイン・メニューの「新規」を選択し、「新規プロジェクト」を選択します。

3. プロジェクトの名前を入力します

4. 「テンプレートの使用」を選択し、「選択」をクリックします。

5. 使用するテンプレートを選択します。

6. 必要に応じて、新しいプロジェクトを格納するフォルダを選択します。

7. 「次へ」をクリックします。

8. ドロップダウン・リストから、プロジェクト用に構成する承認ルーティングのタイプを選択します。

注意:

承認ルーティングのタイプは、新規プロジェクトの作成後に変更できます。

9. 「選択」を選択し、ブラウザのドロップダウン・メニューから「ユーザー」または「グループ」を選択します。

10. 「検索」をクリックして、使用可能なユーザーまたはグループのリストを表示します。

11. 「使用可能」リストからアイテムを選択し、選択したアイテムを他のリストに移動をクリックします。

12. 「OK」をクリックします。

13. 「終了」をクリックすると新規プロジェクトが作成されます。

7.3 プロジェクト・スナップショットの使用

次の各項では、プロジェクト・スナップショットの使用方法について説明します。

7.3.1 プロジェクト・スナップショットの概要

プロジェクト・スナップショットは、特定の時点におけるプロジェクトの読取り専用コピーです。スナップショットは読取り専用であるため、編集のために変更したり、開くことはできません。プロジェクト・スナップショットの内容の表示、およびスナップショットに基づいたプロジェクトのエクスポートおよびデプロイは実行できます。

7.3.2 プロジェクト・スナップショットの使用

この項の手順では、プロジェクト・スナップショットの作成方法と管理方法について説明します。

7.3.2.1 新規プロジェクト・スナップショットの作成方法

新規プロジェクト・スナップショットはプロジェクトのようこそページから作成できます。

新規プロジェクト・スナップショットを作成するには:

プロジェクトで所有者または編集者権限のあるユーザーは、新規スナップショットを作成できます。

1. プロジェクトのようこそページに移動し、「スナップショット」を開きます。

2. 「新規」をクリックします。

3. スナップショットの名前を入力し、「スナップショットの作成」をクリックします。

スナップショットは、このプロジェクトに対して定義されているスナップショットのリストに表示され、スナップショットが作成された日付やスナップショット作成者のユーザーIDなどが示されます。

7.3.2.2 プロジェクト・スナップショットの内容の表示方法

プロジェクト・スナップショットの内容を表示すると、プロジェクトの以前のバージョンを表示して、現在のバージョンと比較できます。

プロジェクト・スナップショットの内容を表示するには:

1. プロジェクトのようこそページに移動します。

2. 「スナップショット」を開き、表示するスナップショットの名前をクリックします。

スナップショット・ビュー内では、プロジェクトに関連付けられているプロセスの状態、ルールおよびヒューマン・タスクを表示できます。

7.3.2.3 プロジェクトのアクティブ・バージョンに戻る方法

プロジェクト・スナップショットからプロジェクトのアクティブ・バージョンに戻るには、プロジェクトのようこそページ上部にある「アクティブなバージョンに戻る」ボタンをクリックします。

7.3.2.4 プロジェクト・スナップショットの削除方法

編集者ロールを付与されたユーザーは、自身が作成したスナップショットを削除できます。所有者または管理者ロールを付与されたユーザーは、どのユーザーが作成したスナップショットも削除することができます。

1. プロジェクトを開きます。

2. プロジェクトのようこそページから、「スナップショット」を開きます。

3. 削除するスナップショットをリストから選択し、「削除」をクリックします。

4. 「はい」をクリックして、プロジェクト・スナップショットを削除することを確認します。
削除したプロジェクト・スナップショットは復元できません。

7.3.2.5 プロジェクト・スナップショットのエクスポート方法

1. プロジェクトを開きます。

2. エクスポートするプロジェクト・スナップショットを表示します。

3. メイン・メニューの「エクスポート」を選択し、「プロジェクトのエクスポート」を選択します。

4. ローカル・ファイル・システム上の場所を選択し、「保存」をクリックします。
エクスポートしたプロジェクト・スナップショットは、ファイル・システム上に.EXPファイルとして保存されます。

7.3.2.6 プロジェクト・スナップショットのデプロイ方法

1. プロジェクトを開きます。

2. デプロイするプロジェクト・スナップショットを表示します。

3. メイン・メニューの「プロジェクトのデプロイ」を選択します。

4. 図7-2に示すように、情報を入力します。

5. 「デプロイ」をクリックします。

7.4 プロジェクトの承認ワークフローの構成

次の各項では、プロジェクトの承認ワークフローの構成方法について説明します。

7.4.1 承認ワークフローの概要

承認ワークフローでは、Business Process Composerを使用して、Oracle BPMプロジェクトをランタイムにデプロイする前に経由する必要がある承認プロセスを定義します。承認ワークフローは、新規プロジェクトを作成するとき、またはプロジェクトを後で構成するときに定義できます。プロジェクトのようこそページのプロジェクト・プロパティ・ボックスで、プロジェクトに対して定義されている承認ワークフローを表示できます。

表7-3では、Oracle BPMで使用可能な承認ワークフローの様々なタイプについて説明します。

表7-3 承認ルーティング

なし

承認ワークフローは指定されていません。適切な権限を持つユーザーは、プロジェクトをOracle BPMランタイムに直接デプロイできます。

シンプル

ワークフローで承認者を1人のみ指定します。

シンプル・シーケンシャル

承認者の順次リストを指定します。プロジェクトのデプロイメントを承認するには、すべての承認者が承認する必要があります。

シンプルFYI

プロジェクトがデプロイされているが、承認ワークフローは承認者がタスクを処理するのを待機しないという通知を送信します。

パラレル

プロジェクトのデプロイメントを同時に承認する必要がある承認者のリストを指定します。

7.4.2 承認ワークフローの使用

次の各項では、プロジェクトの承認ワークフローを構成する方法、およびワークフローの一部として承認を実行する方法について説明します。

7.4.2.1 プロジェクトの承認ワークフローの構成方法

Business Process Composerを使用すると、新規プロジェクトの作成時に承認ワークフローのタイプを構成できます。プロジェクトの作成後に承認ワークフローを構成することもできます。

プロジェクトの承認ワークフローを構成するには:

1. プロジェクトのようこそページに移動します。

2. プロジェクトの編集中であることを確認します。

3. プロジェクト情報エリア内の承認ワークフローの隣にある「編集」をクリックします。

4. 承認ワークフローのタイプを選択し、「適用」をクリックします。

5. 「選択」を選択し、ブラウザのドロップダウン・メニューから「ユーザー」または「グループ」を選択します。

6. 「検索」をクリックして、使用可能なユーザーまたはグループのリストを表示します。

7. 「使用可能」リストからアイテムを選択し、選択したアイテムを他のリストに移動をクリックします。

8. 「OK」をクリックします。

9. 「適用」をクリックします。

7.5 プロジェクトのデプロイ

Business Process Composerを使用して、Oracle BPMランタイムにプロジェクトをデプロイできます。デプロイメントは、Business Process Composerアプリケーションがインストールされている同じ環境内でのみ可能です。

7.5.1 プロジェクトをデプロイできるユーザー

プロジェクトの所有者権限を付与されたユーザーは、Business Process Composerを使用してOracle BPMランタイムへプロジェクトを直接デプロイできます。

7.5.2 プロジェクトをランタイムにデプロイする方法

プロジェクトの所有者は、Oracle BPMランタイムへプロジェクトを直接デプロイできます。次の手順では、承認ワークフローが有効になっていない場合にプロジェクトをデプロイする方法について説明します。

プロジェクトをランタイムにデプロイするには:

1. メイン・メニューの「デプロイメント」を選択し、「プロジェクトのデプロイ」、「プロジェクトのデプロイ」と選択します。
Business Process Composerでプロジェクトが検証されます。プロジェクトにエラーがない場合、デプロイメント・プロセスが続行されます。

2. 図7-2に示すように、「プロジェクトのデプロイ」ダイアログに必要な情報を入力します。

図7-2 「プロジェクトのデプロイ」ダイアログ

「図7-2 「プロジェクトのデプロイ」ダイアログ」の説明

「プロジェクトのデプロイ」ダイアログのプロパティの説明を次の表に示します。

表7-4 「プロジェクトのデプロイ」ダイアログのプロパティ

プロジェクト

プロジェクトの名前が表示されます

バージョン

デプロイするプロジェクトのバージョンを選択する場合に使用します。プロジェクトの現行バージョンまたはプロジェクト・スナップショットを選択できます。

最終リビジョンID

デプロイ済の最新プロジェクト・バージョンのリビジョンIDを表示します。

新規リビジョンID

デプロイしたアプリケーションのリビジョンIDを指定します。このIDは、次のような書式である必要があります。

n0[.n1[.n2[.n3[.n4]]]][-milestone-name[milestone-number]/_patch-number.

デフォルトのデプロイメント・バージョンのオーバーライド

デフォルトのデプロイメント・バージョンをオーバーライドします。

デプロイ担当ユーザー名

Oracle BPMプロジェクトをランタイムにデプロイするために使用します。

パスワード

前述のデプロイ担当ユーザー名に対応するパスワードを指定します。

oramdsプロトコル用MDS接続の追加

このオプションは、サーバーの構成方法に応じて利用できます。

oramdsプロトコルを使用したデータベースへの接続を有効にする場合に選択します。これは、Oracle BPMリポジトリに使用されるデータベースに接続するときに必要となる場合があります。

これが必要な場合、システム管理者はデータベースに関する次の接続情報を提供する必要があります。

- ホスト名: データベースのホスト名またはIPアドレスを指定します。

- ポート: データベース・ポートを指定します。

- SID: データベースのSIDを指定します。

- ユーザー名: Oracle MDSデータベースへの接続に使用するデータベースのユーザー名を指定します。

- パスワード: データベース・ユーザーのパスワードを指定します。

コンポジット・リビジョンをデフォルトとしてマークします

現在のリビジョンをデフォルトのリビジョンとして定義します。

ターゲットのデプロイ

SOAコンポジット・アプリケーションがデプロイされるOracle MDS内のフォルダを選択できます。

3. 「デプロイ」をクリックします。
Business Process Composerは、プロジェクトをランタイムにデプロイします。この処理には数分かかる場合があります。

4. デプロイメントの完了後、「OK」をクリックします。

プロジェクトはOracle BPMランタイムにデプロイされます。プロジェクトは、プロジェクト・ブラウザのデプロイ済プロジェクトのリストから使用できます。

7.5.3 承認ワークフローを使用してプロジェクトをデプロイする方法

Business Process Composerを使用して承認ワークフローを指定できます。このワークフローでは、プロジェクトがOracle BPMランタイムにデプロイされる前にプロジェクトを承認する必要があるユーザーを定義します。

承認ワークフローを使用してプロジェクトをデプロイするには:

1. メイン・メニューの「プロジェクトのデプロイ」を選択します。
Business Process Composerでプロジェクトが検証されます。プロジェクトにエラーがなければ、承認ワークフロー・ブラウザにプロジェクトが表示されます。

プロジェクトに定義されているタイプ承認ワークフローに基づいて、必須の承認者は、プロセス・ワークスペースを使用してデプロイメントを承認する必要があります。詳細は、Oracle Fusion Middleware Business Process Managementのユーザーズ・ガイドを参照してください。

承認ワークフロー・ブラウザを使用して、承認ステータスと進捗状況を監視できます。

2. デプロイメントが承認された後、承認ワークフロー・ブラウザを開いて「デプロイ」をクリックします。

7.5.4 デプロイ済のプロジェクトを編集する方法

Business Process Composerを使用して、デプロイ済のOracle BPMプロジェクトを開くことができます。デプロイ済のプロジェクトを開くと、プロジェクトに含まれているOracle Business Rulesを編集し、Oracle BPMランタイムに変更を再度デプロイできます。

注意:

デプロイ済プロジェクトを編集するには、SOAデザイナ・ロールを付与されている必要があります。

実行時にOracle Business Rulesを編集する方法の詳細は、8.4項「実行時のOracle Business Rulesの編集」を参照してください。

デプロイ済のプロジェクトを開くには:

1. Business Process Composerを起動します。

2. メイン・メニューの「デプロイ済プロジェクトを開く」を選択します。

3. プロジェクト・ナビゲータでプロジェクトを選択します。

4. 「リフレッシュ」をクリックして、Oracle BPMリポジトリの最新の内容を表示します。

5. 「OK」をクリックします。

7.5.5 プロジェクトSARファイルの生成方法

Business Process Composerから、プロジェクトをSARファイルとして生成できます。システム管理者はこのファイルを使用して、Oracle Enterprise Manager管理コンソールからプロジェクトをデプロイできます。

プロジェクトSARファイルを生成するには:

1. メイン・メニューの「デプロイメント」を選択し、「プロジェクトSARファイルの生成」を選択します。
Business Process Composerでプロジェクトが検証されます。プロジェクトにエラーが含まれている場合は、プロジェクトの「検証」タブに表示されます。

2. SARファイルの生成に使用するプロジェクト・バージョンを選択します。プロジェクトの現行バージョンまたはプロジェクト・スナップショットを選択できます。

3. リビジョンIDを入力します。

4. 必要に応じて、次のオプションを選択します:

- デフォルトのデプロイメント・バージョンのオーバーライド

- oramdsプロトコル用MDSデータベース接続を追加。: oramdsプロトコルを使用したデータベースへの接続を有効にする場合に選択します。これは、Oracle BPMリポジトリに使用されるデータベースに接続するときに必要となる場合があります。

5. 「OK」をクリックします。

6. プロジェクトにエラーが含まれていない場合は、「OK」をクリックしてSARファイルをローカル・ファイル・システムに保存します。

7.5.6 デプロイメント計画の生成方法

デプロイメント計画は、Oracle BPM StudioからBPMプロジェクトをデプロイする際に使用するXML構成ファイルです。Business Process Composerでは、デプロイメント計画のXMLファイルを生成する際に予期しないエラーが発生します。

注意:

デプロイメント計画を作成する前に、プロジェクトを検証する必要があります。Business Process Composerでは、デプロイメント計画の生成時に検証は実行されません。

デプロイメント計画を生成するには:

1. メイン・メニューで、「デプロイメント」を選択します。

2. 「デプロイメント計画の生成」を選択します。

3. ローカル・ファイル・システム上の場所を選択し、「OK」をクリックします。

8 Oracle Business Rulesの使用

この章では、Business Process Composerに含まれるOracle Business Rulesエディタを使用する方法について説明します。この章には、Oracle Business Rulesの全般的な概要および使用するためのタスクを示します。

注意:

Business Process Composerを使用して、新しいビジネス・ルールやルール・ディクショナリを作成することはできません。プロジェクト・テンプレートのビジネス・カタログの一部として定義されたルール・ディクショナリを編集することはできます。

この章の内容は次のとおりです。

- 8.1項「Oracle Business Rulesの概要」

- 8.2項「Business Process Composerルール・エディタの概要」

- 8.3項「Business Process Composerでのビジネス・ルールの表示および編集」

- 8.4項「実行時のOracle Business Rulesの編集」

- 8.5項「ビジネス・ルール・タスクへのルールの割当て」

8.1 Oracle Business Rulesの概要

この項では、Oracle Business Rulesの概要について説明します。

ビジネス・ルールは、ビジネス・ポリシーを表す文または重要なビジネスの意思決定を表す文です。たとえば、ビジネス・ルールには次のものが含まれます。

- 購買ポリシーや承認マトリックスなどのビジネス・ポリシー。

- 有効な構成や規制上の要件などの絞込み条件。

- 割引や割増などの計算。

- 顧客価値に基づいた提案などの推論機能。

たとえば、レンタカー会社では次のようなビジネス・ルールを使用する場合があります。

IF
Rental_application.driver age < 21
THEN
modify Rental_application(status: "Declined")

航空会社では次のようなビジネス・ルールを使用することがあります。

IF
Frequent_Flyer.total_miles > 10000
THEN
modify Frequent_Flyer (status : "GOLD")

金融機関では次のようなビジネス・ルールを使用することがあります。

IF
Application_loan.income < 10000
THEN
modify Application_loan (deny: true)

これらの例は、個別のビジネス・ルールを表します。実際には、Oracle Business Rulesを使用すると、複数のビジネス・ルールを組み合せたり、より複雑なテストを使用できます。

Oracle Business Rulesを使用すると、プロセス・アナリストはルールとして表されているビジネス・ポリシーを変更でき、プロセス開発者の手助けはほとんどまたはまったく不要です。Oracle Business Rulesを使用するアプリケーションは継続的な変化をサポートします。これにより、これらのアプリケーションは、行政の新しい規制、社内プロセスの改善、または顧客とサプライヤの関係の変化に対して適応できます。

ビジネス・ルールはif-then構造に従い、次の2つの部分で構成されます。

- IF部分: 条件またはパターン一致。

- THEN部分: アクションのリスト。

または、デシジョン表と呼ばれるスプレッドシート状の形式でルールを表すこともできます。

8.1.1 ルール条件の概要

ルールのIF部分は、ファクトを参照する条件式、つまりルール条件で構成されます。例:

IF Rental_application.driver age < 21

条件式では、「次より小さい」比較を使用してビジネス条件(Rental_application.driver age)を数字の21と比較します。

ルール条件は、ファクトの組合せで条件式がtrueになるたびにルールをアクティブにします。ルール条件はRules Engine内の使用可能なファクト全体に対する問合せのようなものであり、問合せから戻される行のそれぞれに対してルールがアクティブになります。

8.1.2 ルール・アクションの概要

ルールのTHEN部分には、ルールが起動された場合に実行されるアクションが含まれます。ルールは、アクティブ化され、優先度などの競合解消メカニズムを使用してその他のルール・アクティブ化の中で選択されると、起動されます。ルールはいくつかの種類のアクションを実行することがあります。ファクトを追加、変更または削除するアクションがあります。Javaメソッドを実行したり、ファクトのステータスの変更やファクトの生成を行う場合がある関数を実行するアクションもあります。

ルールは同時にではなく順番に起動されます。ルール・アクションにより一連のルールのアクティブ化が変更されることがよくあり、このため次に起動されるルールが変更されることがあります。

8.1.3 デシジョン表の概要

デシジョン表は、数多くのルールで数多くのプロパティ値の組合せを分析する必要がある場合に、よりコンパクトかつ直観的に使用できる代替のビジネス・ルール形式です。デシジョン表を使用すると、すべての組合せを網羅する、または競合する2つの組合せが存在しないルールのセットを作成できます。

8.1.4 ファクトおよびバケットセットの概要

Oracle Business Rulesでは、ファクトはルールの基礎となるオブジェクトです。各ファクトは1つのファクト・タイプのインスタンスです。ルールを作成する前に、1つ以上のファクト・タイプをインポートまたは作成する必要があります。

Oracle Business Rulesでは、ファクトはクラスのアサートされたインスタンスです。Oracle Business Rulesランタイム、またはRL言語で作成する開発者は、RL言語アサート関数を使用して、ファクトのインスタンスをOracle Business Rulesエンジンに追加します。

ルール・デザイナでは、XMLスキーマ、Javaクラス、Oracle RL定義およびADF Business Componentsビュー・オブジェクトに基づいて様々なファクト・タイプを定義できます。Oracle Business Rulesランタイムでは、このようなファクト・タイプ・インスタンスはファクトと呼ばれます。

バケットセットを作成して、指定したタイプの値のリストまたは値の範囲を定義できます。バケットセットを作成した後、バケットセットを一致するタイプのファクト・プロパティに関連付けることができます。Oracle Business Rulesでは定義したバケットセットを使用して、ルールまたはデシジョン表のファクト・プロパティに関連付けられた値に対する制限を指定します。バケットセットを使用して、可変初期値および関数の戻り値または関数の引数値に対する制限を指定することもできます。

8.1.5 ルールセットの概要

ルールセットは、Oracle Business Rulesにおけるルールおよびデシジョン表のコンテナです。1つのルールセットには、ルールおよびデシジョン表用の、Javaパッケージに類似したネームスペースがあります。また、ルールセットを使用して、ルール起動を部分的に順序付けることもできます。

8.1.6 デシジョン関数の概要

デシジョン関数によって、JavaまたはSOAから(SOAコンポジット・アプリケーションからまたはBPELプロセスから)ルールを呼び出す規約が提供されます。規約には、入力ファクト・タイプ、実行するルールセットおよび出力ファクト・タイプが含まれます。

8.1.7 デシジョン・ポイントの概要

Oracle Business Rules SDK (Rules SDK)によってAPIが提供されます。このAPIを使用して、Oracle Business Rulesディクショナリ内のルール(およびディクショナリのすべてのコンテンツ)にアクセス、作成、変更および実行するアプリケーションを作成できます。Rules SDKは、Javaアプリケーションからルールまたはデシジョン表にアクセスおよび実行するデシジョン・ポイントAPIを提供します。

8.1.8 ディクショナリの概要

ディクショナリは、ファクト、関数、グローバル、バケットセット、リンク、デシジョン関数およびルールセットのOracle Business Rulesコンテナです。ディクショナリは、アプリケーションのルールセットおよびデータ・モデルが格納されるXMLファイルです。ディクショナリは他のディクショナリにリンクできます。Oracle JDeveloperでは、.rulesファイルにOracle Business Rulesディクショナリが作成されます。ディクショナリは必要な数だけ作成できます。ディクショナリには任意の数のルールセットを含めることができます。

8.2 Business Process Composerルール・エディタの概要

Business Process Composerルール・エディタを使用すると、ルール・ディクショナリを表示および編集できます。ルール・ディクショナリは、プロセス・エディタおよびデータ・アソシエーション・エディタに類似のタブを使用したウィンドウに表示されます。

このウィンドウは、次の2つの主な領域にわかれています。

- グローバル、バケットセットおよびルールセットのタブを使用したペインを含むパネル。

- 各タブの詳細情報を表示するエディタ・パネル。

図8-1は、営業見積サンプル・プロジェクトに含まれるグローバルの情報を表示する「グローバル」タブを示しています。

注意:

このタブには、ルール・ディクショナリが作成されたときに最後としてマークされたグローバルのみが表示されます。

図8-1 Oracle Business Rulesエディタの「グローバル」タブ

「図8-1 Oracle Business Rulesエディタの「グローバル」タブ」の説明

図8-2は、営業見積サンプル・プロジェクトに含まれるバケットセットの詳細を表示する「バケットセット」タブを示しています。

図8-2 Oracle Business Rulesエディタの「バケットセット」タブ

「図8-2 Oracle Business Rulesエディタの「バケットセット」タブの説明

図8-3は、営業見積サンプルに含まれるルールセットの詳細を表示する「ルールセット」タブを示しています。

図8-2 Oracle Business Rulesエディタの「ルールセット」タブ

「図8-3 Oracle Business Rulesエディタの「ルールセット」タブ」の説明

8.3 Business Process Composerでのビジネス・ルールの表示および編集

次の各項では、Business Process Composerを使用してOracle Business Rulesを表示および編集する特定の手順について説明します。

8.3.1 ビジネス・ルールを開く方法

Oracle Business Rulesは再利用可能なビジネス・カタログの一部として含めることができ、これにより、プロジェクト・テンプレートから作成されたOracle BPMプロジェクトを編集するときにビジネス・ルールを使用できます。

プロジェクト・ナビゲータからビジネス・ルールを開くには:

1. プロジェクトのホームページから「ルール」を開き、開くルールの名前をクリックします。

ルール・エディタにビジネス・ルールが表示されます。ルールを編集する場合は、プロジェクトが編集モードになっていることを確認します。

8.3.2 バケットセットを追加する方法

Business Process Composerを使用して、ルール・ディクショナリに新規バケットセットを追加できます。

新規バケットセットを追加するには:

1. バケットセットを編集するルール・ディクショナリを開きます。

2. 「バケットセット」タブを選択します。これにより、図8-2に示すように、ディクショナリ内のバケットセットを一覧表示した表が表示されます。

3. 「バケットセットの追加」ドロップダウン・リストをクリックし、作成するバケットセットのタイプを選択します。

- 値リスト

- 範囲リスト

4. リストからバケットセットを選択し、「バケットセットの編集」をクリックします。

5. 必要に応じてバケットセットを編集し、「OK」をクリックします。

8.3.3 既存のバケットセットを編集する方法

Business Process Composerで「バケットセット」タブを選択すると、ディクショナリ内のバケットセットを一覧表示した表が表示されます。バケットセットを編集するには、適切な行を選択して「編集」アイコンをクリックします。バケットセットのタイプ、範囲、列挙またはLOVに応じて、対応するバケットセットの編集ページが表示されます。

メニュー・バーで「追加」をクリックし、タイプを選択して、範囲バケットセットを作成できます。これにより、バケットセット表に新規行が追加されます。バケットを追加すると、範囲バケットのエンド・ポイントおよびLOVバケットの値がデータ型に基づいて自動的に追加されます。新たに追加されたバケットのエンド・ポイントや値は変更できます。エンド・ポイントまたは値を変更した場合、エイリアスが変更されることに注意してください。

バケットセットを削除するには、行を選択して「削除」をクリックします。

バケットセットを編集するには:

1. バケットセットを編集するルール・ディクショナリを開きます。

2. 「バケットセット」タブを選択します。これにより、図8-2に示すように、ディクショナリ内のバケットセットを一覧表示した表が表示されます。

3. 適切なバケットセットの行を設定し、「バケットセットの編集」アイコンをクリックします。

4. バケットセット・エディタを使用して、バケットセットの適切なフィールドを編集します。

5. 「OK」をクリックして変更を確認します。

8.3.4 ルール・ディクショナリでグローバルを表示する方法

ルール・ディクショナリを開くと、Business Process Composerによって「グローバル」タブが表示されます。「グローバル」タブには、最後のグローバル変数(「最後」オプションが選択されたグローバル変数)のみが表示されます。

グローバル変数を作成したり削除することはできません。「グローバル」タブから、編集モードで「名前」、「説明」および「値」の各フィールドを変更できます。「値」フィールドでは、式ビルダーを使用して値を設定できます。

グローバルを表示するには:

1. グローバルを表示するルール・ディクショナリを開きます。

2. 「グローバル」タブを選択します。これにより、図8-1に示すように、このルール・ディクショナリに定義されたグローバルを一覧表示した表が表示されます。

8.3.5 ルールセットにルールを追加する方法

Business Process Composerを使用して、ルールセットのルールを編集、追加および削除できます。

ルールセットにルールを追加するには:

1. ルールを追加するルールセットを含むルール・ディクショナリを開きます。

2. 編集するルールセットのタブをクリックします。これにより、図8-3に示すように、このディクショナリに定義されたルールセットを一覧表示した表が表示されます。

3. 「新規ルール」アイコンをクリックします。

4. 新規ルールの名前を入力します。

5. 「詳細設定の表示」アイコンをクリックします。

6. IF領域で、「左の値」式アイコン、演算子のドロップダウン・リスト、「右の値」式アイコンを含む、コントロール、アイコンおよび選択ボックスを使用して条件を変更します。

7. ルールのTHEN領域でルール・アクションの横にある「アクションの追加」をクリックします。

8. 「エディタ」ツールバーの「保存」をクリックして、ルール・ディクショナリに対する変更を保存します。

8.4 実行時のOracle Business Rulesの編集

Business Process Composerを使用して、デプロイ済のOracle BPMプロジェクトを開くことができます。デプロイ済のプロジェクトを開くと、プロジェクトに含まれているOracle Business Rulesを編集し、Oracle BPMランタイムに変更を再度デプロイできます。

注意:

デプロイ済のプロジェクトを編集する場合、そのプロジェクトのOracle Business Rulesのみを編集できます。他のプロジェクト・リソースは表示できますが、編集できません。

デプロイ済のプロジェクトを開くには:

1. 「プロジェクト」メニューの「デプロイ済プロジェクトを開く」を選択します。
現在プロジェクトを編集している場合は、変更内容が自動的に保存されます。

2. 「デプロイ済プロジェクト」を選択し、次に、プロジェクト・リストから開くプロジェクトを選択します。

3. 「リポジトリ」を開き、次に、開くデプロイ済プロジェクトを選択します。

4. 「OK」をクリックします。

5. プロジェクト・ナビゲータで、「ビジネス・ルール」を開き、次に、編集するOracle Business Rulesを含むルール・ディクショナリを開きます。

6. ルール・エディタで「編集」をクリックします。

7. 必要に応じてルールを編集し、「保存」をクリックします。

8. ビジネス・プロセスに対して行った変更が有効であることを確認するには、「検証」をクリックします。

9. 「コミット」をクリックして、変更をOracle BPMランタイムにコミットします。

10. 「はい」をクリックします。

11. 「プロジェクト」メニューの「プロジェクトを閉じる」を選択します。

8.5 ビジネス・ルール・タスクへのルールの割当て

ビジネス・ルール・タスクは、プロセス・モデル内にOracle Business Rulesを取り込むことができるOracle BPMN要素です。

ビジネス・カタログにビジネス・ルールを含むプロジェクト・テンプレートに基づいてプロジェクトを編集する場合、ビジネス・ルール・タスクにビジネス・ルールを割り当てることができます。

ビジネス・ルール・タスクにビジネス・ルールを割り当てるには:

1. 編集するビジネス・ルール・タスクを含むプロセスを開きます。

2. ビジネス・ルール・タスクを右クリックし、「プロパティ」を選択します。

3. 「実装」タブを選択します。

4. 「変更」をクリックします。使用可能なビジネス・ルールの表を含むビジネス・ルール・ブラウザが表示されます。

5. 表でルールをダブルクリックします。

6. 「OK」をクリックします。

第III部

Business Process Composerの拡張機能

この部では、BPMプロジェクトの実装の詳細を変更する必要があるプロセス開発者向けに、Business Process Composerの拡張機能について説明します。

この部には、次の章が含まれます。

- 第9章「Business Process Composerの拡張機能」

- 第10章「データ・オブジェクトおよび式の使用」

- 第11章「ヒューマン・タスクの使用」

- 第12章「管理タスクの実行」

9 Business Process Composerの拡張機能

この章では、BPMNプロセスの技術的な実装に関連する、Business Process Composerの機能について説明します。通常、この章で説明する機能はプロセス開発者が実行します。

この章の内容は次のとおりです。

- 9.1項「サービスの使用」

- 9.2項「会話の定義」

9.1 サービスの使用

次の各項では、Business Process Composerを使用してサービスを作成する方法について説明します。

9.1.1 ビジネス・カタログで新しいサービスを作成する方法

Business Process Composerでは、ビジネス・カタログに新しいサービスを作成できます。これらのサービスは、標準的なWebサービスに基づきます。

Webサービスに基づくサービスは、Webサービス記述言語(WSDL)ファイルを使用して定義されます。WSDLファイルは、Webサービスの実装方法を記述するために使用するXMLファイルです。Business Process Composerを使用して新規サービスを作成する場合は、コンピュータにローカルに格納されているWSDLファイル、または使用可能なWSDLファイルを指定できます。

WSDLファイルまたはURLの場所の提供は、プロセス開発者が担当します。

新しいサービスを作成する手順は、次のとおりです。

1. 新しいサービスを作成するプロジェクトを開きます。

2. メイン・メニューから「新規」を選択し、次に「新規サービス」を選択します。

3. 次の情報を入力します。

- 名前: ビジネス・カタログに表示するとおりに、サービスの名前を定義します。

- タイプ: 作成するサービスのタイプを定義します。

- WSDL: 新しいサービスの作成に使用するWSDLのソースとして、次のいずれかを指定できます:

- URL: WSDLのリモートURLを指定します。

- ファイル: ローカル・ファイル・システムにあるWSDLファイルまたはZIPファイルのいずれかを指定します。
ZIPファイルを使用する場合、そこに含めることができるのはWSDLおよびXSDファイルのみです。WSDLファイルには、有効な参照が必要です。

- ポート・タイプ: ポート・タイプには、使用するサービスを指定します。WSDLファイルは1つ以上のポート・タイプを公開します。

- コールバック・タイプ: このWebサービスで使用するコールバック・タイプを指定します。これは、非同期サービスにのみ適用可能です。

- トランザクション参加:

- バージョン:

4. 「OK」をクリックします。

9.2 会話の定義

次の各項では、Business Process Composerを使用して会話を編集する方法について説明します。詳細は、Oracle BPMモデリングおよび実装ガイドを参照してください。

9.2.1 会話の概要

複数のプロセス間のメッセージ交換は、会話によってグループ化されます。プロセス間のメッセージ交換をコラボレーションと呼びます。1つのプロジェクト内に複数の会話を定義すると、そのプロジェクト内のプロセス間で再利用できます。

コラボレーション・ダイアグラムを使用してプロセス・フローを表示すると、会話での他の参加者とプロセスとの相互作用も表示できます。

デフォルトでは、BPMプロジェクトに1つの会話が定義されています。複数の会話を定義しない場合は、このデフォルトの会話を使用して、プロジェクト内のプロセス間のメッセージ交換をすべて収集する必要があります。

プロジェクトごとに定義できるデフォルトの会話は1つのみです。ただし、デフォルトで使用する会話ではなく、別の会話をデフォルトとして使用するようにプロジェクトを変更できます。

様々なタイプの会話を使用すると、プロセスが他のプロセスやサービスとの間で確立できる各種の相互作用を指定できます。次に、各タイプの会話について説明します:

- インタフェースの定義: BPMNプロセスと相互作用するために他のサービスやプロセスで起動できる操作を定義する場合は、このタイプを使用します。

- インタフェースの使用: ビジネス・カタログのコンポーネントからインタフェースを使用するようにプロセスを構成する場合は、このタイプを使用します。

- プロセス・コール: 別のBPMNプロセスを起動する場合は、このタイプを使用します。

- サービス・コール: BPMプロジェクトに定義されているサービスを起動する場合は、このタイプを使用します。

9.2.2 会話の使用

次の各項では、Business Process Composerを使用して会話を定義および構成する方法について説明します。

9.2.2.1 会話の定義方法

1. プロセスを開きます。

2. プロセス・エディタ・ツールバーで「会話の編集」ボタンをクリックします。

3. 「会話の追加」ボタンをクリックします。

4. 会話の名前を入力します。

5. 定義する会話のタイプを選択します。

6. 「OK」をクリックします。

9.2.2.2 デフォルトの会話の設定方法

1. プロセスを開きます。

2. プロセス・エディタ・ツールバーで「会話の編集」ボタンをクリックします。

3. リストから会話を選択し、「編集」ボタンをクリックします。

4. 「デフォルトの会話」チェック・ボックスを選択します。

5. 「OK」をクリックします。

9.2.2.3 BPMNフロー・オブジェクトに対する会話の定義方法

1. プロセスを開きます。

2. 次のいずれかのタイプのBPMNフロー・オブジェクトを右クリックします:

- メッセージ・イベント(スローおよびキャッチ)

- 送信タスクおよび受信タスク

- サービス・タスク

これらのBPMフロー・オブジェクトに対してのみ会話を定義できます。

3. 「実装」を選択します。

4. 「実装」タブで、「会話」テキスト・フィールドの隣にある「参照」ボタンをクリックします。

5. リストから会話を選択し、「OK」をクリックします。

9.2.2.4 コラボレーション・ダイアグラムの表示方法

プロセスのコラボレーション・ダイアグラムを表示するには、プロセス・エディタ・ツールバーで「コラボレーションの表示」ボタンをクリックします。

注意:

コラボレーション・ビューではプロセスを変更できません。通常のプロセス編集に戻るには、「コラボレーションの表示」ボタンを再度クリックします。

10 データ・オブジェクトおよび式の使用

この章では、Oracle Business Process Composer内でデータ・オブジェクトおよび式を使用する方法について説明します。データ・オブジェクトおよび式を使用すると、プロセス内で使用するデータを定義し、データの処理方法を決定できます。

この章の内容は次のとおりです。

- 10.1項「データ・オブジェクトの概要」

- 10.2項「データ・オブジェクトおよびデータ・アソシエーションの使用」

- 10.3項「ビジネス・インジケータおよびカウンタ・マークの使用」

- 10.4項「式の概要」

- 10.5項「プロセスの入力および出力の定義」

- 10.6項「式エディタの概要」

- 10.7項「式の使用」

10.1 データ・オブジェクトの概要

データ・オブジェクトは、ビジネス・プロセスで使用される情報のタイプを定義するために使用される変数です。また、この情報の値を格納するためにも使用されます。

Oracle BPMは、次の2つのタイプのデータ・オブジェクトをサポートします。

- 基本データ・オブジェクト
基本データ・オブジェクトは、プロセスおよびプロジェクトの中で使用できる基本的なタイプの変数です。基本データ・オブジェクトは、プロセス内で明示的に使用したり、複合データ・オブジェクトとして結合できます。

表10-1に、Oracle BPMでサポートされる基本データ・オブジェクトのタイプをリストします。

表10-1 シンプル・データ・オブジェクト

タイプ

説明

ブール

論理値trueまたはfalseを表します。

整数

整数を表します。例: 23、-10、0

整数(64)

Long整数値を表します。

小数

10進表記で表される数値を表します。例: 3.14、62、0.023。

実数

浮動小数点の数値を表します。例: 2e-1、2.3E8。

文字列

文字列を表します。例: "This is a string."

時間

年-月-日 時:分:秒として表される特定の時間を表します。例: 1995-02-03 13:30:28-08:00

間隔

年数、月数、日数、時間数、分数、秒数として表される期間を表します。例: 1d3h30m。

バイナリ

イメージや動画を含む、バイナリ・データの格納に使用されます。

- 複合データ・オブジェクト
複合データ・オブジェクトを使用すると、データのタイプをグループ化できます。複合データ型はビジネス・オブジェクトを使用して定義されます。

ビジネス・オブジェクトでは、基本データ・オブジェクトに基づいてデータ構造を作成できます。たとえば、従業員名、従業員ID、従業員給与という各データ型を含む、従業員という複合データ・オブジェクトを作成できます。

図10-1は、基本データ・オブジェクトと複合データ・オブジェクトとビジネス・オブジェクトの関係を示しています。

図10-1 基本データ・オブジェクトと複合データ・オブジェクトの関係

「図10-1 基本データ・オブジェクトと複合データ・オブジェクトの関係」の説明

Business Process Composerでは、ビジネス・オブジェクトを作成または編集できます。また、ビジネス・カタログに定義されたビジネス・オブジェクトに基づいて、新規の複合データ・オブジェクトを作成できます。ただし、新規のデータ・タイプは作成できません。

10.1.1 プロセスおよびプロジェクト・データ・オブジェクトの概要

プロセス・データ・オブジェクトは、特定のプロセス用に定義されたデータ・オブジェクトです。同様に、プロジェクト・データ・オブジェクトはプロジェクト全体用に定義されています。

プロセス・データ・オブジェクトは、基本データ・オブジェクトと複合データ・オブジェクトの両方から作成できます。プロジェクト・データ・オブジェクトは、基本データ型からのみ作成できます。これにより、変数のスコープが決定されます。

このため、プロセス・データ・オブジェクトは、それが作成されたプロセス内でのみ使用でき、プロジェクト・データ・オブジェクトはプロジェクト全体に適用できます。これが変数のスコープと呼ばれるものです。

図10-2は、プロジェクト変数とプロセス変数のスコープの違いを示しています。

図10-2 プロセスおよびプロジェクト・データ・オブジェクトのスコープ

「図10-2 プロセスおよびプロジェクト・データ・オブジェクトのスコープ」の説明

プロセス・データ・オブジェクトを使用すると、単一のプロセス内でのみ使用されるデータ・オブジェクトを定義できます。プロセスベースのアプリケーションを設計する場合、データ・オブジェクトがプロセス内でのみ使用されることが判明しているときは、システム・リソースを節約するためアプリケーションをプロセス・データ・オブジェクトとして定義することをお薦めします。

プロジェクト・データ・オブジェクトでは、プロセス間でデータを共有できます。たとえば、注文書プロセスおよびリクエスト承認プロセスの両方で、リクエストの優先度やリクエストを作成した従業員の値を追跡できます。

プロジェクト・データ・オブジェクトにより、プロジェクト内のすべてのプロセスが同じデータを使用するようになります。各プロセスでは、このデータの値を割り当てて、更新する必要があります。

プロジェクト・データ・オブジェクトを定義することの主な利点は、プロジェクトの公開後にこの変数の値が表示されるようにOracle BPM WorkSpaceビューを構成できることです。これは、プロジェクト・データ・オブジェクトを使用する場合にのみ可能です。

注意:

プロジェクト・データ・オブジェクトではプロジェクト内のすべてのプロセスで使用されるデータ・オブジェクトを定義できますが、このデータ・オブジェクトはグローバルなデータ・オブジェクトではありません。プロジェクト内の各プロセスは、独自のバージョンのデータ・オブジェクトを使用します。プロセス間でデータを共有するためにプロジェクト・データ・オブジェクトが使用されることはありません。

10.1.2 新規BPMプロジェクトでのデータ・オブジェクトの使用

Business Process Composerで作成した新規プロジェクトを使用するときは、データ・アソシエーションをサポートするフロー・オブジェクト用にのみプロジェクトおよびプロセス・データ・オブジェクトを作成できます。プロセス・アナリストは、Business Process Composerで作成した新規プロジェクトを使用して、プロセス間で使用するデータ・オブジェクトのタイプを定義できます。これらのデータ・オブジェクトを、プロセス開発者が、Oracle BPM Studioで作成される実装の一部として組み込むことができます。

10.1.3 プロジェクト・テンプレートに基づくプロジェクトでのデータ・オブジェクトの使用

プロジェクト・テンプレートを使用すると、ビジネス・カタログから再利用可能なコンポーネントを作成できます。ビジネス・ルールやヒューマン・タスクなどのサービスに加えて、ビジネス・オブジェクトも作成できます。

プロジェクト・テンプレートに基づいてOracle BPMプロジェクトを作成する場合、データ・アソシエーション内でビジネス・カタログに定義されたデータ・オブジェクトを使用できます。また、Business Process Composerを使用して、新規のプロジェクト・データ・オブジェクトを作成することもできます。

プロジェクト変数は、基本データ型から作成されたシンプル・データ・オブジェクトのみに基づくことができます。

注意:

Business Process Composerでは、新しいタイプの複合データ・オブジェクトは作成できません。

10.1.4 データ・アソシエーションの概要

データ・アソシエーションは、データ・オブジェクトに格納された情報を次のものとの間で受渡しするために使用します。

- BPMNプロセスから起動された別のプロセスまたはサービス

- ヒューマン・タスク・サービス

- Oracle Business Rule

- スクリプト・タスク。このBPMNフロー・オブジェクトは、データ・アソシエーションを介してデータ・オブジェクトを受渡しするために使用します。

図10-2は、データ・アソシエーションを定義できるフロー・オブジェクトをリストしています。また、実装されるオブジェクトもリストしています。

表10-2 データ・アソシエーションを受け入れるフロー・オブジェクト

フロー・オブジェクト

実装

メッセージ開始および終了イベント

サービスおよびその他のBPMNプロセス

メッセージ・スロー・イベントおよびキャッチ・イベント

サービスおよびその他のBPMNプロセス

送信タスクおよび受信タスク

サービスおよびその他のBPMNプロセス

スクリプト・タスク

実装は含みません。データ・アソシエーションを介してデータ・オブジェクトを受渡しするために使用します。

ユーザー・タスク

Oracle Human Tasks

ビジネス・ルール・タスク

Oracle Business Rules

サービス・タスク

サービスおよびBPMNプロセス

データ・アソシエーションは、フロー・オブジェクトからの入力、および外部のサービスまたはプロセスへの出力を定義するために使用します。図10-3に、フロー・オブジェクトと、それに対応する実装、および外部のプロセスまたはサービスの間にある関係を示します。

青い矢印は、外部のプロセスまたはサービスとの間で入力と出力を行う引数を表します。これらの引数はデータ・アソシエーションを使用して定義されます。

図10-3 フロー・オブジェクトと実装と外部のサービスまたはプロセスの関係

「図10-3 フロー・オブジェクトと実装と外部のサービスまたはプロセスの関係」の説明

入力と出力はフロー・オブジェクトのデータ・アソシエーションで定義されますが、実装されたシステムおよびサービスに渡される値が入力と出力で定義されることに注意してください。これらのシステムおよびサービスは、図10-5に示すように、プロセスにとっては外部のシステムおよびサービスです。

図10-4 プロセス間のデータ・アソシエーション

「図10-4 プロセス間のデータ・アソシエーション」の説明

式を使用して、入力値および出力値を評価および変更できます

10.1.5 データ・アソシエーション・エディタの概要

データ・アソシエーション・エディタを使用すると、フロー・オブジェクトとその実装の間で受渡しされる入力値と出力値を構成できます。

図10-5 データ・アソシエーション・エディタ

「図10-5 データ・アソシエーション・エディタ」の説明

表10-3では、データ・アソシエーション・エディタの各領域について説明します。

表10-3 データ・アソシエーション・エディタのユーザー・インタフェース

UI領域

説明

入力

フロー・オブジェクト内に実装されるサービスまたはプロセスへの入力として割り当てられたデータ・オブジェクトを表示するテキスト・ボックスが表示されます。各テキスト・ボックスの横には、式エディタを起動するアイコンがあります

フロー・オブジェクト・インタフェース

実装されるサービスまたはプロセスに必要な入力引数がリストされます。また、入力および出力として提供されたデータ・オブジェクトの展開可能なリストも表示されます。フロー・オブジェクトの領域では、複合データ・オブジェクト内の特定の基本データ・オブジェクトにマップする複合データ・オブジェクトを展開できます。

出力

フロー・オブジェクト内に実装されるサービスまたはプロセスからの出力として割り当てられたデータ・オブジェクトを表示するテキスト・ボックスが表示されます。

データ・オブジェクト

すべてのデータ・オブジェクトのリストが表示されます。このリストは、プロセス・データ・オブジェクトとプロジェクト・データ・オブジェクトの間が分割されます。

10.2 データ・オブジェクトおよびデータ・アソシエーションの使用

次の各項では、データ・アソシエーションの作成、削除および構成の方法について説明します。

10.2.1 データ・オブジェクトの作成方法

Business Process Composerを使用して、プロセスおよびプロジェクト・データ・オブジェクトを作成できます。

データ・オブジェクトを作成するには:

1. プロジェクトの編集中であることを確認します。

2. プロセスを開きます。

3. フロー・オブジェクトを右クリックし、「データ・アソシエーション」を選択します。
データ・アソシエーションの構成を可能にするフロー・オブジェクトのリストについては、表10-2を参照してください。

4. 展開可能リストからプロセスまたはプロジェクトを選択します。

5. 「新規データ・オブジェクトの追加」をクリックします。

6. データ・オブジェクト名を入力し、ドロップダウン・メニューからタイプを選択します。

7. 「作成」をクリックします。

10.2.2 データ・オブジェクトの削除方法

プロセスまたはプロジェクトからデータ・オブジェクトを削除できます。

データ・オブジェクトを削除するには:

1. データ・オブジェクトを削除するプロセスを開きます。プロジェクト・データ・オブジェクトを削除する場合は、プロジェクト内の任意のプロセスを開くことができます。

2. データ・アソシエーションをサポートするフロー・オブジェクトを右クリックし、「データ・アソシエーション」を選択します。
データ・アソシエーションを有効化するシーケンス・フローのリストについては、表10-2を参照してください。

3. 「データ・オブジェクト」列で、削除するデータ・オブジェクトを含むプロセスまたはプロジェクトを展開し、そのデータ・オブジェクトを選択します。

4. 「削除」アイコンをクリックします。

注意:

シンプル・データ・オブジェクトおよび複合データ・オブジェクトを削除できます。ただし、複合データ・オブジェクト内で使用するシンプル・データ・オブジェクトは削除できません。

10.2.2.1 データ・オブジェクトの削除に関する注意事項

データ・オブジェクトの削除後、そのオブジェクトへのすべての参照を必ず削除してください。参照には、そのデータ・オブジェクトを使用しているすべてのデータ・アソシエーションおよび式が含まれます。削除されたデータ・オブジェクトへの参照を削除しない場合は、プロジェクトが検証されません。

10.2.3 フロー・オブジェクトのデータ・アソシエーションの構成方法

フロー・オブジェクトのデータ・アソシエーションを構成できます。

フロー・オブジェクトのデータ・アソシエーションを構成するには:

1. データ・アソシエーションを構成するプロセスを開きます。

2. データ・アソシエーションを有効化するフロー・オブジェクトを右クリックし、「データ・アソシエーション」を選択します。
データ・アソシエーションを有効化するシーケンス・フローのリストについては、表10-2を参照してください。

3. 右側のデータ・オブジェクト列から、入力引数としてマップするデータ・オブジェクトを選択します。

4. データ・オブジェクトをクリックし、入力テキスト・フィールドにドラッグします。

10.3 ビジネス・インジケータおよびカウンタ・マークの使用

この項では、Business Process Composerを使用してビジネス・インジケータおよびカウンタ・マークを作成する方法について説明します。

10.3.1 ビジネス・インジケータおよびカウンタの概要

ビジネス・インジケータは、プロセスの主要パフォーマンス・インジケータの値を格納するのに使用するプロジェクト・データ・オブジェクトです。Oracle BPMでは異なるタイプのデータ・オブジェクトを使用してビジネス・インジケータを作成できますが、Business Process Composer内では、カウンタ・マークとして使用するビジネス・インジケータのみ作成できます。

カウンタは、インスタンスが特定のアクティビティを完了した回数を追跡します。カウンタはカウンタ・マークとともに使用する必要があります。カウンタ変数の値は常に1で、実際の値は格納されません。インスタンスがアクティビティを完了した回数を示す値は、プロセス分析データベースで直接更新されます。カウンタ・ビジネス・インジケータの値を監視するには、そのカウンタ・ビジネス・インジケータを追跡するように構成されたカウンタ・マークに基づいて、ダッシュボードを作成する必要があります。

10.3.2 カウンタ・マークの概要

カウンタ・マークを使用して、プロセスに対して定義したカウンタ・ビジネス・インジケータの値を更新できます。1つのカウンタ・マークで複数のカウンタ・マーク・ビジネス・インジケータを更新できます。カウンタ・マークが定義されているアクティビティにトークンが到達すると、BPMサービス・エンジンによって、プロセス分析データベース内の関連するカウンタの値が更新されます。BPMサービス・エンジンがカウンタ・ビジネス・インジケータを更新するたびに、1単位が現在の値に追加されます。

注意:

カウンタ変数の実際の値はプロセス分析データベースに格納されます。カウンタ変数のデフォルト値は変更されないため、プロセスでカウンタ変数を使用して計算を実行しないでください。カウンタ変数の値は常に1です。

カウンタ・マークは次の目的で使用できます。

- 監査: インスタンスが完了したアクティビティの数とその他のパフォーマンス測定を組み合せた情報は、プロセスを監査するために重要です。

- パフォーマンスの問題の識別: カウンタを使用して、プロセス内のパフォーマンスの問題を識別できます。インスタンスが予期したパスと異なるパスを経由しているか、アクティビティ内のループの実行時間が適正な時間を超えているため、プロセスの実行時間が予期した時間より長くなる場合があります。このような状況は、実際に完了したアクティビティの数と予期した数を比較して識別できます。

- インスタンスが経由するプロセス・パスの識別: 異なるカウンタ・ビジネス・インジケータを使用して、対応するパスをマークできます。インスタンスがプロセスの最後に到達したとき、インスタンスが経由したパスは、完了したアクティビティの最大数を示します。

通常は、監視対象のプロセス・パスごとに1つのカウンタ・ビジネス・インジケータを定義します。次に、そのプロセス・パスに含まれるすべてのアクティビティにカウンタ・マークを追加します。最後に、アクティビティが含まれるパスに対応するカウンタ・ビジネス・インジケータを、カウンタ・マークに関連付けます。

10.3.3 新しいカウンタ・マークをプロセスに追加する方法

新しいカウンタ・マークをプロセス内のアクティビティやタスクに追加できます。

新しいカウンタ・マークをプロセスに追加する手順は、次のとおりです。

1. カウンタ・マークを追加するタスクまたはアクティビティを右クリックします。

2. 「実装」を選択します。

3. 必要に応じて、新しいビジネス・インジケータを作成します。

1. 「追加」ボタンをクリックします。

2. ビジネス・インジケータの名前を指定します。

3. 「OK」をクリックします。

4. ビジネス・インジケータのリストで、このフロー・オブジェクトで使用するインジケータの隣にあるチェック・ボックスを選択します。

5. 「変更の適用」をクリックします。

10.3.4 カウンタ・マークを削除する方法

プロセスに対して定義したカウンタ・マークは削除できます。

カウンタ・マークを削除するには:

1. カウンタ・マークを編集するアクティビティまたはタスクを右クリックします。

2. 「データ・アソシエーション」を選択します。

3. データ・オブジェクトのリストで、プロジェクト名を展開します。すべてのプロジェクト・データ・オブジェクトのリストが表示されます。

4. 削除するカウンタ・マークを選択します。

5. 「データ・オブジェクトの削除」をクリックします。

6. 「はい」をクリックします。

7. 「適用」をクリックします。

10.4 式の概要

式を使用すると、データ・オブジェクトで計算を実行できます。Business Process Composerを使用して、次のコンテキストにおいて式を定義および編集できます:

- 条件シーケンス・フロー

- 複合ゲートウェイ

- タイマー・イベント

- データ・アソシエーション

- 通知タスク

式では直接データ・オブジェクトに値を再割当てすることはできません。ただし、式を使用して、シーケンス・フローの実装との間で受渡しされる値を変更することはできます。詳細は、10.1.4項「データ・アソシエーションの概要」を参照してください。

10.4.1 式のタイプ

Oracle Business Process Composerでは、次のタイプの式がサポートされています:

- シンプル

- プレーン・テキスト

- XMLリテラル

10.4.2 単純式

単純式は、Oracle BPMでサポートされている標準式言語を使用して定義されます。

10.4.2.1 演算子タイプ

単純式では、次の演算子タイプがサポートされています:

- 算術演算子

- 単項演算子

- 等号演算子と関係演算子

- 条件演算子

これらの演算子を使用して式および条件を作成し、プロセス・フローを定義できます。一般に、これらの式は、プロセス内のデータ・オブジェクトに基づいて計算を実行します。式と条件はデータ・オブジェクトの値を使用して作成できますが、値は変更できません。

次の式の例では、演算子が使用されています。

- totalAmount - discount

- activationCount > 3

- unitsSold <= 1200

表10-4、表10-5、表10-6および表10-7では、シンプルな式ビルダーでサポートされている演算子を説明します。

表10-4 算術演算子

演算子

名前

説明

+

加算

数値データ型を加算します。

文字列同士を連結します。

-

減算

数値データ型を減算します。

*

乗算

数値データ型を乗算します。

/

除算

数値データ型を除算します。

rem

剰余

除数が被除数で除算しきれない場合の剰余を計算します。

( )

優先順位

演算式の評価の順序を指定します。

表10-5 単項演算子

演算子

名前

説明

+

プラス

数値オペランドの値には影響しません。ある値が正であることを明示的に示す場合に使用します。

-

マイナス

算術式の符号をマイナスにします

*

NOT

論理補数演算子。ブール式の値を否定します。

表10-6 等号演算子と関係演算子

演算子

名前

説明

=または==

等しい

最初のオペランドが2番目のオペランドと等しい場合にTrueを戻します。

!=

等しくない

最初のオペランドが2番目のオペランドと等しくない場合にTrueを戻します。

>

より大きい

最初のオペランドが2番目のオペランドより大きい場合にTrueを戻します。

>=

次以上

最初のオペランドが2番目のオペランド以上の場合にTrueを戻します。

<

より小さい

最初のオペランドが2番目のオペランドより小さい場合にtrueを戻します。

<=

次以下

最初のオペランドが2番目のオペランド以下の場合にTrueを戻します。

表10-7 条件演算子

演算子

名前

説明

and

条件付きAND

両方のオペランドがtrueと評価された場合にtrueを戻します。

or

条件付きOR

いずれかのオペランドがTrueと評価された場合にTrueを戻します。

10.4.2.2 演算子の優先順位

演算子の優先順位とは、コンパイラが演算子を評価する順序のことです。式内の演算子の優先順位は、カッコを使用して変更できます。

Oracle BPMにおける演算子の優先順位は、次のとおりです。

- 加算、減算

- 乗算、除算、剰余

- プラスおよびマイナス

- 次より小さい、次より大きい、次以下、次以上

- 等しい、等しくない

- NOT

- 条件付きAND

- 条件付きOR

10.5 プロセスの入力および出力の定義

操作をBPMNプロセスに追加すると、プロセス内で、他のプロセスまたはサービスがこの操作との通信に使用できる位置を定義することになります。プロセスと、他のプロセスまたはサービスとの間の通信には、通常、入力が必要で、出力が返されます。BPMNプロセス操作の定義に使用するフロー・イベントを使用して、入力および出力引数を定義できます。これらの入力および出力引数により、プロセスの入力および出力が定義されます。

10.5.1 プロセスへの入力引数の定義方法

メッセージ開始イベントで開始するプロセスを作成する場合は、そのプロセスに渡される入力引数を定義する必要があります。

プロセスへの入力引数を定義するには:

1. プロセスにメッセージ開始イベントを追加します。

2. メッセージ開始イベントを右クリックし、「プロパティ」を選択します。

3. 「実装」タブをクリックします。

4. 「インタフェースの定義」を選択します。

5. 「追加」アイコンをクリックします。

6. データ・オブジェクトの型を確認します。

7. 「OK」をクリックします。

10.5.2 メッセージ開始イベントへのデータの関連付けの定義方法

プロセスへの入力引数を定義した後、それらをプロセスのデータ・オブジェクトにマップする必要があります。

メッセージ開始イベントへのデータの関連付けを定義するには:

1. プロセスのメッセージ開始イベントを選択します。

2. 「データ・アソシエーション」をクリックします。

3. 右側にあるリストから「出力」の下にあるテキスト・ボックスにデータ・オブジェクトをドラッグします。

4. 「適用」をクリックします。

10.5.3 プロセスへの出力引数の定義方法

メッセージ終了イベントを含むプロセスを作成する場合は、各終了イベントへの出力引数を定義する必要があります。これらは、プロセスへの出力引数です。

プロセスへの出力引数を定義するには:

1. プロセスにメッセージ終了イベントを追加します。

2. メッセージ終了イベントを右クリックし、「プロパティ」を選択します。

3. 「実装」タブをクリックします。

4. 「インタフェースの定義」を選択します。

5. 「追加」アイコンをクリックします。

6. データ・オブジェクトの型を確認します。

7. 「OK」をクリックします。

10.5.4 メッセージ終了イベントへのデータの関連付けの定義方法

プロセスへの出力引数を定義した後、それらをプロセスのデータ・オブジェクトにマップする必要があります。

メッセージ終了イベントへのデータの関連付けを定義するには:

1. プロセスのメッセージ終了イベントを選択します。

2. 「データ・アソシエーション」をクリックします。

3. 右側にあるリストから「入力」の下にあるテキスト・ボックスにデータ・オブジェクトをドラッグします。

4. 「適用」をクリックします。

10.6 式エディタの概要

式エディタを使用すると、リストからデータ・オブジェクトおよび演算子を選択して式に挿入し、簡単に式を作成できます。必要に応じて、手動で式を入力することもできます。

図10-6は、式エディタのユーザー・インタフェースを示しています。

図10-6 Oracle Business Process Composerの式エディタ

「図10-6 Oracle Business Process Composerの式エディタ」の説明

表10-8 式エディタのユーザー・インタフェース

領域

説明

「式」フィールド

式のテキストを指定します。このフィールドでは、直接入力するか、「式に挿入」ツールを使用できます。

式に挿入

選択したデータ・オブジェクトまたは演算子を式に挿入します。

「データ・オブジェクト」および「演算子」の選択

式に挿入するデータ・オブジェクトまたは演算子を選択できるタブ付きペインが表示されます。

「説明」タブ

選択した演算子の説明を入力します。

エラー

現在の式に含まれるエラーを表示します。

10.7 式の使用

次の各項では、Business Process Composerを使用して式を定義する方法について説明します。

10.7.1 条件シーケンス・フローの単純式の定義方法

Business Process Composerを使用して、条件シーケンス・フローの式を作成および編集できます。条件シーケンスでは、式を使用してプロセスのフローを決定します。

条件シーケンス・フローの式を定義するには:

1. プロセスを開きます。

2. プロジェクトが編集モードであることを確認します。

3. 編集する条件シーケンスの「編集」アイコンをクリックします。

4. 「実装」をクリックします。

5. 「編集」をクリックします。
式エディタ・ウィンドウが表示されます。

6. 必要なデータ・オブジェクトおよび演算子を追加します。
データ・オブジェクトを式に追加するには:

1. 「データ・オブジェクト」タブを選択します。

2. リストからデータ・オブジェクトを選択します。
複合データ・オブジェクトの一部である基本データ・オブジェクトを追加する場合は、複合データ・オブジェクトを展開し、追加する基本データ・オブジェクトを選択します。

3. 「式に挿入」をクリックします。

演算子を式に追加するには:

1. 「演算子」タブを選択します。

2. 展開可能なリストから、追加する演算子を選択します。

3. 「式に挿入」をクリックします。

7. 「エラー」タブをクリックし、式にエラーがないことを確認します。

8. 「OK」をクリックします。

9. 「実装」タブで「変更の適用」をクリックします。

10.7.2 データ・アソシエーションの単純式の定義方法

Business Process Composerを使用して、データ・アソシエーションの式を作成および編集できます。データ・アソシエーションでは、式を使用して、データ・オブジェクトが入力および出力として受け渡す値を変更できます。

データ・アソシエーションの入力または出力に式を定義するには:

1. プロセスを開きます。

2. プロジェクトが編集モードであることを確認します。

3. プロセス内のフロー・オブジェクトを右クリックし、「データ・アソシエーション」を選択します。

4. 「式ビルダーの起動」をクリックします。

5. 必要なデータ・オブジェクトおよび演算子を追加します。
データ・オブジェクトを式に追加するには:

1. 「データ・オブジェクト」タブを選択します。

2. リストからデータ・オブジェクトを選択します。
複合データ・オブジェクトの一部である基本データ・オブジェクトを追加する場合は、複合データ・オブジェクトを展開し、追加する基本データ・オブジェクトを選択します。

3. 「式に挿入」をクリックします。

演算子を式に追加するには:

1. 「演算子」タブを選択します。

2. 展開可能なリストから、追加する演算子を選択します。

3. 「式に挿入」をクリックします。

6. 「エラー」タブをクリックし、式にエラーがないことを確認します。

7. 「OK」をクリックします。

11 ヒューマン・タスクの使用

この章では、Oracle Business Process Composerを使用してヒューマン・タスクを作成および編集する方法について説明します。

この章の内容は次のとおりです。

- 11.1項「ヒューマン・タスクの理解」

- 11.2項「ヒューマン・タスク・エディタの概要」

- 11.3項「ヒューマン・タスクの使用」

11.1 ヒューマン・タスクの理解

ヒューマン・ワークフローはOracle SOA SuiteおよびOracle BPM Suiteのコンポーネントであり、ユーザーがビジネス・アプリケーションと相互作用する方法を定義できます。ヒューマン・ワークフローは、この相互作用を管理するための実行時環境を提供します。

ヒューマン・ワークフローは、アプリケーションのユーザー相互作用を定義できるOracle Human Workflowの固有のコンポーネントです。Oracle Business Process Composerでは、ヒューマン・タスクを作成および編集できます。

注意:

Oracle Business Process Composerを使用してヒューマン・タスクのすべてのプロパティを作成または編集できるわけではありません。プロパティを作成および編集するには、Oracle JDeveloperを使用する必要があります。詳細は、Oracle BPMモデリングおよび実装ガイドを参照してください。

ヒューマン・タスクでは、次のことを指定できます。

- ルーティング

- 割当て

- 期限

- 通知

- プレゼンテーション

- タスク・データ

これらのコンポーネントについては、後続の各項で説明します。

11.1.1 ルーティングおよび参加者の概要

ヒューマン・タスクでは、ユーザー・アプリケーションでユーザーが様々なタスクを実行する順序を決定できます。この順序がヒューマン・タスクのルーティングです。参加者とは各タスクの実行を担当するユーザーまたはグループです。ヒューマン・タスク・エディタを使用して、ユーザー・タスクのルーティング・フローおよび参加者を指定できます。

11.1.1.1 参加者タイプ

ヒューマン・タスクでは、次の一般的なルーティング・シナリオのパターンがサポートされます。

- 単一の承認者
これは、1人の参加者を単一のユーザー、グループまたはロールにマップする単純なケースです。詳細は、11.1.2項「参加者割当ての概要」を参照してください。

たとえば、休暇申請がマネージャに割り当てられているとします。マネージャは、休暇が始まる3日前までに申請タスクを操作する必要があります。マネージャが申請を正式に承認または却下すると、その決定が従業員に通知されます。マネージャがタスクを操作しない場合、申請は却下として処理されます。正式な却下の場合と同様に通知アクションが実行されます。

- パラレル
この参加者タイプは、一連のユーザーがパラレルで作業する必要があることを示します。このパターンは通常、投票で使用されます。

たとえば、雇用に関して複数のユーザーが応募者の採否を票決する必要がある場合です。結果が有効になるために必要な得票率(多数決や満場一致など)を指定します。

- FYI
この参加者は、単一の承認者と同様に、単一のユーザー、グループまたはロールにマップします。ただし、このパターンでは、参加者は通知タスクを単に受信するのみで、ビジネス・プロセスでは参加者のレスポンスを待機しません。FYIの参加者は、タスクの結果に直接影響を与えることはできませんが、場合によっては、コメントを提供したり、添付ファイルを追加できます。

たとえば、採用候補者の採用について地域マネージャが承認し、その候補が承認または却下のために州全体の統括マネージャに渡されたことが、地域の営業所に通知される場合です。

- シリアル
この参加者タイプは、一連のユーザーが順番に作業する必要があることを示します。ルーティング・ポリシーには、複数の参加者を順番に使用した順番による作業を指定できますが、このパターンは一連のユーザーが動的である場合に有用です。このシリアル・タイプの一般的なシナリオは、管理チェーン・エスカレーションです。このエスカレーションは、このパターンの指定内にある管理チェーンに基づいてリストを指定することで実行されます。

11.1.1.2 ルーティングのタイプ

図11-1は、単一の参加者のみが含まれている基本的なルーティングを示しています。

図11-1 単一の参加者の基本的なルーティング

「図11-1 単一の参加者の基本的なルーティング」の説明

一方、ヒューマン・タスクでは、詳細に制御できる複雑なタイプのルーティングもサポートしています。これらのルーティング・タイプには、次のものがあります。

- 順次
順次ルーティングでは、様々な参加者が、タスクを順番に処理します。図11-2は、順次ルーティングの例を示しています。この例では、Participant_1はルーティング・フローの最初の参加者です。Participant_1がタスクの処理を終了した後、タスクはParticpant_2に渡されます。Participant_2がタスクの処理を終了した後、ヒューマン・タスクは完了となります。

図11-2 タスクの順次ルーティングの例

「図11-2 タスクの順次ルーティングの例」の説明

- パラレル
パラレル・ルーティングでは、複数の参加者がタスクを同時に処理します。図11-3は、パラレル・ルーティングの例を示しています。この例では、Participant_1とParticipant_2がタスクを同時に処理します。

パラレル・ルーティングでは、パラレル・ブロックの後、タスク・フローが次の参加者にどのように続くかを決定するルーティングの結果を定義できます。詳細は、11.1.1.3項「結果」を参照してください。

図11-3 タスクのパラレル・ルーティングの例

「図11-3 タスクのパラレル・ルーティングの例」の説明

11.1.1.3 結果

結果には、ヒューマン・タスクについて可能性がある結果引数を指定します。実行時に実行できるタスクとして選択した結果は、Oracle BPM Worklistに表示されます。

デフォルトの結果リストで選択されたデフォルトの結果よりも優先される投票時結果を指定できます。この結果は、必要なパーセンテージに達した場合に有効になります。結果は、表にリストされている順に評価されます。

結果の構成方法については、11.3.4項「パラレル・ルーティングの結果の構成方法」を参照してください。

11.1.2 参加者割当ての概要

参加者割当ては、アプリケーションを使用する組織内のユーザーにヒューマン・タスクをマップするプロセスです。各参加者を次のいずれかにマップして割り当てます。

- ユーザー
個々のユーザーをタスクの処理に割り当てることができます。たとえば、ユーザーjlondonまたはjsteinを特定のタスクに割り当てることができます。ユーザーは、SOAインフラストラクチャで構成されるアイデンティティ・ストアに定義されます。これらのユーザーは、Oracle WebLogic Server、Oracle Internet Directoryまたはサード・パーティのLDAPディレクトリの埋込みLDAPにできます。

ユーザーと同様に、グループはSOAインフラストラクチャのアイデンティティ・ストアに定義されます。

- グループ
グループをタスクの処理に割り当てることができます。グループには、タスクの申告と処理を実行できる個々のユーザーが登録されます。たとえば、ユーザーjcooperおよびfkafkaは、タスクの処理に割り当てるLoanAgentGroupというグループのメンバーにできます。

- アプリケーション・ロール
タスクの要求と操作に、アプリケーション・ロールのメンバーであるユーザーを割り当てることができます。

ユーザー、グループまたはロールをヒューマン・タスク参加者に割り当てる手順は、11.3.5項「参加者へのユーザー、グループまたはロールの割当て方法」を参照してください。

11.1.3 期間の概要

期間は、別のアクションが実行されるまでヒューマン・タスクがアイドル状態でいる期間を定義します。期間は、ヒューマン・タスク全体または各ヒューマン・タスク参加者に対して定義できます。

ヒューマン・タスク全体に対して期間を定義する方法は、11.3.7項「ヒューマン・タスクに対する期間の定義方法」を参照してください。

ヒューマン・タスク参加者に対して期間を定義する方法は、11.3.6項「参加者に対する期間の定義方法」を参照してください。

11.2 ヒューマン・タスク・エディタの概要

Oracle Business Process Composerには、ヒューマン・タスクを作成および編集できるヒューマン・タスク・エディタがあります。ヒューマン・タスク・エディタは、図11-4に示すようなタブ付きペインで構成されています。

図11-4 ヒューマン・タスク・エディタ

「図11-4 ヒューマン・タスク・エディタ」の説明

タブ付きペインには、ヒューマン・タスクの様々なプロパティを構成できる3つのタブがあります。

- 一般: ヒューマン・タスクの基本的なプロパティを編集できます。参加者およびルーティングを定義することもできます。

- データ: タスク・データを構成できます。

- 期間: ヒューマン・タスク全体に対して期間を構成できます。

11.3 ヒューマン・タスクの使用

次の各項では、ヒューマン・タスクの作成および編集方法について説明します。

11.3.1 新しいヒューマン・タスクの作成方法

Oracle Business Process Composerでは、新しいヒューマン・タスクを作成できます。作成されたヒューマン・タスクはビジネス・カタログに保存され、ビジネス・プロセスに組み込むことができます。

新しいヒューマン・タスクを作成する手順は、次のとおりです:

1. 新しいヒューマン・タスクを作成するプロジェクトを開きます。

2. プロジェクトが編集モードであることを確認します。

3. プロジェクトのようこそページから、「ヒューマン・タスク」を選択します。

4. 「新規ヒューマン・タスク」をクリックします。

5. 新規ヒューマン・タスクの名前を入力し、「作成」をクリックします。

ヒューマン・タスクのリストに新規ヒューマン・タスクが表示されます。

ヒューマン・タスクはビジネス・カタログで使用できます。ヒューマン・タスクは、ユーザー・タスクに割り当てることで、BPMNプロセス内に組み込むことができます。詳細は、6.3.2項「ユーザー・タスクの概要」を参照してください。

11.3.2 ヒューマン・タスクを開く方法

既存のヒューマン・タスクは、開いて表示または編集できます。

既存のヒューマン・タスクを開く手順は、次のとおりです。

1. 表示または編集するヒューマン・タスクがあるプロジェクトを開きます。

2. プロジェクトが編集モードであることを確認します。

3. プロジェクトのようこそページから、「ヒューマン・タスク」を選択します。

4. 開くヒューマン・タスクの名前をクリックします。

ヒューマン・タスクがヒューマン・タスク・エディタで開きます。詳細は、11.2項「ヒューマン・タスク・エディタの概要」を参照してください。

11.3.3 ヒューマン・タスクへの参加者の追加方法

ヒューマン・タスク・エディタを使用して、ヒューマン・タスクに参加者をさらに追加できます。

参加者をヒューマン・タスクに追加する手順は、次のとおりです。

1. ヒューマン・タスクを開きます。

2. 「一般」タブを選択します。

3. 「参加者」エディタで、既存の参加者を選択します。

4. 「追加」アイコンをクリックし、次のいずれかのルーティング・タイプを選択します。

- 順次

- パラレル

詳細は、11.1.1.2項「ルーティングのタイプ」を参照してください。

5. 次のいずれかの参加者タイプを選択します。

- 単一

- FYI

- シリアル

- パラレル

詳細は、11.1.1.1項「参加者のタイプ」を参照してください。

新しい参加者がヒューマン・タスク・ルーティングに追加されます。

11.3.4 パラレル・ルーティングの結果の構成方法

パラレル・ブロックのルーティング結果を構成できます。

パラレル・ルーティングの結果を構成する手順は、次のとおりです。

1. ヒューマン・タスクを開きます。

2. 「一般」タブを選択します。

3. 「参加者」エディタで、パラレル・ブロックのいずれかの交点をダブルクリックします。
図11-5に示すような投票結果エディタが表示されます。

図11-5 投票結果エディタ

「図11-5 投票結果エディタ」の説明

4. 「追加」アイコンをクリックし、次のいずれかの結果を選択します。

- 承認

- 却下

5. 表に、結果の値を入力します。

6. デフォルトの結果に対応する値をドロップダウン・リストから選択します。

7. 「OK」をクリックします。

11.3.5 参加者へのユーザー、グループまたはロールの割当て方法

ヒューマン・タスク参加者にユーザー、グループまたはロールを割り当てることができます。割当ての詳細は、11.1.2項「参加者割当ての概要」を参照してください。

名前と式を使用してユーザー、グループまたはロールを参加者に割り当てるには:

1. ヒューマン・タスクを開きます。

2. 「一般」タブを選択します。

3. 参加者をダブルクリックします。

4. ドロップダウン・リストから名前と式を選択します。

5. 「追加」をクリックし、次のいずれかを選択します:

- ユーザーの追加

- グループの追加

- アプリケーション・ロールの追加

6. 「データ型」で次のいずれかを選択します:

- 名前別

- 式別

7. 次のように、参加者に名前を割り当てます。

1. 「値」列の「検索」アイコンをクリックします。

2. 「検索」をクリックすると、使用可能なユーザーまたはグループのリストが表示されます。

3. 「使用可能」列に追加するユーザーまたはグループを選択します。

4. 選択したアイテムを他のリストに移動をクリックします。

5. 「OK」をクリックします。

8. 「OK」をクリックします。

レーン参加者を使用してユーザー、グループまたはロールを参加者に割り当てるには:

1. ヒューマン・タスクを開きます。

2. 「一般」タブを選択します。

3. 参加者をダブルクリックします。

4. ドロップダウン・リストから「レーン参加者」を選択します。

5. 「追加」をクリックし、次のいずれかを選択します:

- 前のレーン参加者

- 現在のレーン参加者

6. 「OK」をクリックします。

パラメータ・ロールを使用してユーザー、グループまたはロールを参加者に割り当てるには:

Business Process Composerを使用すると、パラメータ・ロールを使用するようにヒューマン・タスクを構成できます。

注意:

ヒューマン・タスクはパラメータ・ロールを使用するように構成できますが、Business Process Composerを使用してパラメータ・ロールを作成または構成することはできません。パラメータ・ロールは、プロセス・ワークスペースまたはOracle BPM Studioを使用して作成し、ヒューマン・タスクに割り当てる必要があります。

1. ヒューマン・タスクを開きます。

2. 「一般」タブを選択します。

3. 参加者をダブルクリックします。

4. ドロップダウン・リストから「パラメータ・ロール」を選択します。

5. 「OK」をクリックします。

11.3.6 参加者に対する期間の定義方法

ヒューマン・タスク内の各参加者に対して期間を定義できます。

ヒューマン・タスク全体に対して期間を定義することもできます。詳細は、11.3.7項「ヒューマン・タスクに対する期間の定義方法」を参照してください。

ヒューマン・タスクのタスク・データを作成する手順は、次のとおりです。

1. ユーザー、グループまたはロールを参加者に割り当てるヒューマン・タスクを開きます。

2. 「データ」タブを選択します。

3. 「追加」ボタンをクリックします。

4. 次の中から選択します。

- string

- int

- boolean

- TaskExecutionData

「タスク・データ」表に、タスク・データが表示されます。

5. 新しいタスク・データの名前を表に入力します。

11.3.7 ヒューマン・タスクに対する期間の定義方法

ヒューマン・タスク全体に対して期間を定義できます。

ヒューマン・タスク内の各プロセス参加者に対して期間を定義することもできます。詳細は、11.3.6項「参加者に対する期間の定義方法」を参照してください。

ヒューマン・タスクに対して期間を定義する手順は、次のとおりです。

1. 期間を定義するヒューマン・タスクを開きます。

2. 「一般」タブを選択します。

3. 参加者をダブルクリックします。

4. 「追加」ドロップダウン・メニューから、次のいずれかを選択します。

- ユーザーの追加

- グループの追加

- アプリケーション・ロールの追加

5. 「OK」をクリックします。

11.3.8 ヒューマン・タスクのタスク・データの作成方法

ヒューマン・タスク・エディタを使用して、ヒューマン・タスク内で使用するデータ型を定義できます。このデータは、ユーザー相互作用で入力される情報を保存する際に使用されます。

ヒューマン・タスクのタスク・データを作成する手順は、次のとおりです。

1. タスク・データを作成するヒューマン・タスクを開きます。

2. 「データ」タブを選択します。

3. 「追加」ボタンをクリックします。

4. 次の中から選択します。

- 文字列

- 整数

- 整数(64)

- 小数

- 実数(32)

- 実数

- ブール

- 時間間隔

- TaskExecutionData

「タスク・データ」表に、タスク・データが表示されます。

5. 新しいタスク・データの名前を表に入力します。

11.3.9 ヒューマン・タスクのプレゼンテーションの指定方法

プレゼンテーションは、アプリケーションのユーザー・インタフェースを定義します。Oracle Business Process Composerでは、ヒューマン・タスクのプレゼンテーションを表示または編集できません。ただし、接続性情報は指定できます。この情報は、実行時にプレゼンテーションにアクセスするのに使用されます。

注意:

この情報は、プロセス開発者または管理者が用意してください。

ヒューマン・タスクのプレゼンテーションを指定する手順は、次のとおりです。

1. プレゼンテーションを指定するヒューマン・タスクを開きます。

2. 「データ」タブを選択します。

3. 「プレゼンテーション」を展開します。

4. 次を入力します。

- ホスト名: プレゼンテーションのデプロイ先サーバーのホスト名を指定します。

- HTTPポート: プレゼンテーションのデプロイ先サーバーのポートを指定します。

- HTTPSポート: プレゼンテーションのデプロイ先サーバーのセキュアなポートを指定します。

- URI: プレゼンテーションのURIを指定します。

5. 「OK」をクリックします。

12 管理タスクの実行

この章では、Oracle Business Process Composerを使用して管理タスクを実行する方法について説明します。

注意:

この章で説明する手順を実行できるのは、プロジェクト管理者セキュリティ・ロールが付与されているユーザーのみです。

この章の内容は次のとおりです。

- 12.1項「Business Process Composer管理の概要」

- 12.2項「グローバル・ロールの割当て方法」

- 12.3項「プロジェクトまたはプロジェクト・テンプレートの削除方法」

- 12.4項「プロジェクトでの共有の構成方法」

- 12.5項「共有プロジェクトでのロックの解放方法」

- 12.6項「プロジェクト・テンプレートのインポート方法」

12.1 Business Process Composer管理の概要

Business Process Composerを使用すると、ユーザーに管理者権限を割り当てることができます。管理者は、次のタスクを実行できます:

- ユーザーへのグローバル・ロールの割当て。

- 共有プロジェクトおよびプロジェクト・テンプレートの削除。

- 共有プロジェクトでのロックの解放。

- プロジェクトでの権限の構成。

- プロジェクト・テンプレートのインポート。

注意:

管理者は、プライベート・プロジェクトでタスクを実行することはできません。プライベート・プロジェクトにアクセスできるのは、プロジェクト所有者のみです。

12.2 グローバル・ロールの割当て方法

BPM Composerを使用すると、管理者は、個々のプロジェクトに対してプロジェクト権限を割り当てる以外に、権限をグローバルに割り当てることができます。次のグローバル・ロールを使用できます:

- SOAデザイナ: SOAデザイナ・ロールは、SOAインフラストラクチャと共有されるセキュリティ・ロールです。Business Process Composerは、このロールを使用してユーザーを有効にします。詳細は、 8.4項「実行時のOracle Business Rulesの編集」 を参照してください。
また、ランタイム時にOracle Business Rulesを編集するグループです。

- プロジェクト管理者: このロールが割り当てられたユーザーまたはグループは、すべての共有プロジェクトで次のアクションを実行できます:

- プロジェクトの削除

- プロジェクトのデプロイ

- プロジェクト権限の定義

- プロジェクト・スナップショットの作成

グローバル・ロールを割り当てるには:

1. 管理者権限があるユーザーとしてBusiness Process Composerにログインします。

2. 「管理」をクリックします。

3. 「ロール・マッピング」を選択します。

4. ドロップダウン・リストからロールを選択します。

5. 「選択」をクリックします。

1. 次のいずれかを選択します。
すべて:

ユーザー:

グループ:

2. 「検索」をクリックして、使用可能なすべてのユーザーまたはグループのリストを表示します。

3. 「使用可能」列で、追加するユーザーまたはグループを選択します。

4. 選択したアイテムを他のリストに移動をクリックします。

5. 「OK」をクリックします。

12.3 プロジェクトまたはプロジェクト・テンプレートの削除方法

管理者は、共有プロジェクトまたはプロジェクト・テンプレートを削除できます。

共有プロジェクトを削除するには:

1. 管理者権限があるユーザーとしてBusiness Process Composerにログインします。

2. 「管理」をクリックします。

3. 「プロジェクト管理」または「テンプレート管理」を選択します。

4. 表からプロジェクトまたはプロジェクト・テンプレートを選択します。

5. 「削除」をクリックします。

6. 「はい」をクリックして、プロジェクトを削除することを確認します。

12.4 プロジェクトでの共有の構成方法

管理者は、共有BPMプロジェクトで共有を構成できます。

プロジェクトで共有を構成するには:

1. 管理者権限があるユーザーとしてBusiness Process Composerにログインします。

2. 「管理」をクリックします。

3. 「プロジェクト管理」を選択します。

4. 表からプロジェクトを選択します。

5. 「共有」をクリックします。

1. 共有の可視性の1つを選択します:
チーム・メンバーのみ: プロジェクト所有者のチーム・メンバーのみでプロジェクトを共有します。

パブリック: すべてのBusiness Process Composerユーザーでプロジェクトを共有します。

2. 「選択」をクリックして、プロジェクトにアクセスできるユーザーまたはグループを指定します。

3. 次のロールの1つを選択します:
所有者:

エディタ:

表示者:

6. 「共有」をクリックします。

7. 「閉じる」をクリックします。

12.5 共有プロジェクトでのロックの解放方法

管理者は、他のユーザーによってロックされていた共有プロジェクトのロックを解放することができます。

共有プロジェクトでロックを解放するには:

1. 管理者権限があるユーザーとしてBusiness Process Composerにログインします。

2. 「管理」をクリックします。

3. 「プロジェクト管理」を選択します。

4. ロックを解放するプロジェクトを選択します。

5. 「ロックの解放」をクリックします。

注意:

プロジェクトのロックを解放する場合、プロジェクトをロックしていたユーザーによる変更はすべて失われます。

12.6 プロジェクト・テンプレートのインポート方法

管理者は、ローカル・ファイル・システムからプロジェクト・テンプレートをインポートできます。

プロジェクト・テンプレートをインポートする手順は、次のとおりです。

1. 管理者権限があるユーザーとしてBusiness Process Composerにログインします。

2. 「管理」をクリックします。

3. 「テンプレート管理」を選択します。

4. 「テンプレートのインポート」をクリックします。

5. 「参照」をクリックして、ローカル・ファイル・システム上のプロジェクト・テンプレートを検索します。

6. プロジェクト・テンプレートの名前を入力します。

7. 「OK」をクリックします。

A BPMNフロー・オブジェクト・プロパティのリファレンス

この付録では、BPMNフロー・オブジェクトの各プロパティについて説明します。内容は次のとおりです。

- A.1項「共有プロパティ」

- A.2項「対話型プロパティ」

- A.3項「アクティビティ・プロパティ」

- A.4項「ゲートウェイ・プロパティ」

- A.5項「イベント・プロパティ」

- A.6項「測定マーク・プロパティ」

- A.7項「シーケンス・フロー・プロパティ」

A.1 共通プロパティ

この項では、複数のBPMNフロー・オブジェクトで共有する共有プロパティについて説明します。

A.1.1 基本プロパティ

表A-1は、すべてのアクティビティおよびゲートウェイで共有するプロパティの一覧を示しています。これらのプロパティは、プロパティのポップアップに表示されます。

表A-1 アクティビティおよびゲートウェイの基本プロパティ

プロパティ

説明

名前

このフロー・オブジェクトの名前を定義します。これは、プロセス内のフロー・オブジェクトの名前になります。

説明

このフロー・オブジェクトの説明を入力します(オプション)。説明を追加すると、プロセスがわかりやすくなります。

タイプ:

フロー・オブジェクトのタイプを決定します。プロジェクトを編集する際、ドロップダウン・メニューから選択してフロー・オブジェクトのタイプを変更できます。

アイコン:

このフロー・オブジェクトに使用されるアイコンを表示します。別のアイコンを選択するには、「変更」をクリックします。

A.1.2 実装プロパティ

表A-2は、複数のBPMNフロー・オブジェクトで共有する実装プロパティの一覧を示しています。

表A-2 実装プロパティ

プロパティ

説明

ドラフト

選択した場合、フロー・オブジェクトがドラフトであることを指定します。

サンプリング・ポイント

このフロー・オブジェクトに対してサンプリング・ポイントを構成する場合に使用します。

- プロセスのデフォルトの継承: プロセス・レベルで定義されているデフォルトのサンプリング構成を使用する場合に選択します。

- 生成: 該当のアクティビティに対するサンプリング・ポイント・データを生成する場合に選択します。これによって、プロセス・レベルまたはプロジェクト・レベルで定義されているデフォルトの構成が上書きされます。

- 生成しない: サンプリング・ポイント・データを生成しない場合に選択します。この設定は、主にパフォーマンス上の理由で使用されます。

サンプリング・ポイントを使用すると、実行中のプロセス内のフロー・オブジェクトのパフォーマンスに関する情報を生成できます。この構成に基づいて生成されたデータは、プロセス分析データベースに格納されます。

プロジェクト・レベルで指定したサンプリング・ポイントの生成は、プロジェクト内のすべてのプロセスに適用されます。プロジェクトのサンプリング・ポイントの設定手順については、4.5.12項「プロジェクト・プロパティの表示および編集方法」を参照してください。

ただし、プロジェクト・レベルの設定は、各プロセス内で上書きできます。同様に、プロセス・レベルで指定したサンプリング・ポイントの生成は、プロセス内のすべてのフロー・オブジェクトに適用されます。プロセス・レベルの設定も各フロー・オブジェクト内で上書きできます。

プロジェクトまたはプロセス・レベルでのサンプリング・ポイント生成のオーバーライドは、通常、パフォーマンスの向上を目的に実行されます。たとえば、プロジェクトに、多くのアクティビティを含むプロセスが含まれるが、このプロセスのプロセス・メトリックを取得したくない場合、プロセスがサンプリング・ポイントを生成しないように、サンプリング・ポイント構成を設定できます。

同様に、プロジェクト内の1つのプロセスのみを測定したい場合は、サンプリング・ポイントを生成しないようにプロジェクトを設定し、特定のプロセスでサンプリング・ポイントを生成するよう構成することもできます。

プロジェクトのサンプリング構成は、デフォルトでは、対話型アクティビティに対するサンプリング・ポイントのみが生成されるように設定されています。

A.2 対話型プロパティ

このセクションでは、対話型アクティビティのプロパティについて説明します。

A.2.1 対話型アクティビティ

対話型アクティビティは、プロセス参加者が作業を実行する必要があるプロセスの部分を表します。詳細は、6.3.2項「ユーザー・タスクの概要」を参照してください。このセクションでは、次の対話型アクティビティのプロパティを表示します。

- ユーザー・タスク

- FYI

- 管理

- グループ

- 複合

- イニシエータ

対話型アクティビティのプロパティのポップアップには、複数のBPMNフロー・オブジェクトで共有するプロパティが表示されます。これらのプロパティのリストについては、A.1項「共有プロパティ」を参照してください。

表A-3では、「実装」エディタから編集できるプロパティについて説明します。

表A-3 対話型アクティビティ - 共通プロパティ

プロパティ

説明

ヒューマン・タスク

このユーザー・タスクに割り当てるヒューマン・タスクの名前を定義します。ビジネス・カタログでヒューマン・タスクのリストを選択できます。

パターン

このヒューマン・タスクで使用するパターンを表示します。

再開

承認プロセスを最初から開始します。

A.2.2 手動タスク

手動タスクは、Oracle BPMのスコープ外のプロセス参加者が実行する、プロセス内のタスクを表します。

詳細は、6.3.3項「手動タスクの概要」を参照してください。

手動タスクのプロパティのポップアップには、複数のBPMNフロー・オブジェクトで共有するプロパティが表示されます。これらのプロパティのリストについては、A.1項「共有プロパティ」を参照してください。

A.3 アクティビティ・プロパティ

次の項では、Oracle BPM Suiteでサポートされている各BPMNアクティビティのプロパティについて説明します。

A.3.1 サービス・タスク

サービス・タスクを使用すると、他のプロセスおよびサービスと通信できます。

詳細は、6.4.1項「サービス・タスクの概要」を参照してください。

サービス・タスクには、複数のBPMNフロー・オブジェクトで共有するプロパティが表示されます。これらのプロパティのリストについては、A.1項「共有プロパティ」を参照してください。

A.3.1.1 実装プロパティ

表A-4では、「サービス」オプションを選択した場合に「実装」プロパティから編集できるプロパティについて説明します。

表A-4 サービス・タスクのプロパティ(「プロセス・コール」を選択した場合)

プロパティ

説明

会話

会話のタイプを決定します。

会話のタイプを決定します。

- デフォルト: プロセスおよびターゲット・ノードのみを使用して、サービス会話を構成できます。

- 拡張: 特定のインタフェースを定義することによって、会話を構成できます。

名前

会話のインタフェースを定義できます。(このオプションは、「拡張」が選択されている場合にのみ使用可能です。)

プロセス

サービス・タスクによってコールされるBPMNプロセスを決定します。このプロセスは同じBPMプロジェクト内の別のプロセスである必要があります。

操作

このサービス・タスクによってコールされるBPMNプロセス内の特定のノード(フロー・オブジェクト)を決定します。

表A-5 サービス・タスクのプロパティ(「サービス・コール」を選択した場合)

プロパティ

説明

会話

会話のタイプを決定します。

- デフォルト: プロセスおよびターゲット・ノードのみを使用して、サービス会話を構成できます。

- 拡張: 特定のインタフェースを定義することによって、会話を構成できます。

名前

会話のインタフェースを定義できます。(このオプションは、「拡張」が選択されている場合にのみ使用可能です。)

サービス

このサービス・タスクによってコールされるサービスを決定します。このサービスは、BPMプロジェクトのビジネス・カタログに定義されている必要があります。

操作

サービス・タスクによってコールされる操作を決定します。

A.3.2 送信タスク

送信タスクでは、現在のプロセス外部のシステムまたはプロセスにメッセージが送信されます。

詳細は、6.4.4項「送信タスクの概要」を参照してください。

送信タスクには、複数のBPMNフロー・オブジェクトで共有するプロパティが表示されます。これらのプロパティのリストについては、A.1項「共有プロパティ」を参照してください。

A.3.2.1 実装プロパティ

表A-6では、「インタフェースの定義」を選択した場合の送信タスクの実装プロパティについて説明しています。

表A-6 送信タスクのプロパティ(「インタフェースの定義」を選択した場合)

プロパティ

説明

デフォルト

サービス・タスクからコールされているサービスに渡される引数定義のみを使用してインタフェースを定義します。「追加」ボタンをクリックして、必要な引数を設定できます。

引数定義に有効な値は、次のとおりです。

- 名前: 引数の名前を定義します。

- タイプ: 引数のデータ型を定義します。

拡張

引数定義を定義するほかに、操作名を選択できます。

- 操作名:

非同期

インタフェースが非同期的に呼び出されることを示します。

同期

インタフェースが同期的に呼び出されることを示します。次のプロパティも定義できます。

- 返信先:

- エラーのスロー: 送信タスクで問題が発生した場合に、エラー・ハンドラが使用されることを示します。

- エラー: 問題が発生した場合に呼び出すエラーを決定します。このエラーはビジネス・カタログに定義されている必要があります。

表A-7では、「開始」を選択すると使用できる実装プロパティについて説明しています。

表A-7 送信タスクのプロパティ(「インタフェースの使用」を選択した場合)

プロパティ

説明

名前

使用するインタフェースの名前を決定します。(このオプションは、「拡張」が選択されている場合にのみ使用可能です。)

参照

操作

送信タスクによって起動する操作を決定します。

エラー

問題が発生した場合に呼び出すエラーを決定します。このエラーはビジネス・カタログに定義されている必要があります。

表A-8では、「続行」を選択した場合の実装プロパティについて説明しています。

表A-8 送信タスクのプロパティ(「プロセス・コール」を選択した場合)

プロパティ

説明

名前

使用するインタフェースの名前を決定します。(このオプションは、「拡張」が選択されている場合にのみ使用可能です。)

プロセス

この送信タスクによって起動するBPMNプロセスを定義します。

ターゲット・ノード

サービス・タスクによってコールされるBPMNプロセス内のフロー・オブジェクトを決定します。

表A-9では、「続行」を選択した場合の実装プロパティについて説明しています。

表A-9 送信タスクのプロパティ(「サービス・コール」を選択した場合)

プロパティ

説明

名前

使用するインタフェースの名前を決定します。(このオプションは、「拡張」が選択されている場合にのみ使用可能です。)

サービス

この送信タスクによって起動するサービスを決定します。

操作

送信タスクによって起動する操作を決定します。

A.3.3 受信タスク

受信タスクでは、現在のプロセス外部のシステムまたはプロセスからのメッセージを待機します。

詳細は、6.4.5項「受信タスクの概要」を参照してください。

受信タスクには、複数のBPMNフロー・オブジェクトで共有するプロパティが表示されます。これらのプロパティのリストについては、A.1項「共有プロパティ」を参照してください。

A.3.3.1 実装プロパティ

表A-10では、「インタフェースの定義」を選択した場合の受信タスクのプロパティについて説明しています。

表A-10 受信タスク(「インタフェースの定義」を選択した場合)

プロパティ

説明

名前

使用するインタフェースの名前を決定します。(このオプションは、「拡張」が選択されている場合にのみ使用可能です。)

引数の定義

受信タスクで公開される操作の起動に必要な引数を定義します。これらの引数は、呼び出し側のプロセスまたはサービスからプロセスに渡されます。

操作名

受信タスクによって起動する操作を定義します。

表A-11では、「インタフェースの使用」を選択した場合の実装プロパティについて説明しています。

表A-11 受信タスクのプロパティ(「インタフェースの使用」を選択した場合)

プロパティ

説明

名前

使用するインタフェースの名前を決定します。(このオプションは、「拡張」が選択されている場合にのみ使用可能です。)

参照

操作

受信タスクによって起動する操作を定義します。

表A-12では、「サービス・コール」を選択した場合の実装プロパティについて説明しています。

表A-12 受信タスクのプロパティ(「サービス・コール」を選択した場合)

プロパティ

説明

名前

使用するインタフェースの名前を決定します。(このオプションは、「拡張」が選択されている場合にのみ使用可能です。)

サービス

この受信タスクによって起動するサービスを表示します。

操作

この受信タスクによって起動する操作の名前を決定します。

A.3.4 ビジネス・ルール・タスク

ビジネス・ルール・タスクを使用すると、プロセス内にOracle Business Rulesを取り込むことができます。

詳細は、6.5.2項「ビジネス・ルール・タスクの概要」を参照してください。

ビジネス・ルール・タスクには、複数のBPMNフロー・オブジェクトで共有するプロパティが表示されます。これらのプロパティのリストについては、A.1項「共有プロパティ」を参照してください。

A.3.4.1 実装プロパティ

表A-13では、「実装」エディタから編集できるプロパティについて説明します。

表A-13 ビジネス・ルール・タスクのプロパティ

プロパティ

説明

ルール

このビジネス・ルール・タスクに割り当てるビジネス・ルールを決定します。

操作

指定したルール(前述)のデシジョン関数を指定します。

A.3.5 スクリプト・タスク

スクリプト・タスクは、プロセス内のデータ・オブジェクトの値を変更するために使用します。

詳細は、6.10.1項「スクリプト・タスクの概要」を参照してください。

スクリプト・タスクには、複数のBPMNフロー・オブジェクトで共有するプロパティが表示されます。これらのプロパティのリストについては、A.1項「共有プロパティ」を参照してください。

A.3.6 コール・アクティビティ

コール・アクティビティを使用すると、再使用可能なプロセスを現在のプロセス内からコールできます。

詳細は、6.4.3項「コール・アクティビティの概要」を参照してください。

コール・アクティビティには、複数のBPMNフロー・オブジェクトで共有するプロパティが表示されます。これらのプロパティのリストについては、A.1項「共有プロパティ」を参照してください。

A.3.6.1 実装プロパティ

表A-14では、「実装」プロパティから編集できるプロパティについて説明します。

表A-14 コール・アクティビティのプロパティ

プロパティ

説明

プロセス

コール・アクティビティによって起動するBPMNプロセスを指定します。

A.3.7 サブプロセス

サブプロセスを使用すると、BPMNフロー・オブジェクトをグループ化して、プロセスをさらにわかりやすくできます。

詳細は、6.9.1項「サブプロセスの概要」を参照してください。

サブプロセスには、複数のBPMNフロー・オブジェクトで共有するプロパティが表示されます。これらのプロパティのリストについては、A.1項「共有プロパティ」を参照してください。

A.3.7.1 実装プロパティ

表A-15では、「実装」エディタから編集できるプロパティについて説明します。

表A-15 サブプロセスのプロパティ

プロパティ

説明

ループ特性

サブプロセスが繰り返される回数を定義します。Oracle Business Process Composerでは、このプロパティは読取り専用です。

A.3.8 インライン・ハンドラ

インライン・ハンドラはサブプロセスのタイプで、通常のプロセス・フローの外部で発生する条件をモデル化できます。

詳細は、6.9.2項「インライン・ハンドラの概要」を参照してください。

インライン・ハンドラには、複数のBPMNフロー・オブジェクトで共有するプロパティが表示されます。これらのプロパティのリストについては、A.1項「共有プロパティ」を参照してください。

A.4 ゲートウェイ・プロパティ

次の項では、各BPMNゲートウェイのプロパティについて説明します。

A.4.1 排他ゲートウェイ

排他ゲートウェイを使用すると、プロセスを複数のパスに分割できます。

詳細は、6.7.2項「排他ゲートウェイの概要」を参照してください。

排他ゲートウェイには、複数のBPMNフロー・オブジェクトで共有するプロパティが表示されます。これらのプロパティのリストについては、A.1項「共有プロパティ」を参照してください。

表A-16では、「アウトフロー順序」から編集できるプロパティについて説明します。

表A-16 排他ゲートウェイのプロパティ

プロパティ

説明

順序

送信シーケンス・フローの評価順序を決定できます。trueと評価された最初の条件によって、プロセスが進むパスが決定します。

A.4.2 包含ゲートウェイ

包含ゲートウェイを使用すると、プロセスを複数のパスに分割できます。

詳細は、6.7.3項「包含ゲートウェイの概要」を参照してください。

包含ゲートウェイには、複数のBPMNフロー・オブジェクトで共有するプロパティが表示されます。これらのプロパティのリストについては、A.1項「共有プロパティ」を参照してください。

A.4.3 Parallel Gateway

Parallel Gatewayを使用してプロセスを複数のパスに分割すると、プロセス・フローがすべてのパス上を同時に進むようにできます。

詳細は、6.7.4項「Parallel Gatewayの概要」を参照してください。

Parallel Gatewayには、複数のBPMNフロー・オブジェクトで共有するプロパティが表示されます。これらのプロパティのリストについては、A.1項「共有プロパティ」を参照してください。

A.4.4 複合ゲートウェイ

複合ゲートウェイでは、包含ゲートウェイと同様にプロセスが分割されます。ただし、複合ゲートウェイのマージにすべてのトークンが到着しない場合でもインスタンスを続行できる条件を定義できます。

詳細は、6.7.5項「複合ゲートウェイの概要」を参照してください。

複合ゲートウェイには、複数のBPMNフロー・オブジェクトで共有するプロパティが表示されます。これらのプロパティのリストについては、A.1項「共有プロパティ」を参照してください。

表A-17では、「実装」エディタから編集できるプロパティについて説明します。

表A-17 複合ゲートウェイのプロパティ

プロパティ

説明

アクティブ化条件

到着したトークンをゲートウェイが解放する時期を指定する条件を定義できます。新規トークンが複合ゲートウェイに到着するたびに、BPMNサービス・エンジンはこの条件を評価します。

条件がtrueと評価されると、複合ゲートウェイはtrueと評価されるまでに到着したすべてのトークンを解放します。

A.4.5 Event-Based Gateway

Event-Based Gatewayを使用すると、イベントが発生する可能性に基づいてプロセス・フローを分岐できます。

詳細は、6.7.6項「Event-based Gatewayの概要」を参照してください。

Event-Based Gatewayには、複数のBPMNフロー・オブジェクトで共有するプロパティが表示されます。これらのプロパティのリストについては、A.1項「共有プロパティ」を参照してください。

表A-18では、Event-Based Gatewayのプロパティについて説明します。

表A-18 Event-Based Gatewayのプロパティ

プロパティ

説明

インスタンス化

Event-Based Gatewayで新規のプロセス・インスタンスを作成します。

A.5 イベント・プロパティ

次の項では、Oracle BPMでサポートされている各タイプのイベントのプロパティについて説明します。

A.5.1 None開始イベント

None開始イベントは、インスタンス・トリガーが明確に定義されていないときに使用します。詳細は、6.2.3項「None開始イベントの概要」を参照してください。

A.5.2 メッセージ開始イベント

メッセージ開始イベントは、メッセージを受信するとプロセス・インスタンスをトリガーします。

詳細は、6.2.4項「メッセージ開始イベントの概要」を参照してください。

A.5.2.1 実装プロパティ

表A-19では、「実装」エディタから編集できる基本プロパティについて説明します。

表A-19 メッセージ開始のプロパティ

プロパティ

説明

タイプ

これは、メッセージ開始イベントの読取り専用プロパティです。メッセージ開始イベントは、2つのプロセス間でのみ会話を開始できます。

実装

受信タスクで、その受信タスクを起動する送信タスクとの会話を定義する方法を決定できます。

- 実装なし: 実装を指定しません。

- インタフェースの定義: 他のBPMNプロセスおよびサービスにプロセスをサービスとして公開する方法を定義できます。
引数の定義: 受信タスクで必要な引数を定義します。これらの引数は、呼び出し側のプロセスまたはサービスからプロセスに渡されます。

タイプ: プロセスを同期的に起動するか、または非同期的に起動するかを定義します。

操作名: この受信タスクの操作の名前を定義します。この操作名は、この受信タスクを起動する他のプロセスやサービスで使用されます。

- カタログから使用: ビジネス・カタログに定義されているインタフェースを選択できます。
名前: インタフェースの名前を定義します。

操作: 受信タスクで使用するインタフェース内の操作を決定します。

A.5.3 タイマー開始イベント

タイマー開始イベントは、特定の時間条件に基づいてプロセス・インスタンスの作成をトリガーします。詳細は、6.2.6項「タイマー開始イベントの概要」を参照してください。

A.5.3.1 実装プロパティ

表A-20では、「実装」エディタから編集できるプロパティについて説明します。

表A-20 タイマー開始イベントのプロパティ

プロパティ

説明

期限タイプ

タイマー開始イベントで、指定日または指定した間隔に基づいてプロセス・インスタンスを作成するかどうかを決定します。

- 日付: タイマー開始イベントで新しいプロセス・インスタンスを作成する日時を指定できます。日時は次の書式に従って指定します。
day/month/year hour:minute PM/AM

- 間隔: タイマー・イベントで新しいプロセス・インスタンスの作成を待機する間隔を指定できます。次の書式に従って、月、日、時間、秒を指定します。
<number>M,<number>d,<number>h,<number>s

式モード

式を使用して日付または間隔を定義できます。

A.5.4 シグナル開始イベント

シグナル開始イベントは、別のプロセスまたはサービスからの通信に基づくという点でメッセージ開始イベントに似ています。

詳細は、6.2.5項「シグナル開始イベントの概要」を参照してください。

A.5.4.1 実装プロパティ

表A-21では、「実装」エディタから編集できるプロパティについて説明します。

表A-21 シグナル開始イベントのプロパティ

プロパティ

説明

イベント

シグナル開始イベントをトリガーするのに使用するイベントを定義します。イベントは、ビジネス・カタログに定義されます。

A.5.5 エラー開始イベント

エラー開始イベントは、インライン・ハンドラの開始イベントとして使用されます。

詳細は、6.2.7項「エラー開始イベントの概要」を参照してください。

A.5.5.1 実装プロパティ

表A-22では、「実装」エディタから編集できるプロパティについて説明します。

表A-22 エラー開始イベントのプロパティ

プロパティ

説明

例外

エラー開始イベントで実装されるエラー例外を定義します。これはビジネス・カタログに格納されます。

すべてのビジネス例外の捕捉

キャッチ・イベントですべてのビジネス例外を捕捉する場合に選択します。

すべてのシステム例外の捕捉

キャッチ・イベントですべてのシステム例外を捕捉する場合に選択します。

A.5.6 Noneキャッチ・イベント

Noneキャッチ・イベントは、プロセス内のプレースホルダとして使用されます。

Noneキャッチ・イベントには、複数のBPMNフロー・オブジェクトで共有するプロパティが表示されます。これらのプロパティのリストについては、A.1項「共有プロパティ」を参照してください。

A.5.7 メッセージ・キャッチ・イベント

メッセージ・キャッチ・イベントを使用すると、別のプロセスまたはサービスからメッセージを受信できます。

詳細は、6.4.8項「メッセージ・キャッチ・イベントの概要」を参照してください。

メッセージ・キャッチ・イベントには、複数のBPMNフロー・オブジェクトで共有するプロパティが表示されます。これらのプロパティのリストについては、A.1項「共有プロパティ」を参照してください。

A.5.7.1 実装プロパティ

表A-23では、受信タスクの基本実装プロパティについて説明します。

表A-23 メッセージ・キャッチのプロパティ

プロパティ

説明

タイプ

メッセージ・キャッチ・イベントの会話を実装する方法を決定します。会話によって、他のプロセスまたはサービスと通信するメッセージ・イベントのグループの順序を定義します。メッセージ・イベントは、別のプロセスまたはサービスとの会話を開始したり、前のメッセージ・イベントで開始された会話を続行できます。

可能な値は次のとおりです。

- 開始: 別のBPMNプロセスまたはサービスを起動します。

- 続行: 前に起動したプロセスの会話を続行します。

表A-24では、「開始」を選択した場合の実装プロパティについて説明しています。

表A-24 メッセージ・キャッチのプロパティ(「開始」を選択した場合)

プロパティ

説明

実装

メッセージ・キャッチ・イベントで、イベントを起動するプロセスまたはサービスとの会話を定義する方法を決定できます。

- 実装なし: 実装を指定しません。

- インタフェースの定義: 他のBPMNプロセスおよびサービスにプロセスをサービスとして公開する方法を定義できます。
引数の定義: メッセージ・キャッチ・イベントで必要な引数を定義します。これらの引数は、呼び出し側のプロセスまたはサービスからプロセスに渡されます。

タイプ: プロセスを同期的に起動するか、または非同期的に起動するかを定義します。

操作名: このメッセージ・キャッチ・イベントの操作の名前を定義します。この操作名は、このメッセージ・キャッチを起動する他のプロセスやサービスで使用されます。

- カタログから使用: ビジネス・カタログに定義されているインタフェースを選択できます。
名前: インタフェースの名前を定義します。

操作: メッセージ・キャッチ・イベントで使用するインタフェース内の操作を決定します。

表A-25では、「続行」を選択した場合の実装プロパティについて説明しています。

表A-25 メッセージ・キャッチのプロパティ(「続行」を選択した場合)

プロパティ

説明

イニシエータ・ノード

このメッセージ・キャッチ・イベントに先行する、現在のプロセス内のメッセージ・イベントを選択できます。

A.5.8 タイマー・キャッチ・イベント

タイマー・キャッチ・イベントを使用すると、時間条件を使用してプロセスのフローを制御できます。

詳細は、6.8.2項「タイマー・キャッチ・イベントの概要」を参照してください。

タイマー・キャッチ・イベントには、複数のBPMNフロー・オブジェクトで共有するプロパティが表示されます。これらのプロパティのリストについては、A.1項「共有プロパティ」を参照してください。

A.5.8.1 実装プロパティ

表A-26では、「実装」エディタから編集できるプロパティについて説明します。

表A-26 タイマー・キャッチ・イベントのプロパティ

プロパティ

説明

期限タイプ

タイマー・キャッチ・イベントで、指定日または指定した間隔に基づいてプロセス・インスタンスを作成するかどうかを決定します。

- 日付: タイマー・キャッチ・イベントがトリガーされる日時を指定できます。日時は次の書式に従って指定します。
day/month/year hour:minute PM/AM

- 間隔: タイマー・イベントでイベントのトリガーを待機する間隔を指定できます。次の書式に従って、月、日、時間、秒を指定します。
<number>M,<number>d,<number>h,<number>s

式モード

式を使用して日付または間隔を定義できます。

A.5.9 エラー・キャッチ・イベント

エラー・キャッチ・イベントは、プロセス・フロー内で発生したエラーを処理するために使用される中間イベントです。

エラー境界キャッチ・イベントには、複数のBPMNフロー・オブジェクトで共有するプロパティが表示されます。これらのプロパティのリストについては、A.1項「共有プロパティ」を参照してください。

A.5.9.1 実装プロパティ

表A-27では、「実装」エディタから編集できるプロパティについて説明します。

表A-27 エラー・キャッチ・イベントのプロパティ

プロパティ

説明

例外

エラー・キャッチ・イベントで実装されるエラー例外を定義します。これはビジネス・カタログに格納されます。

すべてのビジネス例外の捕捉

エラー・キャッチ・イベントですべてのビジネス例外を捕捉する場合に選択します。

すべてのシステム例外の捕捉

エラー・キャッチ・イベントですべてのシステム例外を捕捉する場合に選択します。

A.5.10 メッセージ・スロー・イベント

メッセージ・スロー・イベントを使用すると、他のプロセスまたはサービスにメッセージを送信できます。

メッセージ・スロー・イベントには、複数のBPMNフロー・オブジェクトで共有するプロパティが表示されます。これらのプロパティのリストについては、A.1項「共有プロパティ」を参照してください。

A.5.10.1 実装プロパティ

表A-28では、送信タスクの基本実装プロパティについて説明します。

表A-28 メッセージ・スロー・イベントのプロパティ

プロパティ

説明

タイプ

メッセージ・スロー・イベントの会話を実装する方法を定義します。会話によって、他のプロセスまたはサービスと通信するメッセージ・イベントのグループの順序を定義します。メッセージ・スロー・イベントは、別のプロセスまたはサービスとの会話を開始したり、前のメッセージ・イベントで開始された会話を続行できます。

可能な値は次のとおりです。

- 開始: 別のBPMNプロセスまたはサービスを起動します。

- 続行: 前に起動したプロセスの会話を続行します。

表A-29では、「開始」を選択すると使用できる実装プロパティについて説明しています。

表A-29 メッセージ・スロー・イベントのプロパティ(「開始」を選択した場合)

プロパティ

説明

実装

「実装」ドロップダウン・メニューを使用すると、送信タスクの実装方法を決定できます。

- 実装なし: 実装を指定しません。

- サービス・コール: ビジネス・カタログに含まれるサービスを起動するようにメッセージ・スロー・イベントを構成します。
名前: メッセージ・スロー・イベントによって起動するサービスを決定します。

操作: 起動するサービス内の操作を定義します。

- プロセス・コール: 別のBPMNプロセスを起動するようにメッセージ・スロー・イベントを構成します。
プロセス: メッセージ・スロー・イベントによってコールされるBPMNプロセスを決定します。

ノード: メッセージ・スロー・イベントによってコールされるフロー・オブジェクトを決定します。

表A-30では、「続行」を選択した場合の実装プロパティについて説明しています。

表A-30 メッセージ・スロー・イベントのプロパティ(「続行」を選択した場合)

プロパティ

説明

イニシエータ・ノード

会話内のこの送信タスクに先行するメッセージ・イベントを決定します。

入力

メッセージ開始イベントで公開される操作の起動に必要な引数を定義します。

タイプ

イニシエータに定義されているプロセス・タイプが表示されます。このプロパティは読取り専用です。

操作名

このメッセージ・キャッチ・イベントの操作の名前を定義します。この操作名は、このメッセージ・キャッチを起動する他のプロセスやサービスで使用されます。

A.5.11 シグナル・スロー・イベント

シグナル・イベントを使用すると、メッセージと、そのメッセージを待機するように構成されたすべてのプロセスの間で通信できます。

シグナル・スロー・イベントには、複数のBPMNフロー・オブジェクトで共有するプロパティが表示されます。これらのプロパティのリストについては、A.1項「共有プロパティ」を参照してください。

A.5.11.1 実装プロパティ

表A-31では、「実装」エディタから編集できるプロパティについて説明します。

表A-31 シグナル・スロー・イベントのプロパティ

プロパティ

説明

イベント

シグナル開始イベントをトリガーするのに使用するイベントを定義します。イベントは、ビジネス・カタログに定義されます。

A.5.12 None終了イベント

None終了イベントは、プロセス内のプレースホルダとして使用されます。

None終了イベントの使用方法の詳細は、6.2.8項「None終了イベントの概要」を参照してください。

A.5.13 メッセージ終了イベント

メッセージ終了イベントは、プロセス完了時に他のプロセスやサービスにメッセージを送信するために使用します。

詳細は、6.2.10項「メッセージ終了イベントの概要」を参照してください。

A.5.13.1 実装プロパティ

表A-32では、「実装」エディタから編集できるプロパティについて説明します。

表A-32 メッセージ終了のプロパティ

プロパティ

説明

タイプ

会話の実装方法を定義します。メッセージ終了イベントは会話を続行するようにのみ構成できるため、このプロパティは読取り専用です。

イニシエータ・ノード

会話内のこの送信タスクに先行するメッセージ・イベントを決定します。

入力

同期のプロセスの場合、このプロパティは、開始またはキャッチ・メッセージ・イベントによって定義される操作を起動するために使用される出力引数を定義します。

非同期の場合、このプロパティは、この終了イベントによって定義されるコールバック操作で必要なとる入力引数と出力引数を定義します。

タイプ

イニシエータに定義されているプロセス・タイプが表示されます。このプロパティは読取り専用です。

操作名

非同期プロセスの場合、このプロパティは、このメッセージ・キャッチ・イベントの操作の名前を定義します。この操作名は、このメッセージ・キャッチを起動する他のプロセスやサービスで使用されます。

同期プロセスの場合、このプロパティは、この終了イベントに先行するイベントの操作を定義します。開始イベントまたはキャッチ・イベントが該当します。

A.5.14 シグナル終了イベント

シグナル終了イベントを使用すると、メッセージと、そのメッセージを待機するように構成されたすべてのプロセスの間で通信できます。このメッセージは、現在のプロセスが終了したプロセスと通信します。

A.5.14.1 実装プロパティ

表A-33では、「実装」エディタから編集できるプロパティについて説明します。

表A-33 シグナル終了イベントのプロパティ

プロパティ

説明

イベント

シグナル開始イベントをトリガーするのに使用するイベントを定義します。イベントは、ビジネス・カタログに定義されます。

A.5.15 エラー終了イベント

エラー終了イベントは、エラー状態が原因でプロセスを終了する場合に使用します。

詳細は、6.2.9項「エラー終了イベントの概要」を参照してください。

A.5.15.1 実装プロパティ

表A-34では、「実装」エディタから編集できるプロパティについて説明します。

表A-34 エラー終了イベントのプロパティ

プロパティ

説明

例外

エラー・キャッチ・イベントで実装されるエラー例外を定義します。これはビジネス・カタログに格納されます。

A.5.16 強制終了イベント

強制終了イベントは、即時にプロセスを停止するために使用します。強制終了イベントに到達すると、プロセスは即時に停止します。

詳細は、6.2.11項「強制終了イベントの概要」を参照してください。

A.6 測定マーク・プロパティ

測定マークを使用すると、プロセス内の特定の位置、またはプロセスの特定のセクションにおいて、タイプが測定のビジネス・インジケータを測定できます。次のタイプの測定マークがサポートされています。

- 「測定の開始」マーク

- 「測定の終了」マーク

- スナップショット

表A-35 測定マーク・プロパティ

プロパティ

説明

名前

この測定マークの名前を定義します。

説明

この測定マークの説明をオプションで指定します。

タイプ

測定マークのタイプが表示されます。このプロパティは読取り専用です。

ビジネス・インジケータ

この測定マークに割り当てるビジネス・インジケータを定義します。

詳細は、10.3項「ビジネス・インジケータおよびカウンタ・マークの使用」を参照してください。

.

A.7 シーケンス・フロー・プロパティ

シーケンス・フローでは、プロセス内で作業が実行される順序(シーケンス)が定義されます。次の項では、Oracle Business Process Composerを使用して編集できるシーケンス・フロー・プロパティについて説明します。

A.7.1 デフォルト・シーケンス・フロー

表A-36では、デフォルト・シーケンス・フローのプロパティについて説明します。

表A-36 デフォルト・シーケンス・フローのプロパティ

プロパティ

説明

名前

このシーケンス・フローの名前を定義します。この名前は、プロセス図のシーケンス・フローの横に表示されます。

説明

このシーケンス・フローの説明を指定します(オプション)。説明を追加すると、プロセスがわかりやすくなります。

A.7.2 標準シーケンス・フロー

表A-37では、デフォルト・シーケンス・フローのプロパティについて説明します。

表A-37 標準シーケンス・フローのプロパティ

プロパティ

説明

名前

このシーケンス・フローの名前を定義します。この名前は、プロセス図のシーケンス・フローの横に表示されます。

説明

このシーケンス・フローの説明を指定します(オプション)。説明を追加すると、プロセスがわかりやすくなります。

A.7.3 条件シーケンス・フロー

表A-38では、デフォルト・シーケンス・フローのプロパティについて説明します。

表A-38 条件シーケンス・フローのプロパティ

プロパティ

説明

名前

このシーケンス・フローの名前を定義します。この名前は、プロセス図のシーケンス・フローの横に表示されます。

説明

このシーケンス・フローの説明を指定します(オプション)。説明を追加すると、プロセスがわかりやすくなります。

条件

この条件シーケンス・フローの評価に使用する式を指定します。式を定義するには、「編集」をクリックして式エディタを起動します。

条件シーケンス・フローの評価順序を構成する方法の詳細は、A.4.1項「排他ゲートウェイ」を参照してください。

B BPMNにインポートするためのプロセスの準備

この付録では、BPMNフロー・オブジェクトの各プロパティについて説明します。内容は次のとおりです。

- B.1項「BPMNプロセスとしてインポートするためのVisioファイルの準備」

- B.2項「XSL文書を使用したXPDLのインポートのカスタマイズ方法」

- B.3項「BPMNプロセスとしてインポートするためのXPDLファイルの準備」

B.1 BPMNプロセスとしてインポートするためのVisioファイルの準備

VisioファイルをBusiness Process Composerにインポートできます。Business Process Composerは、VisioMasterMap.xmlというマップファイルを使用して、Visioの要素をBPMNフロー・オブジェクトにマップします。

このファイルは、Visioの各要素をBPMNフロー・オブジェクトにマップする方法を定義します。JDeveloperホーム・ディレクトリの次のディレクトリにあります。

.../jdeveloper/jdev/extensions/tutor/xml.

注意:

このファイルは編集しないでください。VisioUserMap.xmlを作成および編集することによって、このファイルのマッピングをオーバーライドできます。

Business Process Composerは、VisioMasterMap.xmlを解析した後VisioUserMap.xmlファイルをチェックし、ルールを適宜変更します。ユーザー・マップはマスター・マップを拡張したりオーバーライドします。

Visioインポート・モジュールは、拡張性を提供できるように設計されています。ユーザーは別のVisioステンシルをサポートするXMLファイルを追加し、追加のVisioマスター・シェイプのBPMNオブジェクトへのマッピングを指定することができます。このファイルはVisioUserMap.xmlという名前で、VisioMasterMap.xmlファイルと同じディレクトリに置く必要があります。

このファイルは、VisioMasterMap.xsdへの参照など、指定されたVisioMasterMap.xmlファイルと同じルート要素を含んでいる必要があります。VisioUserMap.xmlは、参照として使用可能なマスター・マップと同じ形式である必要があります。ユーザー・マップに追加されたエントリは、マッピングを追加したり、メイン・マップにある既存のエントリをオーバーライドします。拡張されたエントリまたはオーバーライドされたエントリのみが含まれている必要があり、元のエントリすべてを繰り返すことはできません。

例B-1 VisioUserMap.xmlのエントリの例

<?xml version = '1.0' encoding = 'UTF-8'?>
<Masters xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://www.oracle.com/oracle/tutor/visio/masterMapElements VisioMasterMap.xsd"
xmlns="http://www.oracle.com/oracle/tutor/visio/masterMapElements">
<!— custom <Master/> elements go here -- >
</Masters>

B.1.1 VisioUserMap.xmlの更新方法

この項では、VisioファイルをBPMNプロセスにインポートするための考えられるシナリオについて説明します。

VisioUserMap.xmlを更新するには:

このシナリオでは、ソースのVisioファイルに、データ・オブジェクトにマップするReportというシェイプが含まれていると仮定します。デフォルトでは、VisioMasterMapはこのシェイプを送信タスクにマップします。それを入力オブジェクトまたは出力オブジェクトとして厳密に使用すると、データ・オブジェクトへのマップがより正確になります。

1. VisioMasterMap.xmlファイルで、次のように表示されるDataObjectのマスター定義を検索します。

<Master Name="data object">
<BPMNObject>DataObject</BPMNObject>
</Master>

この定義の後に、Like属性を使用して最初の定義をクローニングし追加のVisioオブジェクトをマップする、一連の追加のマスター要素が続きます。

<Master Name="sequential data" Like="data object"/>
<Master Name="data" Like="data object"/>

2. VisioのReport要素のマッピングを追加または変更するには、VisioUserMap.xmlファイルに次のコードを追加します。

<Master Name=”Report” Like=”data object”/>

例B-2は、Extends属性を使用して、追加または異なる属性とともに既存のBPMNオブジェクトにオブジェクトがどのようにマップされるかを示しています。

例B-2 Extends属性を使用したBPMNオブジェクトへのVisioオブジェクトのマッピング

<Master Name="flow">
<BPMNObject>SequenceFlow</BPMNObject>
</Master>

<Master Name="conditional flow" Extends="flow">
<Attributes>
<Attribute Name="ConditionType" Value="Expression"/>
</Attributes>
</Master>

この例では、Visioオブジェクトconditional flowがBPMNフロー・オブジェクトSequenceFlowにマップされ、属性ConditionTypeが値Expressionに追加されています。

B.1.2 BPMN要素の有効な値

<BPMNObject>要素の有効な値は次のとおりです。

- タスク

- サブプロセス

- イベント

- ゲートウェイ

- DataObject

- グループ

- 注釈

- レーン

- プール

- MessageFlow

- SequenceFlow

- アソシエーション

- Null

注意:

Null値をVisioの要素に割り当てると、BPMNフロー・オブジェクトは作成されません。

B.1.3 BPMN要素の属性

次の表は、BPMNフロー・オブジェクトの基本的なBPMNタイプに基づいた、BPMN属性の有効な値を示しています。

タスクの属性と値

表B-1はBPMNタスクの有効な属性と値を示しています。

表B-1 タスクの属性と値

属性

値

TaskType

None、Script、Reference、Service、User、Manual、Send、Receive

LoopType

Standard、MultiInstance

isForCompensation

true、false

サブプロセスの属性と値

表B-2はBPMNサブプロセスの有効な属性と値を示しています。

表B-2 サブプロセスの属性と値

属性

値

isExpanded

true、false

isATransaction

true、false

LoopType

Standard、MultiInstance

isForCompensation

true、false

AdHoc

true、false

イベントの属性と値

表B-3はBPMNイベントの有効な属性と値を示しています。

表B-3 イベントの属性と値

属性

値

EventType

Start、Intermediate、End

Trigger

Trigger None、Message、Timer、Conditional、Signal、Multiple、Error、Cancel、Compensation、Link、Terminate

ゲートウェイの属性と値

表B-4はBPMNゲートウェイの有効な属性と値を示しています。

表B-4 ゲートウェイの属性と値

属性

値

GatewayType

Parallel、Inclusive、Exclusive、Complex

ExclusiveType

Event、Data

MarkerVisible

true、false

シーケンス・フローの属性と値

表B-5はBPMNシーケンス・フローの有効な属性と値を示しています。

表B-5 シーケンス・フローの属性と値

属性

値

ConditionType

None、Expression、Default

アソシエーションの属性と値

表B-6はBPMNデータ・オブジェクトの有効な属性と値を示しています。

表B-6 アソシエーションの属性と値

属性

値

Direction

None、One

プールの属性と値

表B-7はBPMNプールの有効な属性と値を示しています。

表B-7 プールの属性と値

属性

値

BoundaryVisible

true、false

B.2 XSL文書を使用したXPDLのインポートのカスタマイズ方法

多くの場合、ソースからターゲットへのモデルの変換は一般的な変換ルールに従い、ガイドラインと制約があります。XPDL文書をインポートして望ましくない結果が生じた場合、Business Process Composerが期待している形式とXPDL文書の形式が一致していない可能性があります。このような状況では、XSLT変換を使用すると、元のXPDLダイアグラムとBusiness Process Composerの結果をより一致させることができます。

次の手順では、XSLスタイル・シートを組み込んでOracle BPM変換の出力を変更する推奨方法について説明します。Oracle BPMには、XSLT開発者への例として役立ついくつかのXSLTファイルが同梱されています。

XSL文書を使用してXPDLのインポートをカスタマイズするには:

Business Process ComposerはXSLT変換を使用してXPDLファイルを解析し、データがBPMNに渡されダイアグラムとして表示される前に一致する形式を生成します。Business Process ComposerはXPDL文書に関連付けられた変換ファイルを検索します。

通常、XPDLファイルにはベンダー名を提供する<Vendor/>要素が含まれています。ベンダー名およびXSLファイルへのパスをOracle BPMのXSLFilePaths.xmlに追加することによって、ベンダー名が検索され、関連付けられた変換ファイルのパスが特定されます。

ファイル・パスが索引ファイルから取得され、Business Process ComposerはXSLT変換をXPDLファイルに適用します。

1. カスタムのXSLTファイルを作成します。
XMLエディタを使用して、新しいXSLTファイルを作成します。例を表示するには、付録3「XPDLのテクニカルな詳細」を参照してください。XSLFilePaths.xmlを含むXMLディレクトリにXSLTファイルを配置することが最適です。

2. インポートするXPDLファイルを開き、<PackageHeader/>要素の下の<Vendor/>要素を検索し、その値を書き留めます。
たとえば、XPDLが次のような場合:

<Package xmlns="http://www.wfmc.org/2004/XPDL2.0alpha" Id="6" Name="Untitled Document 6">
<PackageHeader>
<Vendor>Global 360</Vendor>
…
</PackageHeader>
…
</Package>

Vendor要素の値は“Global 360”になります。

3. XSLFilePaths.xmlファイルを検索します。
このファイルは、JDeveloperインストール・ディレクトリの下にネストされたXMLというフォルダ([JDeveloper install]\jdeveloper\jdev\extensions\tutor\xml)に配置されています。

4. ベンダーの名前を含むVendor属性を使用して、新しい<XSLFilePath/>要素を追加し、XSLTファイルへの相対パスを値として指定します。
例:

<XSLFilePaths xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="filesPaths PatchFilesPaths.xsd" xmlns="filesPaths">
…
<XSLFilePath Vendor=”Global 360”>Global360Patch.xsl</XSLFilePath>
</XSLFilePaths>

注意:

この例では、ファイル名Global360Patch.xslに追加のパス情報がありません。Business Process Composerは、XSLFilePaths.xmlファイルが含まれているのと同じフォルダ内でこのファイルを検索します。

追加のパス情報がある場合には、Business Process Composerは\xmlフォルダからの相対パスでファイルを検索します。

5. XPDLファイルをOracle BPMにインポートします。ファイルはカスタムXSLTファイルで指定したルールに従って変換および処理されます。

B.3 BPMNプロセスとしてインポートするためのXPDLファイルの準備

XPDL 2.1に準拠していないXDPLファイルまたはOracle BPMが期待する要素が欠落している可能性のあるXDPLファイルをインポートするために、XSLTを使用して変換を拡張することができます。カスタムXSLTを組み込んで最適な結果を得る方法については、B.1項「BPMNプロセスとしてインポートするためのVisioファイルの準備」を参照してください。この付録では、Oracle BPMユーザーがXPDLファイルをインポートする際に遭遇する可能性のある一般的な状況に対処するための、XSLTのサンプル・テンプレートをいくつか提供します。

Tutorを使用している場合、この付録で説明されているファイルは、Tutorインストール・ディレクトリにあるXMLというディレクトリに配置されています。BPMを使用している場合は、JDeveloperインストール・ディレクトリの下に配置されているため、/jdeveloper/jdev/extensions/tutor/xmlに移動してください。

ビジネス・プロセスをOracle BPMにインポートするための要件を次に示します。

- Oracle BPMで、XPDL 2.1ファイルのインポートがサポートされている。ネームスペースhttp://www.wfmc.org/2008/XPDL2.1は、XPDLソース文書のルート要素(例: 「<Package/>」)にデフォルト・ネームスペースとして存在している必要があります。

- インポート対象のXPDLソース・ファイルがXPDL 2.1に準拠していない場合は、XSLTを実行して、Oracle BPMにインポートするための適切なXPDL形式を生成する必要があります。次の項では、このような変換を作成するためのガイドラインについて説明します。

B.3.1 ネームスペースの処理

XPDLをインポートする場合、XSLTにおけるネームスペースの処理について理解している必要があります。Oracle BPMで使用されるデフォルト・ネームスペースは次のとおりです。

http://www.wfmc.org/2008/XPDL2.1.

場合によっては、ソース・ファイルがXPDL 2.1に準拠していても、Oracle BPMが必要とする要素が欠落している場合があります。この場合、XSLTを使用してそうした要素を追加することができます。このような変換への参照については、次のシナリオを参照してください。

XPDL文書のその他のデフォルト・ネームスペースは、インポート時にXPLD 2.1に準拠している要素および属性として処理されますが、良い結果が得られない可能性があります。XPDL 2.1に準拠していないXPDLソース文書は、XSLを使用してXPDL 2.1の結果文書に変換する必要があります。

次のシナリオが考えられます。

- ソースXPDLの要素がデフォルト・ネームスペースを使用し、XPDL 2.1に準拠している。このシナリオの処理例として、スタイルシートBizAgiPatch.xslを参照してください。

- ソースXPDLの要素はデフォルト・ネームスペースに存在するが、XPDL 2.1に準拠していない。このシナリオの処理例として、スタイルシートpatch.xslを参照してください。

- ソースXPDLの要素はデフォルト・ネームスペースに存在せず、XPDL 2.1に準拠していない。このシナリオの処理例として、スタイルシートALBPMPatch.xslを参照してください。

- 4. ソースXPDLの要素はデフォルト・ネームスペースに存在しないが、XPDL 2.1に準拠している。このシナリオの処理例として、スタイルシートTibcoPatch.xslを参照してください。

例B-3は、ソース文書のローカル・ネームスペースを使用して記述された要素を、結果文書のデフォルト・ネームスペースにコピーするXSLを示しています。

注意:

ローカル・ネームスペースは、スタイルシートのルート要素に追加されます。ソースXPDL文書の要素と一致する場合は、ローカル・ネームスペースの接頭辞が一致している必要があります。この例ではANY_LOCAL_NAMESPACEを使用しています。

例B-3 ローカル・ネームスペースの要素のデフォルト・ネームスペースへのコピー

<xsl:stylesheet version = "1.0"
xmlns:xsl = "http://www.w3.org/1999/XSL/Transform"
xmlns:ANY_LOCAL_NAMESPACE = "http://www.someURI" >
<xsl:output method = "xml" indent = "yes"/>
<xsl:template match="@*|node()">
<xsl:copy>
<xsl:apply-templates select="@*|node()"/>
</xsl:copy>
</xsl:template>
<xsl:template match = “ANY_LOCAL_NAMESPACE:Activity”>
…………
</xsl:template>
</xsl:stylesheet>

B.3.2 相対座標の処理

XPDL文書には、相対または絶対として定義されるオブジェクト座標が含まれる場合があります。絶対座標を使用したXPDL文書では、すべての座標が絶対座標としてインポートされます。

相関座標を使用してXPDL文書をOracle BPMにインポートする場合、次の条件に注意する必要があります。

- プール座標は絶対座標である

- レーン座標は親プールに対する相対座標である

- サブプロセスに含まれないノード座標は、絶対座標である

- 埋込みサブプロセス(拡張または縮小)に含まれるノード座標は、サブプロセスの左上隅に対する相対座標である

- サブプロセスに含まれるノードを接続するシーケンス・フロー・パス座標は、サブプロセスの左上隅に対する相対座標である

- その他すべてのフローは絶対座標である

相関座標を含むXPDL文書は、上述の条件を満たすために変換する必要があります。次の情報は、必要に応じて座標を相関から絶対に、またはその逆に変換する場合に役立ちます。

- プール座標
プール座標は絶対座標である必要があります。プール用に提供されている座標が相対座標の場合は、OBPCは互いに重複するすべてのプールをレンダリングします。OBPCは、プールに含まれている座標が絶対座標であると想定しています。これを上書きするには、プール座標を絶対座標に変換します。

- レーン座標
レーン座標は親プールに対する相対座標である必要があります。場合によっては、レーンに絶対座標が含まれていて、モデルには相対座標が含まれていることがあります。この場合、レーン座標は次のように変換することができます。レーンのX座標は、レーンのX座標と親プールのX座標との差異とみなされます。同じロジックがY座標にも適用されます。

次のXSLの例は、この変換の実行方法について示しています。

<xsl:template match = "xpdl2:Lane/xpdl2:NodeGraphicsInfos/xpdl2:NodeGraphicsInfo/xpdl2:Coordinates">

<xsl:copy>
<xsl:copy-of select = "@*[name() != 'XCoordinate' and name() != 'YCoordinate']"/>
<xsl:attribute name = "XCoordinate">
<xsl:value-of select = “ancestor::xpdl2:Pool/xpdl2:NodeGraphicsInfos/xpdl2:NodeGraphicsInfo/xpdl2:Coordinates/@XCoordinate - @XCoordinate"/>
</xsl:attribute>
<xsl:attribute name = "YCoordinate">
<xsl:value-of select = "ancestor::xpdl2:Pool/xpdl2:NodeGraphicsInfos/xpdl2:NodeGraphicsInfo/xpdl2:Coordinates/@YCoordinate - @YCoordinate"/>
</xsl:attribute>
<xsl:apply-templates/>
</xsl:copy>
</xsl:template>

- サブプロセスに含まれないノード座標
サブプロセスに含まれないノード座標は、絶対座標である必要があります。ノード座標が親レーンまたは親プールに対する相対座標である場合は、絶対座標に変換します。親プールに関連するアクティビティの座標は、プール座標をアクティビティ座標に追加することによって、絶対座標に変換できます。親プールに対する相対座標である親レーンに関連するアクティビティの座標は、アクティビティ、親レーンおよび親プールの座標の合計をアクティビティ座標に割り当てることによって、絶対座標に変換できます。

次の例は、アクティビティ座標が親レーンに対する相対座標で、レーン座標が、プール座標が絶対座標である親プールに対する相対座標である場合の、アクティビティ座標の計算方法について示しています。

<xsl:template match="xpdl2:Activity/xpdl2:NodeGraphicsInfos/xpdl2:NodeGraphicsInfo/xpdl2:Coordinates">
<xsl:copy>
<xsl:copy-of select="@*[name()!='YCoordinate' and name()!='XCoordinate']"/>
<xsl:variable name="LaneId">
<xsl:value-of select="ancestor::xpdl2:NodeGraphicsInfo/@LaneId"/>
</xsl:variable>
<xsl:variable name="PoolId">
<xsl:value-of select="//xpdl2:Lane[@Id=$LaneId]/ancestor::xpdl2:Pool/@Id"/>
</xsl:variable>
<xsl:attribute name="YCoordinate">
<xsl:value-of select="//xpdl2:Pool[@Id=$PoolId]/xpdl2:NodeGraphicsInfos/xpdl2:NodeGraphicsInfo/xpdl2:Coordinates/@YCoordinate
+ //xpdl2:Lane[@Id=$LaneId]//xpdl2:NodeGraphicsInfos/xpdl2:NodeGraphicsInfo/xpdl2:Coordinates/@YCoordinate
+
@YCoordinate"/>
</xsl:attribute>
<xsl:attribute name="XCoordinate">
<xsl:value-of select="//xpdl2:Pool[@Id=$PoolId]/xpdl2:NodeGraphicsInfos/xpdl2:NodeGraphicsInfo/xpdl2:Coordinates/@XCoordinate
+ //xpdl2:Lane[@Id=$LaneId]//xpdl2:NodeGraphicsInfos/xpdl2:NodeGraphicsInfo/xpdl2:Coordinates/@XCoordinate
+
@XCoordinate"/>
</xsl:attribute>
</xsl:copy>
</xsl:template>

- 埋込みサブプロセスに含まれるノード座標
埋込みサブプロセス(拡張または縮小)に含まれるノード座標は、サブプロセスの左上隅に対する相対座標である必要があります。サブプロセスの子ノードの座標は親サブプロセスに対する相対座標です。サブプロセスの子ノードの座標が親サブプロセスに対する相対座標でない場合は、その座標が親レーンまたは親プールに対する相対座標であるかどうかを確認する必要があります。ノード座標をサブプロセスに対する相対座標にするには、適切なサブプロセス座標をノード座標から減算して、結果値をノード座標に割り当てます。次に示すスタイルシートのサンプル・テンプレートでは、サブプロセスの子ノードの座標を計算しています。このテンプレートは、子ノードの座標がサブプロセスに対する相対座標でない場合に役立ちます。

<xsl:template match = "xpdl2:ActivitySet/xpdl2:Activities/xpdl2:Activity/xpdl2:NodeGraphicsInfos/xpdl2:NodeGraphicsInfo/xpdl2:Coordinates">
<xsl:variable name = "ActivitySetId">
<xsl:value-of select = "ancestor::xpdl2:ActivitySet/@Id"/>
</xsl:variable>
<xsl:copy>
<xsl:copy-of select = "@*[name() != 'XCoordinate' and name() != 'YCoordinate']"/>
<xsl:attribute name = "XCoordinate">
<xsl:value-of select = "@XCoordinate  –
//xpdl2:Activity[@Id = $ActivitySetId]/xpdl2:NodeGraphicsInfos/xpdl2:NodeGraphicsInfo/xpdl2:Coordinates/@XCoordinate"/>
</xsl:attribute>
<xsl:attribute name = "YCoordinate">
<xsl:value-of select = "@YCoordinate –
//xpdl2:Activity[@Id = $ActivitySetId]/xpdl2:NodeGraphicsInfos/xpdl2:NodeGraphicsInfo/xpdl2:Coordinates/@YCoordinate"/>
</xsl:attribute>
</xsl:copy>
</xsl:template>

- シーケンス・フロー・パス座標
サブプロセスに含まれるノードを接続するシーケンス・フロー・パス座標は、サブプロセスの左上隅に対する相対座標である必要があります。

XSLで、シーケンス・フロー・パス座標がサブプロセスに対する相対座標であるかどうかを確認する必要があります。そうでない場合は、サブプロセスの左上隅に対する相対座標に変換します。

単純なプログラム論理を使用して、相対座標に変換することができます。このような論理では、シーケンス・フロー・パス座標からサブプロセス座標を減算します。その他すべてのフローは絶対座標である必要があります。

またXSLコードで、座標が相対座標であるか絶対座標であるかを確認する必要があります。絶対座標でない場合には、変換します。変換するには、親プール座標をフロー座標に追加するための論理を含んでいて、これらの値をフロー座標に割り当てるテンプレートをスタイルシートに追加してください。座標が親プールまたは親レーンに対する相対座標である場合には、次の点に注意することが重要です。

- シーケンス・フローが親プールに対する相対座標である場合は、プール座標をフロー座標に追加します。

- シーケンス・フローが親レーンに対する相対座標である場合は、親プール座標と親レーン座標をフロー座標に追加します。

B.3.3 拡張属性の処理

XPDLファイルを解析するために、Business Process Composerによって2つの拡張属性が使用されます。これらの拡張属性はオプションですが、フローに相対座標を使用したXPDL文書で作業する場合に非常に役立ちます。それらの属性は次のとおりです。

- redrawConnections

- isRelativeObjectCoordinates

これらの拡張属性は標準のXPDL要素ではありませんが、フロー座標を相対座標から絶対座標に、または絶対座標から相対座標に変換するのに必要な作業量を軽減するために使用することができます。<ExtendedAttributes>要素はXPDL文書の多くの要素内で見つかりますが、Oracle BPMは<Package/>要素の下で検索します。<ExtendedAttributes>要素は、Oracle BPMによって見つけられるように、<Package/>要素の下に配置してください。

B.3.4 redrawConnectionsの処理

この属性をtrueに設定すると、Oracle BPMは元の座標を使用するかわりにフロー接続を再描画できます。これは、フローの座標を相対座標または絶対座標に変換する必要がある場合に便利です。フローの座標を相対座標または絶対座標に変換することが難しい場合は、この属性をtrueに設定すると、Oracle BPMはフローの座標を再作成できます。

この属性がtrueに設定されていると、座標を絶対座標または相対座標に変換する必要がありません。Oracle BPMはフローの元の座標を考慮せず、フローに最適な座標を作成します。

ExtendedAttributeがXPDLファイルに含まれていない場合、またはfalseに設定されている場合には、Oracle BPMは元の座標を使用します。

したがって、この属性の使用は、元のモデルのレイアウトの保持が開発時間の短縮よりも重要でない場合に検討する必要があります。

例B-4はこの属性の設定方法について示しています。

例B-4 redrawConnectionsを処理する場合のExtendedAttributeの設定

<xsl:template match="xpdl:Package/xpdl:ExtendedAttributes">
<xsl:copy>
<xsl:copy-of select="@*"/>
<xpdl:ExtendedAttribute Name="redrawConnections" Value="true"/>
<xsl:apply-templates/>
</xsl:copy>
</xsl:template>
<xsl:template match="xpdl:Package">
<xsl:copy>
<xsl:copy-of select="@*"/>
<xsl:if test="not(child::xpdl:ExtendedAttributes)">
<xpdl:ExtendedAttributes>
<xpdl:ExtendedAttribute Name="redrawConnections" Value="true"/>
</xpdl:ExtendedAttributes>
</xsl:if>
<xsl:apply-templates/>
</xsl:copy>
</xsl:template>

上のテンプレートでは、redrawConnectionsというExtendedAttributeが<ExtendedAttributes/>要素に< Package/>の子として追加されています。

B.3.5 isRelativeObjectCoordinatesの処理

拡張属性isRelativeObjectCoordinatesは、XPDLファイルのオブジェクト座標が相対座標であるか絶対座標であるかをOracle BPMに通知するために使用されます。

ソースXPDLファイルにすべてのオブジェクト座標が絶対形式(すべての座標はダイアグラムの左上隅にある(0,0)の位置から測定される)で示されている場合には、この属性を使用して、その値をfalseに設定する必要があります。

この拡張属性をtrueに設定すると、上で指定したOracle BPMの相対座標のルールに従って、ソースXPDLファイルのすべての座標が相対座標であることがOracle BPMに通知されます。

Oracle BPMではデフォルトで、入力ドキュメントのすべての座標が上述のOracle BPMの相対座標のルールに準拠していると想定します。この属性がtrueに設定されているか省略されている場合は、すべての座標がOracle BPMの相対座標のルールを満たしていることを確認してください。それ以外の場合は、このドキュメントで指定された相対座標のルールに準拠させるためのテンプレートをスタイルシートに追加してください。

例B-5は、次に示される<Package/>要素の子である<ExtendedAttributes/>要素に<ExtendedAttribute/>要素を含める方法について示しています。

例B-5 ExtendedAttributes要素にExtendedAttributeを含める

<xsl:template match="xpdl21:Package/xpdl21:ExtendedAttributes">
<xsl:copy>
<xsl:copy-of select="@*"/>
<xpdl21:ExtendedAttribute Name="isRelativeObjectCoordinates" Value="false"/>
<xsl:apply-templates/>
</xsl:copy>
</xsl:template>
<xsl:template match="xpdl21:Package">
<xsl:copy>
<xsl:copy-of select="@*"/>
<xsl:if test="not(child::xpdl21:ExtendedAttributes)">
<xpdl21:ExtendedAttributes>
<xpdl21:ExtendedAttribute Name="isRelativeObjectCoordinates" Value="false"/>
</xpdl21:ExtendedAttributes>
</xsl:if>
<xsl:apply-templates/>
</xsl:copy>
</xsl:template>

B.3.6 非表示要素の削除

Oracle BPMでは、ソースXPDLファイルのすべてのグラフィカル要素は、その可視性がfalseに設定されている場合でも表示要素とみなされます。したがって、以前は非表示であった要素が現在は表示要素になっているなどの違いがある場合があります。

この問題を解決する唯一の方法は、例B-6に示すように、XSLスタイルシートのいくつかのテンプレートを使用して、XPDLからそれらの要素を削除することです。

例B-6 非表示要素の削除

<xpdl:Activity Name="ProcessGroup" Id="ProcessGroup">
<xpdl:NodeGraphicsInfos>
<xpdl:NodeGraphicsInfo ToolId="XYZ" LaneId="PMCoE" IsVisible="false">
<xpdl:Coordinates XCoordinate="7740.0" YCoordinate="80.0"/>
</xpdl:NodeGraphicsInfo>
</xpdl:NodeGraphicsInfos>
…………………..
</xpdl:Activity>

ここで、アクティビティの可視性をfalseに設定して、このモデルをOracle BPMにインポートした場合も、このアクティビティは表示されたままです。非表示要素を削除するには、それらを削除するためのテンプレートをスタイルシートに追加してください。

例B-7は非表示アクティビティの削除方法について示しています。

例B-7 非表示アクティビティの削除

<xsl:template match="xpdl:Activity">
<xsl:variable name="isVisible">
<xsl:choose>
<xsl:when test="xpdl:NodeGraphicsInfos/xpdl:NodeGraphicsInfo/@IsVisible = 'false'">
<xsl:text>false</xsl:text>
</xsl:when>
<xsl:otherwise>
<xsl:text>true</xsl:text>
</xsl:otherwise>
</xsl:choose>
</xsl:variable>
<xsl:if test="$isVisible = 'true'">
<xsl:copy>
<xsl:copy-of select="@*"/>
<xsl:apply-templates/>
</xsl:copy>
</xsl:if>
</xsl:template>

B.3.7 方向属性の処理

方向は多くのXPDL文書で見つかる属性で、モデルの方向を指定します。この属性にはHORIZONTALまたはVERTICALの値を指定する必要があります。一部のツールで生成されたXPDL文書には、モデルが実際には垂直方向または水平方向であっても水平方向とみなす座標が含まれている場合があります。

モデルの方向に関して、モデルに適切な座標が含まれていることを確認してください。

モデルに不適切な座標が含まれている場合には、座標を入れ替えるためのテンプレートをスタイルシートに追加してください。

モデルの方向属性は、Oracle BPMがプールやレーンのディメンションを計算する(このドキュメントの後半で説明)ためにも重要です。方向属性はプール要素で見つかることがあります。この属性がXPDL文書で見つからない場合は、Oracle BPMによってモデルは水平方向であるとみなされます。

方向属性がツール固有のネームスペースに存在する場合は、方向属性をプール要素に作成して、それらの値をツール固有のネームスペースにある属性に設定することによって、Oracle BPMで利用できるようにする必要があります。

例B-8はプールの方向の設定方法について示しています。このテンプレートではプールの方向を見つけようとしています。見つからない場合は、方向属性はHORIZONTALに設定されます。

例B-8 プールの方向の設定

<xsl:template match="xpdl:Pool">
<xsl:variable name="orientation">
<xsl:choose>
<xsl:when test="not(@Orientation)">
<xsl:text>HORIZONTAL</xsl:text>
</xsl:when>
<xsl:otherwise>
<xsl:value-of select="@Orientation"/>
</xsl:otherwise>
</xsl:choose>
</xsl:variable>
<xsl:copy>
<xsl:copy-of select="@*"/>
<xsl:attribute name="Orientation">
<xsl:value-of select="$orientation"/>
</xsl:attribute>
<xsl:apply-templates/>
</xsl:copy>
</xsl:template>

B.3.8 サブプロセスのビュー・タイプの指定

<BlockActivity/>要素および<Subflow/>要素のビュー属性は、サブプロセスが拡張サブプロセスか縮小サブプロセスかを指定します。Oracle BPMでは、サブプロセス要素のデフォルト・ビュー・タイプをCOLLAPSEDと想定しています。したがって、モデルに拡張サブプロセス要素が含まれていても、XPDLファイルでビュー・タイプが指定されていない場合には、Oracle BPMはこの要素を縮小サブプロセス要素とみなします。

注意:

XPDLファイルのサブフロー要素は子要素も一緒にOracle BPMにレンダリングすることはできないため、サブフロー要素のみがインポートされたモデルで見つかります。サブプロセスはビュー・タイプに応じて識別することができます。サブフローが拡張サブフローの場合には、Oracle BPMはこの要素を拡張サブフロー要素とみなします。

次の例では、ビュー・タイプが指定されていない<BlockActivity/>要素と<Subflow/>要素が示されています。Oracle BPMによる対応する解釈の結果、縮小サブプロセスとなります。

<xpdl2:BlockActivity ActivitySetId="_gJ5DQeE3Ed6tmt0cZVxmlA"/>
<xpdl2:SubFlow Id="_swKUEGyzEd6oxIP3ZfQL-g" PackageRef="ProcessPackage"/>

ビュー属性が<BlockActivity>要素に見つからない場合は、ツール固有のネームスペースに存在している可能性があります。その場合には、<BlockActivity>要素または<Subflow>要素にビュー属性を作成するためのテンプレートをXSLに含めてください。

例B-9は、ビュー属性を<Subflow>要素に追加するのに使用するスタイルシートを示しています。このテンプレートはBizAgiで生成されたXPDLファイルに役立ちます。

例B-9 サブフロー要素へのビュー属性の追加

<xsl:template match="xpdl21:SubFlow">
<xsl:copy>
<xsl:copy-of select="@*"/>
<xsl:attribute name="View">
<xsl:choose>
<xsl:when test="ancestor::xpdl21:Activity/xpdl21:NodeGraphicsInfos/xpdl21:NodeGraphicsInfo/@Expanded='false'">
<xsl:text>COLLAPSED</xsl:text>
</xsl:when>
<xsl:otherwise>
<xsl:text>EXPANDED</xsl:text>
</xsl:otherwise>
</xsl:choose>
</xsl:attribute>
</xsl:copy>
</xsl:template>

例B-10は、ビュー属性を<BlockActivity>要素に追加するスタイルシートのサンプル・テンプレートを示しています。このテンプレートはOracle BPM StudioのXPDLで生成されたファイルに役立ちます。また、このテンプレートは、ツール固有のネームスペースからビュー属性値にアクセスすることによって、<BlockActivity>要素にビュー属性を作成する方法について示しています。

例B-10 BlockActivity要素へのビュー属性の追加

<xsl:template match="xpdl:Activity/xpdl:BlockActivity">
<xsl:copy>
<xsl:copy-of select="@*"/>
<xsl:choose>
<xsl:when test="ancestor::xpdl:Activity/xpdl:Extensions/albpm:ALBPMExtensions/albpm:FeatureSet/albpm:BooleanFeature[@ name='collapsed']/@value='true'">
<xsl:attribute name="View">
<xsl:text>COLLAPSED</xsl:text>
</xsl:attribute>
</xsl:when>
<xsl:otherwise>
<xsl:attribute name="View">
<xsl:text>EXPANDED</xsl:text>
</xsl:attribute>
</xsl:otherwise>
</xsl:choose>
<xsl:apply-templates/>
</xsl:copy>
</xsl:template>

B.3.9 オブジェクト・ピンの処理

一部のツールでは、アクティビティに提供される座標がアクティビティ・オブジェクトの左上隅に指定されているのに対し、ほかのツールでは、座標がアクティビティ・オブジェクトの中心に基づいています。これらの座標はオブジェクト・ピンとして機能します。

アクティビティの中心にオブジェクト・ピンを含むXPDL文書をOracle BPMにインポートする場合、期待する位置と異なる位置でアクティビティが発生する可能性があります。これは、アクティビティのオブジェクト・ピンが中心にあるのに対し、Oracle BPMではオブジェクト・ピンが左上隅にあることを期待しているためです。この矛盾を解決するには、アクティビティ座標を再計算する必要があります。

このような座標の計算は、アクティビティの幅の半分をX座標から減算し、アクティビティの高さの半分をY座標から減算するなどの単純な論理を使用して行うことができます。

例B-11は、この再計算を行うスタイルシートのテンプレートを示しています。このテンプレートは、アクティビティに幅、高さ、X座標およびY座標が指定されている場合にのみ有効であることに注意してください。

例B-11 オブジェクト・ピンの位置の再計算

<xsl:template match = "xpdl:Activity/xpdl:NodeGraphicsInfos/xpdl:NodeGraphicsInfo/xpdl:Coordinates">        <xsl:copy>
<xsl:copy-of select = "@*[name() != 'XCoordinate' and name() != 'YCoordinate']"/>
<xsl:attribute name = "XCoordinate">
<xsl:value-of select = "@XCoordinate - ancestor::xpdl:NodeGraphicsInfo/@Width div 2 "/>
</xsl:attribute>
<xsl:attribute name="YCoordinate">
<xsl:value-of select = "@YCoordinate - ancestor::xpdl:NodeGraphicsInfo/@Height div 2"/>
</xsl:attribute>
<xsl:apply-templates/>
</xsl:copy>
</xsl:template>

B.3.10 アクティビティの高さと幅の変更

ツールの中には、XPDLファイルにアクティビティの高さと幅が提供されていないものがあります。ただし、XPDLファイルをOracle BPMにインポートするには、アクティビティの座標とディメンションが必要です。したがって、アクティビティおよびレーンの高さと幅を設定するテンプレートをXSLスタイルシートに追加してください。XPDLファイルにアクティビティの高さと幅が含まれていない場合は、いくつかのデフォルト・ディメンションを設定します。たとえば、タスクと縮小サブプロセスには幅が80で高さが40、イベントとゲートウェイには幅が30で高さが30を設定します。

<BlockActivity>拡張要素にも別の<BlockActivity>拡張要素が含まれている場合があるため、<BlockActivity>および<Subflow>拡張要素に高さと幅を設定することが特に難しいことがあります。ここで、最も内側のBlockActivityの高さと幅を最初に計算してから、親BlockActivityの計算を行う必要があります。この再帰は、最上位の<BlockActivity>までバブル・アップする必要があります。この再帰プロセスをXSLでコーディングすることは難しい場合があります。このため、Oracle BPMは拡張サブプロセスの高さと幅を計算する機能を備えています。この機能を使用するには、XSLテンプレートを使用して、<BlockActivities>の高さと幅をそれぞれ0と0に設定してください。

例B-12は、高さと幅が定義されていないイベント要素です。

例B-12 高さと幅が定義されていないイベント要素

<xpdl:Activity Name="Begin" Id="Begin">
<xpdl:Event>
<xpdl:StartEvent Trigger="None"/>
</xpdl:Event>
……………………………..
<xpdl:NodeGraphicsInfos>
<xpdl:NodeGraphicsInfo LaneId="Accounting" IsVisible="true">
<xpdl:Coordinates XCoordinate="36.0" YCoordinate="110.0"/>
</xpdl:NodeGraphicsInfo>
</xpdl:NodeGraphicsInfos>
</xpdl:Activity>

例B-13は、アクティビティの高さと幅を設定するのに使用するスタイルシートのサンプル・テンプレートを示しています。このテンプレートは、XPDL文書でアクティビティの高さと幅が指定されていない場合に使用できます。この例では、タスク要素と縮小BlockActivityにディメンション80(幅) x 40(高さ)、ルートとゲートウェイにディメンション30 x 30、拡張BlockActivityにディメンション0 x 0が設定され、Oracle BPMはこれらのBlockActivity拡張要素のディメンションを計算できるようになります。このテンプレートはBPM Studio XPDLファイルに役立ちます。

例B-13 アクティビティの高さと幅の設定

<xsl:template match = "xpdl:Activity/xpdl:NodeGraphicsInfos/xpdl:NodeGraphicsInfo">
<xsl:variable name = "activityType">
<xsl:choose>
<xsl:when test = "ancestor::xpdl:Activity/xpdl:Implementation/xpdl:SubFlow">
<xsl:text>SubFlow</xsl:text>
</xsl:when>
<xsl:when test = "ancestor::xpdl:Activity/xpdl:Implementation">
<xsl:text>Task</xsl:text>
</xsl:when>
<xsl:when test = "ancestor::xpdl:Activity/xpdl:Event">
<xsl:text>Event</xsl:text>
</xsl:when>
<xsl:when test = "ancestor::xpdl:Activity/xpdl:Route">
<xsl:text>Route</xsl:text>
</xsl:when>
<xsl:when test = "ancestor::xpdl:Activity/xpdl:BlockActivity">
<xsl:choose>
<xsl:when test = "ancestor::xpdl:Activity/xpdl:Extensions/albpm:ALBPMExtensions/albpm:FeatureSet/albpm:BooleanFeature[@ name = 'collapsed']/@value != 'true'">
<xsl:text>ExpandedBlockActivity</xsl:text>
</xsl:when>
<xsl:otherwise>
<xsl:text>CollapsedBlockActivity</xsl:text>
</xsl:otherwise>
</xsl:choose>
</xsl:when>
</xsl:choose>
</xsl:variable>

<xsl:copy>
<xsl:copy-of select = "@*"/>
<xsl:attribute name = "Width">
<xsl:choose>
<xsl:when test = "$activityType = 'Task' or $activityType = 'CollapsedBlockActivity' or $activityType = 'SubFlow'">
<xsl:text>80</xsl:text>
</xsl:when>
<xsl:when test = "$activityType = 'Route' or $activityType = 'Event'">
<xsl:text>30</xsl:text>
</xsl:when>
<xsl:when test = "$activityType = 'ExpandedBlockActivity'">
<xsl:text>0</xsl:text>
</xsl:when>
</xsl:choose>
</xsl:attribute>
<xsl:attribute name = "Height">
<xsl:choose>
<xsl:when test = "$activityType = 'Task' or $activityType = 'CollapsedBlockActivity' or $activityType = 'SubFlow'">
<xsl:text>40</xsl:text>
</xsl:when>
<xsl:when test = "$activityType = 'Route' or $activityType = 'Event'">
<xsl:text>30</xsl:text>
</xsl:when>
<xsl:when test = "$activityType = 'ExpandedBlockActivity'">
<xsl:text>0</xsl:text>
</xsl:when>
</xsl:choose>
</xsl:attribute>
<xsl:apply-templates/>
</xsl:copy>
</xsl:template>

B.3.11 レーンの高さと幅の変更

多くのXPDL文書では、レーンのディメンション(高さや幅)は親プールの方向に応じて指定されます。たとえば、親プールの方向が水平の場合、XPDL文書にレーンの幅は見つかりますが高さは見つからない可能性があります。前述したように、Oracle BPMがグラフィカル要素のサイズを決定するには、レーンおよびアクティビティの高さと幅が必要です。XPDL文書にレーンの高さや幅が見つからない場合は、これらの属性が含まれているすべての要素を保持するのに十分な値に設定してください。

レーンの高さは指定されているが幅が指定されていない場合には、単純な論理を使用してレーンの幅を設定できます。X座標にアクティビティの幅を足した最大の合計を求め、この値をすべてのレーンの幅に設定します。レーンの幅がすべての要素を保持できる場合は、X座標と幅の最大合計を持つアクティビティの右境界線から引かれているレーン右境界線が見られることがあります。また、レーンをその他のオブジェクトのコンテナとして表示できるよう拡張するために、小さいパディング値を最大合計に追加することもできます。

上述の論理は、すべてのアクティビティに高さと幅の値が含まれている場合に有効です。ただし、アクティビティに高さと幅の値が含まれていない場合もあります。そのような場合、レーンの高さや幅を計算する前に各アクティビティの高さと幅を計算する必要があるため、上述の論理でXSLTを使用してレーンの幅を計算することは困難です。この問題を解決するために、Oracle BPMはレーンの高さや幅を設定する機能を備えています。

この機能を使用するには、XSLTを使用して欠落しているレーンのディメンションを0に設定してください。この機能では、レーンに1つのディメンションが指定されていると想定しています。

B.3.12 プールの高さと幅の変更

プールに高さと幅が指定されている場合、Oracle BPMはそれらのディメンションを使用します。これらの値が指定されていない場合は、Oracle BPMは計算を試みます。ディメンションが1つしか指定されていない場合でも、Oracle BPMは両方のディメンションを計算します。この機能を回避するには、ソースXPDL文書にプールの両方のディメンションが含まれている必要があります。

B.3.13 アクティビティの位置

XPDLファイルで座標とディメンションが指定されている場合、Oracle BPMはそれらの値を操作せずに使用します。レーンのディメンションやサブプロセスのディメンションなど、一部のディメンションが欠落している場合は、Oracle BPMはそうしたディメンションの計算を試みます。ディメンションの計算プロセスで、Oracle BPMはモデルをより良くするためにディメンションにいくつかのパディングを追加しますが、アクティビティの周りにスペースがある場合には、このモデルは問題ありません。そうでない場合は、インポートされたモデルに、ほかのアクティビティまたはレーンの上部に引かれているアクティビティまたはレーンの境界線が含まれていることがあります。この問題を回避するには、アクティビティの周りにスペースを持たせるように配置してください。

複数のレーンまたはアクティビティに重複するIDを含むモデルをOracle BPMにインポートする際に、問題が発生することがあります。Oracle BPMは同じ名前で複数のレーンまたはアクティビティを作成することはできません。ソースから1つのみのレーンまたはアクティビティが作成され、その結果は元のモデルに正しく反映されません。

この問題を回避するには、一意のIDでモデル要素を作成してください。

B.3.14 欠落要素を含める

XPDLソース文書に、Oracle BPMが適切に変換を行うのに必要な要素や属性が欠落している場合には、XSLTを使用してそうした要素や属性を追加します。

たとえば、XPDLに8つのタイプのタスクがあります。Oracle BPMがこれらのタスク・タイプを認識するためには、<Task>要素に、タスクがサービス・タスクであるか受信タスクであるかなどを指定する別の子要素が含まれている必要があります。これらの子要素が<Task>ソース要素に見つからない場合は、その<Task>要素はデフォルトの<Task>要素に変換されます。

たとえば、次に示す<Task>要素は<TaskUser>子要素を含んでいないユーザー・タスクです。したがって、Oracle BPMによってデフォルトのタスク要素とみなされます。

<Implementation>
<Task />
</Implementation>

アクティビティがOracle BPMにユーザー・タスクとして識別されるには、次のように、<TaskUser>要素をタスク要素の下に追加する必要があります。

<Implementation>
<Task>
<TaskUser>
....
</TaskUser>
</Task>
</Implementation>

前述のように、多くの属性がツール固有のネームスペースの下に指定されている可能性があります。タスク・タイプがXPDLネームスペースの下に見つからない場合は、ツール固有のネームスペースで検索して、それらの要素をタスク要素の下に含めるためのテンプレートをスタイルシートに追加してください。

例B-14では、自動タスク要素が検出された場合は常に、<TaskService>要素を<Task>要素の子として含める方法について説明しています。このテンプレートはOracle BPM Studioで生成されたXPDLソース・ファイルに役立ちます。

例B-14 TaskService要素をタスク要素の子として含める

<xsl:template match="xpdl:Activity/xpdl:Implementation/xpdl:Task">
<xsl:copy>
<xsl:copy-of select="@*"/>
<xsl:if test="ancestor::xpdl:Activity/xpdl:Extensions/albpm:ALBPMExtensions/albpm:FeatureSet/albpm:StringFeature[@name='type']/@value='AUTOMATIC'
and not(child::xpdl:TaskService)">
<xpdl:TaskService/>
</xsl:if>
<xsl:apply-templates/>
</xsl:copy>
</xsl:template>

B.3.15 アクティビティの正確性の確認

アクティビティをソース・ツールからXPDLとしてエクスポートする場合に、ソースXPDLにアクティビティを表す適切な要素が含まれていることを確認してください。たとえば、イベント・アクティビティが含まれているモデルをXPDLにエクスポートする際に、ツールがそのイベント・アクティビティに<Route>要素や<Task>要素を作成した場合、この要素を正確にイベント・アクティビティを表す要素で置き換える必要があります。

次に示すXPDL要素について考えます。アクティビティは開始イベントで、<Activity>要素の下にイベント要素ではなく<Route>要素が置かれています。このモデルをOracle BPMにインポートすると、このアクティビティはイベント・アクティビティとしてではなく、ルート・アクティビティに変換されます。

例B-15 アクティビティの正確性の確認

<xpdl:Activity Name="Group$Begin" Id="Group$Begin">
<xpdl:Route GatewayType="XOR" MarkerVisible="true"/>
…………………..
</xpdl:Activitiy>
The correct notation for the above element should be:
<xpdl:Activity Name="Group$Begin" Id="Group$Begin">
<xpdl:Event>
<xpdl:StartEvent Trigger="None"/>
…………………..
</xpdl:Event>
……………………….
</xpdl:Activity>

ソースXPDLでこの問題が見つかった場合は、不適切な要素を適切な要素で置き換えるためのテンプレートをスタイルシートに追加してください。

Copyright © 2001, 2012, Oracle and/or its affiliates. All rights reserved.