ビジネスプロセスの使用ガイド
Red Hat Customer Content Services
brms-docs@redhat.com
概要
前書き
ビジネスルールおよびプロセス開発者は、Red Hat Process Automation Manager の Business Central を使用し、固有のビジネス要件に合ったビジネスプロセスを設計できます。Red Hat Process Automation Manager は、参考用として、Business Central でビジネスアセットサンプルなど、サンプルプロジェクトを提供しています。本書では、Business Central やプロセスデザイナーに慣れていただけるように、新しい住宅ローンプロセスプロジェクト、データオブジェクト、ビジネスプロセスを作成する方法を説明しています。
次に Business Central に含まれている Mortgage_Process のサンプルプロジェクトを参照して、サンプルプロジェクトのビジネスルール、デシジョンテーブル、フォームをレビューします。Mortgage_Process のサンプルプロジェクトをビルドしてデプロイし、定義したプロジェクトの機能を実行します。
前提条件
- Red Hat JBoss Enterprise Application Platform 7.3 がインストールされている。詳細情報は『Red Hat JBoss EAP 7.3 インストールガイド』を参照してください。
- Red Hat Process Automation Manager がインストールされ、KIE Server で設定されている。詳細は『Red Hat JBoss EAP 7.3 への Red Hat Process Automation Manager のインストールおよび設定』を参照してください。
-
Red Hat Process Automation Manager が稼働し、
developer
ロールで Business Central にログインできる。詳細は、『Red Hat Process Automation Manager インストールの計画』を参照してください。
第1章 概要
Business Central では、ビジネスプロセスの自動化ができます。ビジネスプロセスは、一連の手順の実行すべき順番を説明し、事前定義済みのノードや接続で構成される図のことです。各ノードは、プロセス内の手順 1 つを表し、接続はノード間の移動の方法を指定します。
たとえば、住宅ローンサービスを提供する銀行で、住宅ローン部門が、Business Central を使用して、住宅ローンの全ビジネスプロセスを作成していきます。
顧客がローンを組んで新しい不動産物件を購入する場合に以下の手順が発生します。
- 顧客は、住宅ローンの申請記入を補助してくれる、銀行内のブローカーに問い合わせます。
- ブローカーは、顧客の給料、社会保障番号、不動産の販売価格、必要なローン金額など、不動産と顧客に関する情報を集めます。
- 次に、ブローカーは顧客の代わりに依頼を提出します。
顧客が申込書を提出するたびに、新しいプロセスインスタンスが作成されます。これにより、各要求の評価品質の一貫性が保たれ、要求ごとの状態を完全に視覚化し、プロセスを効率的かつ効果的に進めることができます。
第2章 Business Central のプロジェクトおよびビジネスアセットの例
Business Central には、プロジェクトサンプルがビジネスアセット例と合わせて同梱されており、ルールやプロセス、他のアセットを、独自の Red Hat Process Automation Manager プロジェクトに作成するときに参考として使用できます。各プロジェクトは、Red Hat Process Automation Manager の意思決定管理やビジネス最適化アセットおよび論理をさまざまな角度から例示するように設計されています。
Red Hat は、Red Hat Process Automation Manager ディストリビューションに含まれるコードサンプルのサポートはしていません。
以下のプロジェクト例が、Business Central で利用できます。
- Evaluation_Process: (プロセス自動化) ビジネスプロセスアセットを使用したプロセス評価。実績に基づいて従業員を評価します。
- Mortgage_Process (住宅ローン): (プロセス自動化) ビジネスプロセスとデシジョンアセットを使用した住宅ローン審査プロセス。申し込み者のデータと資格を基にローンの申し込み資格を判定します。
- IT_Orders: (プロセス自動化およびケース管理) ビジネスプロセスとケース管理アセットを使用したケース注文。ニーズと承認に基づいて IT ハードウェアを注文します。
- Traffic_Violation: (DMN でのデシジョン管理) Decision Model and Notation (DMN) モデルを使用した交通違反のデシジョンサービス。交通違反をもとに運転手の罰則および免許停止を判断します。
- Mortgages (住宅ローン): (ルールでのデシジョン管理) ルールベースのデシジョンアセットを使用した住宅ローン審査プロセス。申し込み者のデータと資格を基にローンの申し込み資格を判定します。
- Employee_Rostering (従業員勤務表) : (ビジネス最適化) デシジョンおよびソルバーアセットを使用した従業員勤務表の最適化。スキルに基づいて従業員をシフトに割り当てます。
- OptaCloud: (ビジネス最適化) デシジョンおよびソルバーアセットを使用したリソース割り当ての最適化。リソースが制限されるなかでプロセスをコンピューターに割り当てます。
- Course_Scheduling: (ビジネス最適化) コースのスケジュールとカリキュラム決定プロセス。講師を教室に割り当て、コースの競合や教室の収容能力といった要素を基にして学生のカリキュラムを決定します。
- Dinner_Party: (ビジネス最適化) ガイド付きデシジョンテーブルを使用したゲストの座席割り当ての最適化。各ゲストの職種、政治的信条、既知の関係を基にしてゲストに座席を割り当てます。
2.1. Business Central のプロジェクトおよびビジネスアセット例へのアクセス
Business Central のプロジェクト例を使用すると、独自の Red Hat Process Automation Manager プロジェクトにルールや他のアセットを作成するときに、参考としてビジネスアセットを確認できます。
前提条件
- Business Central がインストールされている。インストールオプションは『Red Hat Process Automation Manager インストールの計画』を参照してください。
手順
- Business Central で、Menu → Design → Projects に移動します。既存のプロジェクトがある場合には、MySpace のデフォルトのスペースをクリックして、Add Project プルダウンメニューから Try Samples を選択して、サンプルにアクセスできます。既存のプロジェクトがない場合には、Try samples をクリックします。
- 各サンプルプロジェクトの説明を読んで、どのプロジェクトが最適か確認します。各プロジェクトは、Red Hat Process Automation Manager のプロセス自動化、意思決定管理やビジネス最適化アセットおよび論理を異なる方法で説明するように設計されています。
- サンプルプロジェクトを選択し、Ok をクリックして自分のスペースにプロジェクトを追加します。
- 自分のスペースの Projects ページで、サンプルプロジェクトの 1 つを選択して、そのプロジェクトのアセットを表示します。
各アセットを選択して、指定の目標やワークフローを達成するためにプロジェクトがどのように設計されているのかを確認してください。サンプルのプロジェクトには、アセットが複数ページ含まれているものもあります。右上隅の左または右向き矢印をクリックして、全アセット一覧を表示します。
図2.1 アセットページの選択
プロジェクトの Assets ページの右上隅にある Build をクリックしてサンプルプロジェクトをビルドするか、Deploy をクリックしてプロジェクトをビルドしてから、KIE Server にデプロイします。
注記Build & Install オプションを選択してプロジェクトをビルドし、KJAR ファイルを KIE Server にデプロイせずに設定済みの Maven リポジトリーに公開することもできます。開発環境では、Deploy をクリックすると、ビルドされた KJAR ファイルを KIE Server に、(該当する場合) 実行中のインスタンスを停止せずにデプロイできます。または Redeploy をクリックして、ビルドされた KJAR ファイルをデプロイしてすべてのインスタンスを置き換えることもできます。ビルドされた KJAR ファイルを次回にデプロイまたは再デプロイすると、以前のデプロイメントユニット (KIE コンテナー) が同じターゲット KIE Server で自動的に更新されます。実稼働環境では Redeploy オプションは無効になっており、Deploy をクリックして、ビルドされた KJAR ファイルを KIE Server 上の新規デプロイメントユニット (KIE コンテナー) にデプロイすることのみが可能です。
KIE Server の環境モードを設定するには、
org.kie.server.mode
システムプロパティーをorg.kie.server.mode=development
またはorg.kie.server.mode=production
に設定します。Business Central でそれぞれのプロジェクトのデプロイメント動作を設定するには、プロジェクトの Settings → General Settings → Version に移動し、Development Mode オプションを選択して、Save をクリックします。デフォルトでは、KIE Server および Business Central のすべての新規プロジェクトは開発モードになっています。Development Mode をオンにしたプロジェクトをデプロイしたり、実稼働モードになっている KIE Server に手動でSNAPSHOT
バージョンの接尾辞を追加したプロジェクトをデプロイしたりすることはできません。プロジェクトのデプロイメントに関する詳細を確認するには、画面の上部にあるデプロイメントバナーの View deployment details か、Deploy のドロップダウンメニューをクリックします。このオプションを使用すると、Menu → Deploy → Execution Servers ページに移動します。
第3章 mortgage-process プロジェクトの作成
プロジェクトは、データオブジェクト、ビジネスプロセス、ガイド付きルール、デシジョンテーブル、フォームなどのアセットのコンテナーです。作成するプロジェクトは、Business Central にすでに存在する Mortgage_Process サンプルプロジェクトに似ています。
手順
Business Central で、Menu → Design → Projects に移動します。
Red Hat Process Automation Manager は以下のイメージのように MySpace と呼ばれるデフォルトスペースを提供します。このデフォルトスペースを使用してサンプルプロジェクトを作成およびテストできます。
図3.1 デフォルトのスペース
- Add Project をクリックします。
-
Name フィールドに
mortgage-process
と入力します。 Configure Advanced Options をクリックして GAV フィールドを以下の値に変更します。
-
Group ID:
com.myspace
-
Artifact ID:
mortgage-process
-
Version:
1.0.0
-
Group ID:
- 追加 をクリックします。
プロジェクトの Assets ビューを開きます。
第4章 ユーザーの作成
必要な数だけ Business Central ユーザーを作成できます。ユーザーの権限および設定は、ユーザーに割り当てたロールと、ユーザーが属するグループで制御できます。この例では、新しいユーザーを 2 つ作成する必要があります。銀行の住宅ローンマネージャーおよび承認者の Katy
および、住宅ローンを依頼するブローカーの Bill
です。ユーザー作成に関する情報は、『Red Hat JBoss EAP 7.3 への Red Hat Process Automation Manager のインストールおよび設定 』の「ユーザーの作成」の章を参照してください。
Business Central では、グループおよびロールを使用してユーザーをまとめて、パーミッションを制御できます。任意数のグループを作成できますが、グループおよびロールには最低でもユーザーを 1 つ所属させる必要があります。
この例では、以下のグループまたはロールの 1 つまたは複数に、タスクの作業を行うユーザーを割り当てる必要があります。
- approver グループ: Qualify タスクの場合
- broker グループ: Correct Data タスクおよび Increase Down Payment タスクの場合
- manager ロール: Final Approval タスクの場合
手順
- 右上隅のギアアイコン をクリックして、Users をクリックします。
-
, enter
Katy
をクリックして、Next、Create の順にクリックします。 -
Yes をクリックしてパスワードを設定し、両フィールドに
Katy
と入力してから Change をクリックします。 -
Bill
と入力して、Next をクリックし、Create をクリックします。 -
Yes をクリックしてパスワードを設定し、両フィールドに
Bill
と入力してから Change をクリックします。 -
Groups タブをクリックして、
をクリックし、
approver
と入力してから Next をクリックします。 -
ユーザー一覧から
Katy
を選択して、Add selected users をクリックします。 -
をクリックし、
broker
と入力して Next をクリックします。 -
ユーザー一覧から
Bill
を選択して、Add selected users をクリックします。 -
Users をクリックして
Katy
を選択し、Edit → Roles → Add roles の順にクリックします。 -
manager
を選択して Add to selected roles、Save の順にクリックします。 - Groups タブをクリックし、Add to groups をクリックします。
-
approver
とkie-server
を選択して、Add to selected groups をクリックします。 - 保存 をクリックします。
-
ユーザー一覧から
Bill
を選択し、Edit → Roles → Add roles の順にクリックします。 -
user
を選択して Add to selected roles をクリックします。 -
Groups タブをクリックし、
kie-server
を選択して Add to selected groups をクリックします。 - 保存 をクリックします。
第5章 mortgage-process データオブジェクトの作成
データオブジェクトは、作成するルールアセットの構成要素です。データオブジェクトは、プロジェクトで指定したパッケージに Java クラスとして実装されているカスタムのデータ型です。このカスタムのデータ型は、アセットとデシジョンサービスがどのデータに基づいているかを指定します。
住宅ローンプロセスプロジェクトでは、以下のデータオブジェクトを使用します。
-
Applicant
-
Property
-
ValidationErrorDO
-
Application
5.1. 申請者データオブジェクトの作成
以下の手順に従い、申請者の情報を含む Applicant データオブジェクトを作成します。これは、本チュートリアルでのローン申請に必要な基本情報です。
手順
- Business Central で MySpace のデフォルトスペースをクリックします。
- Menu → Design → Projects の順にクリックし、mortgage-process をクリックします。
- Add Asset をクリックして、Data Object を選択します。
-
Create new Data Object ウィンドウの Data Object フィールドに
Applicant
と入力します。 -
Package プルダウンメニューから
com.myspace.mortgage_process
を選択し、Ok をクリックします。 -
'Applicant'- general properties セクションの Label フィールドに
Applicant
と入力します。 +add field をクリックして、以下の Applicant データオブジェクトの値を入力します。各項目を追加後に Create and continue をクリックします。最後の項目を追加したら、Create をクリックします。
図5.1 申請者データオブジェクトの表示
- 保存 をクリックします。
5.2. プロパティーデータプロジェクトの作成
以下の手順に従い、不動産の築年数や価格など、不動産の詳細情報が含まれる、事前定義済みの Property データオブジェクトを作成します。
手順
- Business Central で MySpace のデフォルトスペースをクリックします。
- Menu → Design → Projects の順にクリックし、mortgage-process をクリックします。
- Add Asset をクリックして、Data Object を選択します。
-
Create new Data Object ウィンドウの Data Object フィールドに
Property
と入力します。 -
Package プルダウンメニューから
com.myspace.mortgage_process
を選択し、Ok をクリックします。 -
'Properties'- general properties セクションの Label フィールドに
Property
と入力します。 +add field をクリックして、以下の Property データオブジェクトの値を入力します。各項目を追加後に Create and continue をクリックします。最後の項目を追加したら、Create をクリックします。
図5.2 プロパティーデータオブジェクトフィールドの値
- 保存 をクリックします。
5.3. ValidationErrorDO データオブジェクトの作成
以下の手順に従い、申請エラーの原因を指定する ValidationErrorDO データプロジェクトを作成します。
手順
- Business Central で MySpace のデフォルトスペースをクリックします。
- Menu → Design → Projects の順にクリックし、mortgage-process をクリックします。
- Add Asset をクリックして、Data Object を選択します。
-
Data Object フィールドに
ValidationErrorDO
を入力し、OK をクリックします。 -
Package プルダウンメニューから
com.myspace.mortgage_process
を選択し、Ok をクリックします。 -
'ValidationErrorDO'- general properties セクションの Label フィールドに
ValidationErrorDO
と入力します。 +add field をクリックして、以下の ValidationErrorDO データオブジェクトの値を入力します。各項目を追加後に Create and continue をクリックします。最後の項目を追加したら、Create をクリックします。
図5.3 ValidationErrorDO データオブジェクトフィールドの値
- 保存 をクリックします。
5.4. 申請データオブジェクトの作成
以下の手順に従い、頭金、住宅ローンの額など、住宅ローンの詳細情報が含めて Application データオブジェクトを作成します。
手順
- Business Central で MySpace のデフォルトスペースをクリックします。
- Menu → Design → Projects の順にクリックし、mortgage-process をクリックします。
- Add Asset をクリックして、Data Object を選択します。
-
Create new Data Object ウィンドウの Data Object フィールドに
Applicantion
と入力します。 -
Package プルダウンメニューから
com.myspace.mortgage_process
を選択し、Ok をクリックします。 -
'Applicantion'- general properties セクションの Label フィールドに
Applicantion
と入力します。 +add field をクリックして、以下の Applicantion データオブジェクトの値を入力します。各項目を追加後に Create and continue をクリックします。最後の項目を追加したら、Create をクリックします。
図5.4 申請データオブジェクトフィールドの値
- 保存 をクリックします。
第6章 Business Central のビジネスプロセス
ビジネスプロセスは、フローチャートを使用して一連の手順を順番に説明する図です。ビジネスプロセスは、接続を使用して相互にリンクしているノードの集まりで構成されています。各ノードはプロセス全体のうちの 1 手順を表し、接続はノードが次のノードに移行する方法を指定します。
Mortgage_Process サンプルには、以下の事前定義済みの MortgageApprovalProcess ビジネスプロセスが含まれます。
6.1. ビジネスプロセスの作成
以下の手順では、MortgageApprovalProcess ビジネスプロセスを構成するタスク、接続、ゲートウェイの作成方法を詳しく説明します。住宅ローン検証のビジネスプロセスでは、新しい申請に必要なデータが含まれるかどうかを判断します。指定したデータ要件をすべて満たすと、申請のプロセスから住宅ローン計算のビジネスプロセスに進みます。
手順
- Business Central で、Menu → Design → Projects の順にクリックし、mortgage-process をクリックします。
- Add Asset → Business Process の順にクリックします。
以下の値を入力します。
-
Business Process:
MortgageApprovalProcess
Package:
com.myspace.mortgage_process
を選択します。Package は、既存のプロジェクト内で、アセットの作成先となる場所を指定します。この例では、
com/myspace/mortgage_process
に作成します。
-
Business Process:
- OK をクリックすると、ダイアグラムエディターが開きます。
- 画面の右上隅の Properties アイコンをクリックします。
- スクロールダウンして Process Data を展開し、Process Variables セクションの をクリックします。
以下の値を入力します。
-
名前:
application
. -
データ型:
Application [com.myspace.mortgage_process]
-
名前:
6.1.1. 外向き接続と排他ゲートウェイの作成
本セクションでは、外向き接続、排他ゲートウェイ、ビジネスルールタスクの作成方法を説明します。排他ゲートウェイを使用して、意思決定を行い、利用可能なデータをもとにイベントに対応します。
Red Hat Process Automation Manager には、ビジネスプロセスの作成を簡略化する、事前定義済みのノードタイプが各種含まれます。事前定義済みのノードパネルは、ダイアグラムエディターの左側に置かれます。
手順
- 開始イベントノードをキャンバスにドラッグします。
開始イベントから排他ゲートウェイへの外向き接続を作成します。
キャンバスで開始イベントノードをクリックし、Create Parallel アイコンをクリックします。
Parallel の アイコンにマウスをかざし、Convert into Exclusive アイコンをクリックします。
排他ゲートウェイからビジネスルールタスクへの外向き接続を作成します。
キャンバスで排他ゲートウェイをクリックし、Create Parallel アイコンをクリックします。
タスクの アイコンにマウスをかざし、Convert into Business Rule アイコンをクリックします。
ビジネスルールタスクを設定します。
- ビジネスルールタスクをクリックします。
- Properties パネルが表示されない場合には、右上隅の Properties アイコンをクリックします。
-
Properties パネルで、Name フィールドに
Validation
を入力します。 - Implementation/Execution を展開し、Rule Flow Group メニューから New を選択して、validation と入力します。
On Exit Action フィールドに、以下の Java 式を入力します。
System.out.println(application.getProperty());
- Data Assignments を展開し、Assignments の横にある をクリックします。
Validation Data I/O ウィンドウで、Add をクリックして以下の割り当てを作成します。
データ入力と割り当て
- Name: application
- Data Type: Application [com.myspace.mortgage_app]
- Source: application
データ出力と割り当て
- Name: application
- Data Type: Application [com.myspace.mortgage_app]
Target: application
図6.1 Validation Data I/O 割り当て
- キャンバスの上にある Save をクリックして、変更を確定します。
6.1.2. 検証データの定義
このセクションは、申請データが正しいかどうか、またはエラーや情報の不足があるどうかを判断する検証データを定義する方法を説明します。
手順
Validation タスクから排他ゲートウェイに外向き接続を作成します。
- Validation タスクをクリックし、Create Parallel アイコンをクリックします。
Parallel の アイコンにマウスをかざし、Convert into Exclusive アイコンをクリックします。
排他ゲートウェイから、新しいビジネスルールタスクへの外向き接続を作成します。
- 排他ゲートウェイをクリックし、Create Parallel アイコンをクリックします。
- 以下のように、新しいゲートウェイを排他ゲートウェイの下にドラッグします。
タスクの アイコンにマウスをかざし、Convert into Business Rule アイコンをクリックします。
- Properties パネルが表示されない場合には、右上隅の Properties アイコンをクリックします。
-
Properties パネルで、Name フィールドに
Retract Validation
と入力します。 -
Implementation/Execution を展開し、Rule Flow Group メニューから New を選択して、
error
と入力します。
排他ゲートウェイとビジネスルールタスク間の接続を設定します。
接続をクリックします。
- Properties パネルが表示されない場合には、右上隅の Properties アイコンをクリックします。
-
Properties パネルで、Name フィールドに
Invalid
を入力します。 - Implementation/Execution を展開し、Condition Expression セクションの Expression を選択します。
リストから、drools を選択して、Condition Expression フィールドに
ValidationErrorDO()
を入力します。
Retract Validation タスクから新規ユーザータスクに外向き接続を作成します。
- Retract Validation タスクをクリックし、Create Task アイコンをクリックします。
- 以下のように、新しいタスクを Validation タスクの下にドラッグします。
タスクの アイコンにマウスをかざし、Convert into User アイコンをクリックします。
-
新規ユーザータスクをクリックし、Properties パネルの Name フィールドに
Correct Data
と入力します。 -
Implementation/Execution を展開し、Task Name フィールドに
CorrectData
と入力します。 -
Groups メニューから New を選択して
broker
と入力します。 - Assignments の横にある をクリックします。
Correct Data Data I/O ウィンドウで、Add をクリックして以下の割り当てを作成します。
- Name: application
- Data Type: Application [com.myspace.mortgage_app]
Source: application
- データ出力と割り当て
- Name: application
- Data Type: Application [com.myspace.mortgage_app]
Target: application
図6.2 Correct Data I/O 割り当て
- キャンバスの上にある Save をクリックして、変更を確定します。
Correct Data ユーザータスクをクリックしてから、Create sequence Flow アイコンをクリックし、最初の排他ゲートウェイにドラッグし直します。ワークフローは、以下の図のようになっているはずです。
6.1.3. 住宅ローンの計算
住宅ローンの計算のビジネスプロセスは、申請者の住宅ローンの借入限度を決定します。
手順
2 つ目の排他ゲートウェイに戻り、新規ビジネスルールタスクへの外向き接続を作成します。
作成した接続をクリックし、Properties パネルの Name フィールドに
Valid
と入力します。- Implementation/Execution を展開し、Condition Expression セクションの Expression を選択します。
-
リストから、drools を選択して、Condition Expression フィールドに
not ValidationErrorDO()
を入力します。
新しいビジネスルールタスクをクリックし、Properties パネルの Name フィールドに
Mortgage Calculation
と入力します。-
Implementation/Execution を展開し、Rule Flow Group メニューから New を選択して、
mortgagecalculation
と入力します。
-
Implementation/Execution を展開し、Rule Flow Group メニューから New を選択して、
- Data Assignments を展開し、Assignments の横にある をクリックします。
Mortgage Calculation Data I/O ウィンドウで Add をクリックして以下の割当を作成し、Save をクリックします。
図6.3 Mortgage Calculation Data I/O 割り当て
キャンバスの空白のスペースをクリックし、スクロールダウンし、Process Data を展開し、Process Variables の横にある をクリックします。以下の値を入力します。
-
Name:
inlimit
-
Data Type:
Boolean
-
Name:
- Mortgage Calculation タスクから新しいユーザータスクへの外向き接続を作成します。
ユーザータスクをクリックし、Name フィールドに
Qualify
と入力します。-
Implementation/Execution を展開し、Task Name フィールドに
Qualify
と入力します。 -
Groups メニューから New を選択して
approver
と入力します。 Assignments の横にある をクリックします。Qualify Data I/O ウィンドウで、Add をクリックして、以下の割り当てを作成します。
図6.4 Qualify Data I/O 割り当て
- キャンバスの上にある Save をクリックして、変更を確定します。
- Qualify ユーザータスク、Create parallel メニューアイコンの順にクリックし、排他ゲートウェイに変換します。
- Qualify ユーザータスクの下に、新しい排他ゲートウェイをドラッグします。
- 排他ゲートウェイからの外向き接続を作成し、新規ユーザータスクに連結します。
-
接続をクリックして、Properties パネルの Name フィールドに
in Limit
と入力します。 - Implementation/Execution を展開し、Condition Expression セクションの Expression を選択します。
Process Variable ドロップダウンメニューから inlimit を選択し、Condition ドロップダウンメニューから Is true を選択します。
-
ユーザータスクをクリックし、Name フィールドに
Final Approval
と入力します。 -
Implementation/Execution を展開し、Task Name フィールドに
FinalApproval
と入力します。 -
Groups メニューから New を選択して
manager
と入力します。 Assignments の横にある をクリックします。Final Approval Data I/O ウィンドウで、Add をクリックして以下の割り当てを作成します。
図6.5 Final Approval Data I/O 割り当て
- キャンバスの上にある Save をクリックして、変更を確定します。
6.1.4. 頭金の増額
頭金の増額ビジネスプロセスは、頭金を増額することで、申請者がローンを組めるかどうかを確認します。最終結果は、申請者が頭金を増額できるかどうかに基づいて、ローンが最終的に承認または却下されます。
手順
- Final Approval ユーザータスクをクリックして、ユーザータスクのクイックメニューから Create End を選択します。
Final Approval ユーザータスクの下に、終了イベントを移動します。
Final Approval ユーザータスクに連結する排他ゲートウェイに戻ります。2 つ目の外向き接続を作成し、新しいユーザータスクに連結します。
-
接続をクリックして、Properties パネルの Name フィールドに
Not in Limit
と入力します。 - Implementation/Execution を展開し、Condition Expression セクションの Expression を選択します。
- Process Variable ドロップダウンメニューから inlimit を選択し、Condition ドロップダウンメニューから Is false を選択します。
キャンバスの空白のスペースをクリックし、スクロールダウンし、Process Data を展開し、Process Variables の横にある をクリックします。以下の値を入力します。
-
Name:
incdownpayment
Data Type:
Boolean
-
Name:
-
新規ユーザータスクをクリックして、Properties パネルで Name に
Increase Down Payment
を入力します。 -
Implementation/Execution を展開し、Task Name フィールドに
IncreaseDownPayment
と入力します。 -
Groups メニューから New を選択して
broker
と入力します。 Assignments の横にある をクリックします。Increase Down Payment Data I/O ウィンドウで Add をクリックして、以下の割り当てを作成します。
図6.6 Increase Down Payment Data I/O 割り当て
- キャンバスの上にある Save をクリックして、変更を確定します。
- Increase Down Payment ユーザータスク、Create parallel メニューアイコンの順にクリックし、排他ゲートウェイに変換します。
- Increase Down Payment ユーザータスクの下に新しい排他ゲートウェイをドラッグします。
- 排他ゲートウェイから終了イベントに外向き接続を作成します。
-
接続をクリックして、Properties パネルの Name フィールドに
Down payment not increased
と入力します。 - Implementation/Execution を展開し、Condition Expression セクションの Expression を選択します。
- return !incdownpayment; と入力し、ドロップダウンメニューから java を選択します。
- 排他ゲートウェイからの外向き接続を作成し、ユーザータスクに連結します。
-
接続をクリックして、Properties パネルの Name フィールドに
Down payment increased
と入力します。 - Implementation/Execution を展開し、Condition Expression セクションの Expression を選択します。
- return incdownpayment; と入力し、ドロップダウンメニューから java を選択します。
- キャンバスの上にある Save をクリックして、変更を確定し、ビジネスプロセス全体を保存します。
図6.7 ビジネスプロセスの最終バージョン
第7章 ガイド付きルール
ガイド付きルールは、ルール作成のプロセスを提供する、Business Central の UI ベースのガイド付きルールデザイナーで作成するビジネスルールです。ガイド付きルールデザイナーを使用すると、ルールを定義するデータオブジェクトに基づいて、可能なインプットにフィールドおよびオプションを提供します。定義したガイド付きルールは、その他のすべてのルールアセットとともに DRL (Drools Rule Language) ルールにコンパイルされます。
ガイド付きルールに関連するすべてのデータオブジェクトは、ガイド付きルールと同じプロジェクトパッケージに置く必要があります。同じパッケージに含まれるアセットはデフォルトでインポートされます。必要なデータオブジェクトとガイド付きルールを作成したら、ガイド付きルールデザイナーの Data Objects タブから、必要なデータオブジェクトがすべてリストされていることを検証したり、 新規アイテム を追加してその他の既存データオブジェクトをインポートしたりできます。
7.1. Mortgage_Process ビジネスルールの表示
本章は、Mortgage_Process プロジェクトの事前定義済みのビジネスルールを紹介することが目的です。このチュートリアルでは、ビジネスルールの作成や定義は行わず、Mortgage_Process サンプルプロジェクトの事前定義済みビジネスルールですでに定義されている WHEN および THEN ルールを確認していきます。ガイド付きビジネスルールの作成に関する詳細は、『ガイド付きルールを使用したデシジョンサービスの作成』を参照してください。
7.1.1. ガイド付きルール Validate Down Payment の表示
WHEN と THEN ルールを確認して、条件の設定方法や、プロセスの実行時にどのように使用するかを理解してください。
手順
- Menu → Design → Projects の順にクリックし、Mortgage Process をクリックします。
- アセットリストの右矢印をクリックして、アセットリストの 2 ページ目を表示し、Validate Down Payment のガイド付きルールをクリックします。
ガイド付きルール Validate Down Payment の WHEN と THEN の条件と値を確認します。
7.1.2. ガイド付きルール RetractValidationErr の表示
WHEN と THEN ルールを確認して、条件の設定方法や、プロセスの実行時にどのように使用するかを理解してください。
手順
- Menu → Design → Projects の順にクリックし、Mortgage Process をクリックします。
- アセットリストの右矢印をクリックして、アセットリストの 2 ページ目を表示し、RetractValidationErr のガイド付きルールをクリックします。
ガイド付きルール RetractValidationErr の WHEN と THEN の条件と値を確認します。
第8章 ガイド付きデシジョンテーブル
ガイド付きデシジョンテーブルは、デシジョンテーブルのスプレッドシートに代わる方法で、ウィザードを用いて表形式でビジネスルールを定義します。ガイド付きデシジョンテーブルでは、プロジェクトで指定したデータオブジェクトをもとに、Business Central の UI ベースのウィザードに従ってルール属性、メタデータ、条件、およびアクションを定義します。ガイド付きデシジョンテーブルを作成すると、定義したルールは、その他のすべてのルールアセットとともに Drools Rule Language (DRL) ルールにコンパイルされます。
ガイド付きデシジョンテーブルに関連するすべてのデータオブジェクトは、ガイド付きデシジョンテーブルと同じプロジェクトパッケージに存在する必要があります。同じパッケージのアセットはデフォルトでインポートされます。必要なデータオブジェクトとガイド付きデシジョンテーブルの作成後、ガイド付きデシジョンテーブルデザイナーの Data Objects タブを使用して、必要なデータオブジェクトがすべてリストされていることを検証したり、 新規アイテム を追加してその他の既存データオブジェクトをインポートしたりできます。
8.1. 住宅ローンデシジョンテーブルの表示
本章は、デシジョンテーブル MortgageDecisionTable を紹介することが目的です。このチュートリアルでは、デシジョンテーブルの条件の作成や設定はせず、住宅ローンプロセス サンプルプロジェクトのガイド付きデシジョンテーブルアセット Mortgage_Process に既に定義されている値と条件を確認します。デシジョンテーブル作成に関する情報は、『ガイド付きデシジョンテーブル使用したデシジョンサービスの作成』を参照してください。
前提条件
- ビジネスルールが作成されている。詳細は「Mortgage_Process ビジネスルールの表示」を参照してください。
手順
- Business Central で、Menu → Design → Projects の順にクリックし、Mortgage_Process をクリックします。
スクロールダウンして、ガイド付きデシジョンテーブルアセット MortgageDecisionTable をクリックします。
第9章 Business Central のフォーム
フォームは、HTML として定義されたページのレイアウト定義であり、プロセスおよびタスクのインスタンス化の間にユーザーにダイアログウィンドウとして表示されます。タスクフォームはプロセスとタスクインスタンスの両方の実行のためにユーザーからデータを取得しますが、プロセスフォームはプロセス変数から入力と出力を受け取ります。
入力は、Data Input Assignment を使用してタスクにマッピングされ、タスク内で使用できます。タスクが完了すると、データは Data Output Assignment としてマッピングされ、データを親プロセスインスタンスに提供します。
9.1. Mortgage_Process フォームの表示
本章は、Mortgage_Process サンプルプロジェクトの事前定義済みのフォームを紹介することが目的です。このフォームは、住宅ローン申請のビジネスプロセス向けにユーザーデータを収集するときに使用します。このチュートリアルでは、Mortgage_Process フォームの作成や変更は行わず、事前定義済みのサンプルフォームを確認していきます。フォームの作成に関する詳細は、『Business Central におけるビジネスプロセスの作成』を参照してください。
手順
- Business Central で、Menu → Design → Projects の順にクリックし、Mortgage_Process をクリックします。
アセットリストの右矢印をクリックして、アセットリストの 2 ページ目を表示し、Applicant フォームを選択します。
図9.1 Applicant サンプルフォーム
- Menu → Design → Projects → Mortgage Process の順にクリックします。
アセットリストから Property フォームを選択します。Property フォームは以下のようになります。
図9.2 Property サンプルフォーム
- Menu → Design → Projects → Mortgage Process の順にクリックします。
アセットリストから Application フォームを選択します。Application フォームは以下のようになります。
図9.3 Application サンプルフォーム
- 右上の X をクリックして、エディターを閉じます。
第10章 MortgageApprovalProcess プロセス申請のデプロイ
本章では、Red Hat Process Automation Manager に Mortgage_Process 申請の新しいインスタンスをビルドしてデプロイする方法を説明します。
前提条件
- KIE Server をデプロイし、Business Central に接続している。
手順
- Business Central で、Menu → Design → Projects の順にクリックし、Mortgage_Process をクリックします。
Deploy をクリックします。
- KIE コンテナー (デプロイメントユニット) がプロジェクト名に含まれていない場合には、デフォルト値でコンテナーが自動的に作成されます。
以前のバージョンのプロジェクトがすでにデプロイされている場合は、プロジェクト設定に移動して、プロジェクトバージョンを変更します。終了したら、変更を保存して Deploy をクリックします。これにより、最新の変更が適用された、同じプロジェクトの新しいバージョンが、古いバージョンとともにデプロイされます。
注記Build & Install オプションを選択してプロジェクトをビルドし、KJAR ファイルを KIE Server にデプロイせずに設定済みの Maven リポジトリーに公開することもできます。開発環境では、Deploy をクリックすると、ビルドされた KJAR ファイルを KIE Server に、(該当する場合) 実行中のインスタンスを停止せずにデプロイできます。または Redeploy をクリックして、ビルドされた KJAR ファイルをデプロイしてすべてのインスタンスを置き換えることもできます。ビルドされた KJAR ファイルを次回にデプロイまたは再デプロイすると、以前のデプロイメントユニット (KIE コンテナー) が同じターゲット KIE Server で自動的に更新されます。実稼働環境では Redeploy オプションは無効になっており、Deploy をクリックして、ビルドされた KJAR ファイルを KIE Server 上の新規デプロイメントユニット (KIE コンテナー) にデプロイすることのみが可能です。
KIE Server の環境モードを設定するには、
org.kie.server.mode
システムプロパティーをorg.kie.server.mode=development
またはorg.kie.server.mode=production
に設定します。Business Central でそれぞれのプロジェクトのデプロイメント動作を設定するには、プロジェクトの Settings → General Settings → Version に移動し、Development Mode オプションを選択します。デフォルトでは、KIE Server および Business Central のすべての新規プロジェクトは開発モードになっています。Development Mode をオンにしたプロジェクトをデプロイしたり、実稼働モードになっている KIE Server に手動でSNAPSHOT
バージョンの接尾辞を追加したプロジェクトをデプロイしたりすることはできません。
- プロジェクトのデプロイメントに関する詳細を確認するには、画面の上部にあるデプロイメントバナーの View deployment details か、Deploy のドロップダウンメニューをクリックします。このオプションを使用すると、Menu → Deploy → Execution Servers ページに移動します。
第11章 MortgageApprovalProcess プロセスアプリケーションの実行
プロジェクトをデプロイしたので、プロジェクトで定義した機能を実行できます。本チュートリアルでは、住宅ローンブローカーとして、住宅ローン申請書にデータを入力します。MortgageApprovalProcess ビジネスプロセスが実行し、定義しておいたデシジョンルールに基づいて、申請者が条件に合った頭金を提示したかどうかを判断します。このビジネスプロセスは、ルールのテストを終了するか、続行するために頭金の増額を依頼します。この申請が、ビジネスルールのテストを通過したら、銀行の承認者が申請書を見直し、ローンを承認または却下します。
前提条件
- KIE Server をデプロイし、Business Central に接続している。
- Mortgage_Process アプリケーションがデプロイされている。
タスクを処理するユーザーが、以下のグループおよびロールのメンバーになっている。
- approver グループ: Qualify タスクの場合
- broker グループ: Correct Data タスクおよび Increase Down Payment タスクの場合
- manager ロール: Final Approval タスクの場合
手順
-
Red Hat Process Automation Manager に
Bill
(broker) としてログインし、Menu → Manage → Process Definitions の順にクリックします。 Actions コラムの 3 つの縦の点をクリックして Start を選択し、Application フォームを表示して、フォームのフィールドに以下の値を入力します。
-
Down Payment:
30000
-
Years of amortization:
10
-
Name:
Ivo
-
Annual Income:
60000
-
SSN:
123456789
-
Age of property:
8
-
Address of property:
Brno
-
Locale:
Rural
-
Property Sale Price:
50000
-
Down Payment:
- Submit をクリックして、新しいプロセスインスタンスを開始します。プロセスインスタンスを開始すると、Instance Details ビューが開きます。
Diagram タブをクリックして、プロセスダイアグラムのプロセスフローを表示します。各タスクを通過した時のプロセスの状態が強調表示されます。
-
Business Central からログアウトし、
Katy
としてログインし直します。 - Menu → Track → Task Inbox の順にクリックすると、Qualify フォームが開きます。
-
Actions コラムの 3 つの縦の点をクリックして、Claim を選択してクリックします。Qualify タスクの Status が
Reserved
に変わりました。 Qualify タスクの行をクリックして開き、タスク情報を確認します。Claim をクリックして、フォームの一番下の Start をクリックします。
申請書が承認/拒否できるようにアクティブになりました。
- 申請を承認するには、Is mortgage application in limit? を選択して Complete をクリックします。
- Task Inbox で、Final Approval 行の任意の場所をクリックし、Final Approval タスクを開きます。
- Final Approval の行にある Actions コラムの 3 つの縦の点ををクリックして、Claim をクリックします。
- Final Approval の行の任意の場所をクリックして、Final Approval タスクを表示します。フォームの一番下にある Start をクリックします。
- アプリケーションで最終承認の準備ができていることを反映するために Inlimit のチェックボックスが選択されている点に着目してください。Complete をクリックします。
Save ボタンおよび Release ボタンは、承認プロセスを中断したり、(フィールド値を待っている場合は) インスタンスを保存したり、別のユーザーが修正するタスクを解除したりするために使用します。
第12章 MortgageApprovalProcess プロセスアプリケーションの監視
以下の章では、システム管理者や知識労働者など、職務が異なる銀行の従業員が、住宅ローンの承認プロセスのインスタンスを追跡するために、監視機能の一部をどのように使用していくかを説明します。
前提条件
- KIE Server をデプロイし、Business Central に接続している。
手順
- Red Hat Process Automation Manager にログインし、Menu → Manage → Process Instances の順にクリックします。
- Manage Process Instances ウィンドウで、State、Errors、Id などのフィルターを設定します。
- State フィルターで Completed を選択し、完了した MortgageApprovalProcess インスタンスをすべて表示します。
- 完了したプロセスインスタンスをクリックします。
以下のいずれかのタブをクリックして、特定のプロセスインスタンスの監視に利用できる情報の種類を確認します。
- Instance Details
- Process Variables
- Documents
- Logs
- Diagram
- Menu → Track → Process Reports の順にクリックします。このビューにはさまざまなチャートが含まれているため、上級のプロセスマネージャーはこのようなチャートを使用して、タスクのレポートを行うために Type、Start Date、Running Time などに基づく全プロセスの概要を確認できます。
12.1. デフォルトおよび詳細フィルターを使用したプロセスインスタンスのフィルタリング
Business Central には、デフォルトおよび高度なフィルターが含まれており、実行中のプロセスインスタンスのフィルタリングや、検索に役立ちます。Advanced Filters オプションを使用してカスタムのフィルターを作成することも可能です。
12.1.1. デフォルトのフィルターを使用したプロセスインスタンスのフィルタリング
State、Errors、Filter By、Name、Start Date および Last update などの属性で、プロセスインスタンスをフィルタリングします。
手順
- Business Central で、Menu → Manage → Process Instances に移動します。
Manage Process Instances ページの左側にあるフィルターアイコンをクリックして、Filters ペインを展開します。
このペインは、以下のプロセス属性を表示し、プロセスインスタンスのフィルタリングに使用できます。
- State: 状態をもとにプロセスインスタンスをフィルタリングします (Active、Aborted、Completed、Pending および Suspended)。
- Errors: エラー別でプロセスインスタンスをフィルタリングします。
Filter By: Id、Initiator、Correlation Key または Description 属性をもとにプロセスインスタンスをフィルタリングします。
- 必要な属性を選択します。
- 下のテキストフィールドに検索クエリを入力します。
- Apply をクリックします。
- Name: プロセス定義名をもとにプロセスインスタンスをフィルタリングします。
- Start Date: 作成日をもとにプロセスインスタンスをフィルタリングします。
- Last update: 最終変更日をもとにプロセスインスタンスをフィルタリングします。
Advanced Filters オプションを使用して、Business Central でカスタムフィルターを作成することもできます。
12.1.2. 詳細フィルターを使用したプロセスインスタンスのフィルタリング
Advanced Filters オプションを使用して、カスタムのプロセスインスタンスフィルターを作成します。新規作成したカスタムフィルターは Saved Filters ペインに追加されます。このペインには、Manage Process Instances ページの左側にある星のアイコンをクリックしてアクセスできます。
手順
- Business Central で、Menu → Manage → Process Instances に移動します。
- Manage Process Instances ページで、Advanced Filters をクリックします。
- Advanced Filters ペインで、フィルターの名前と説明を入力して、Add New をクリックします。
- Select column ドロップダウンリストからprocessName などの属性を選択します。ドロップダウンの内容が processName != value1 に変わります。
- もう一度ドロップダウンをクリックして、必要な論理クエリーを選択します。processName 属性については、equals to を選択してください。
フィルタリングするプロセス名の横にあるテキストフィールドの値を変更します。
注記名前は、プロジェクトのビジネスプロセスで定義した値と一致させる必要があります。
- Save をクリックして、フィルター定義に従い、プロセスをフィルタリングします。
星のアイコンをクリックして、Saved Filters ペインを開きます。
Saved Filters ペインで、保存した詳細フィルターすべてを表示できます。
第13章 関連資料
付録A バージョン情報
本書の最終更新日: 2020 年 9 月 8 日 (木)