2.6.2 BPMNエディタで変更可能なビジネスプロセス定義の詳細
BPMNエディタでビジネスプロセス定義を変更する場合の,規則やBPMN要素ごとの編集可否について説明します。
(1) BPMN要素の追加または削除の可否
BPMN要素を追加または削除する時の共通規則と,追加または削除できるBPMN要素を次に示します。
BPMN要素を追加または削除する時の共通規則
BPMN要素を追加,または削除する時は,次の規則に従ってください。
-
削除対象のBPMN要素が実行中の案件が0件であること
-
追加または削除するBPMN要素の遷移先に並列ゲートウェイがある場合,-ejpオプションを指定したciwchgenvコマンドを実行してEditJoinPermissionにtrueを設定していること
ciwchgenvコマンドの詳細については,マニュアルuCosminexus Service Coordinator Interactive Workflow コマンドを参照してください。
並列ゲートウェイについては,「(3) 並列ゲートウェイに関する変更・追加・削除の可否」を参照してください。
図2‒22 追加または削除するBPMN要素の遷移先に並列ゲートウェイがある場合
開始イベントの追加または削除(その1)
開始(タイプなし)※
-
新規にサブプロセス,サブプロセス(マルチインスタンス)を追加する場合,その内部に開始(タイプなし)を追加できます。ただし,開始(タイプなし)を,省略形の有無に関わらず複数個追加する場合は,-ejpオプションを指定したciwchgenvコマンドでEditJoinPermissionにtrueを設定する必要があります。
-
既存のサブプロセス,サブプロセス(マルチインスタンス)を削除する場合,その内部の開始(タイプなし)を削除できます。ただし,開始(タイプなし)を,省略形の有無に関わらず複数個削除する場合は,-ejpオプションを指定したciwchgenvコマンドでEditJoinPermissionにtrueを設定する必要があります。
-
トップレベル(レーン含む)に開始イベントの追加または削除はできません。
-
既存のサブプロセス,サブプロセス(マルチインスタンス)を残す場合,その内部への開始(タイプなし)の追加または削除はできません。
- 注※
-
省略形を含みます。
次の図の上段が開始(タイプなし)を省略しない形,下段が開始(タイプなし)を省略した形で,どちらも意味は同じです。
図2‒23 開始(タイプなし)の省略形
開始イベントの追加または削除(その2)
開始(メッセージ) 開始(タイマー)
開始イベントの追加または削除はできません。
イベント・サブプロセス開始イベントの追加または削除(その1)
イベント・サブプロセス非中断開始(メッセージ) イベント・サブプロセス中断開始(メッセージ) イベント・サブプロセス中断開始(エラー)
-
新規にイベント・サブプロセスを追加する場合,その内部にイベント・サブプロセス開始イベントを追加できます。
-
既存のイベント・サブプロセスを削除する場合,その内部のイベント・サブプロセス開始イベントを削除できます。
-
既存のイベント・サブプロセスを残す場合,その内部へのイベント・サブプロセス開始イベントの追加または削除はできません。
イベント・サブプロセス開始イベントの追加または削除(その2)
イベント・サブプロセス非中断開始(タイマー) イベント・サブプロセス中断開始(タイマー)
-
新規にイベント・サブプロセスを追加する場合,その内部にイベント・サブプロセス開始(タイマー)を追加できます。ただし,イベント・サブプロセス開始(タイマー)を追加する場合は,-ejpオプションを指定したciwchgenvコマンドでEditJoinPermissionにtrueを設定する必要があります。また,新規イベント・サブプロセスの追加先は,サブプロセス,サブプロセス(マルチインスタンス),イベント・サブプロセスである必要があります。トップレベル(レーン含む)への追加はできません。また,追加先のサブプロセス,サブプロセス(マルチインスタンス),イベント・サブプロセスが実行中の案件が0件である必要があります。
-
既存のイベント・サブプロセスを削除する場合,その内部のイベント・サブプロセス開始(タイマー)を削除できます。ただし,イベント・サブプロセス開始(タイマー)を削除する場合は,-ejpオプションを指定したciwchgenvコマンドでEditJoinPermissionにtrueを設定する必要があります。また,既存イベント・サブプロセスの削除元は,サブプロセス,サブプロセス(マルチインスタンス),イベント・サブプロセスである必要があります。トップレベル(レーン含む)からの削除はできません。また,削除元のサブプロセス,サブプロセス(マルチインスタンス),イベント・サブプロセスが実行中の案件が0件である必要があります。
-
既存のイベント・サブプロセスを残す場合,その内部へのイベント・サブプロセス開始(タイマー)の追加または削除はできません。
境界イベントの追加または削除(その1)
境界非中断(メッセージ) 境界中断(メッセージ) 境界中断(エラー)
-
新規にアクティビティ,アクティビティ(マルチインスタンス)を追加する場合,その境界に境界イベントを追加(アタッチ)できます。
-
既存のアクティビティ,アクティビティ(マルチインスタンス)を削除する場合,その境界の境界イベントを削除(アタッチ解除)できます。
-
既存のアクティビティ,アクティビティ(マルチインスタンス)を残す場合,その境界への境界イベントの追加(アタッチ)または削除(アタッチ解除)はできません。
-
新規にサブプロセス,サブプロセス(マルチインスタンス),アドホック・サブプロセスを追加する場合,その境界に境界イベントを追加(アタッチ)できます。
-
既存のサブプロセス,サブプロセス(マルチインスタンス),アドホック・サブプロセスを削除する場合,その境界の境界イベントを削除(アタッチ解除)できます。
-
既存のサブプロセス,サブプロセス(マルチインスタンス),アドホック・サブプロセスを残す場合,その境界への境界イベントの追加(アタッチ)または削除(アタッチ解除)はできません。
境界イベントの追加または削除(その2)
境界非中断(タイマー) 境界中断(タイマー)
-
新規にアクティビティ,アクティビティ(マルチインスタンス)を追加する場合,その境界に境界(タイマー)を追加(アタッチ)できます。
-
既存のアクティビティ,アクティビティ(マルチインスタンス)を削除する場合,その境界の境界(タイマー)を削除(アタッチ解除)できます。
-
既存のアクティビティ,アクティビティ(マルチインスタンス)を残す場合,その境界への境界(タイマー)の追加(アタッチ)または削除(アタッチ解除)はできません。
-
新規にサブプロセス,サブプロセス(マルチインスタンス),アドホック・サブプロセスを追加する場合,その境界に境界(タイマー)を追加(アタッチ)できます。ただし,境界(タイマー)を追加(アタッチ)する場合は,-ejpオプションを指定したciwchgenvコマンドでEditJoinPermissionにtrueを設定する必要があります。
-
既存のサブプロセス,サブプロセス(マルチインスタンス),アドホック・サブプロセスを削除する場合,その境界の境界(タイマー)を削除(アタッチ解除)できます。ただし,境界(タイマー)を削除(アタッチ解除)する場合は,-ejpオプションを指定したciwchgenvコマンドでEditJoinPermissionにtrueを設定する必要があります。
-
既存のサブプロセス,サブプロセス(マルチインスタンス),アドホック・サブプロセスを残す場合,その境界への境界(タイマー)の追加(アタッチ)または削除(アタッチ解除)はできません。
終了イベントの追加または削除
終了(タイプなし)※ 終了(メッセージ) 終了(エラー) 強制終了
トップレベル(レーン含む),サブプロセス,サブプロセス(マルチインスタンス),イベント・サブプロセスに終了イベントの追加または削除ができます。
- 注※
-
省略形を含みます。
次の図の上段が終了(タイプなし)を省略しない形,下段が終了(タイプなし)を省略した形で,どちらも意味は同じです。
図2‒24 終了(タイプなし)の省略形
アクティビティの追加または削除
ユーザタスク サービスタスク ビジネスルールタスク コールアクティビティ
-
トップレベル(レーン含む),サブプロセス,サブプロセス(マルチインスタンス),イベント・サブプロセス,アドホック・サブプロセスにアクティビティの追加または削除ができます。
-
追加または削除するアクティビティに遷移元がなく,開始(タイプなし)の省略形も追加・削除される場合,「開始イベントの追加または削除(その1)」も参照してください。
アクティビティ(マルチインスタンス)の追加または削除
ユーザタスク(マルチインスタンス) サービスタスク(マルチインスタンス) ビジネスルールタスク(マルチインスタンス) コールアクティビティ(マルチインスタンス)
-
トップレベル(レーン含む),サブプロセス,イベント・サブプロセス,アドホック・サブプロセスにアクティビティ(マルチインスタンス)の追加または削除ができます。
-
追加または削除するアクティビティ(マルチインスタンス)に遷移元がなく,開始(タイプなし)の省略形も追加・削除される場合,「開始イベントの追加または削除(その1)」も参照してください。
キャッチイベント,スローイベントの追加または削除
キャッチ(メッセージ) キャッチ(タイマー) キャッチ(リンク) スロー(メッセージ) スロー(リンク)
トップレベル(レーン含む),サブプロセス,サブプロセス(マルチインスタンス),イベント・サブプロセス,アドホック・サブプロセスにキャッチイベント,スローイベントの追加または削除ができます。
ゲートウェイの追加または削除
排他ゲートウェイ※1 並列ゲートウェイ※2 排他イベントゲートウェイ
トップレベル(レーン含む),サブプロセス,サブプロセス(マルチインスタンス),イベント・サブプロセス,アドホック・サブプロセスにゲートウェイの追加または削除ができます。ただし,並列ゲートウェイ(省略形を含む)を追加または削除する場合は,-ejpオプションを指定したciwchgenvコマンドでEditJoinPermissionにtrueを設定する必要があります。
並列ゲートウェイについては,「(3) 並列ゲートウェイに関する変更・追加・削除の可否」を参照してください。
- 注※1
-
省略形を含みます。
次の図の上段が排他ゲートウェイを省略しない形,下段が排他ゲートウェイを省略した形で,どちらも意味は同じです。なお,合流する側は省略できますが,分岐する側は省略できません。
図2‒25 排他ゲートウェイの省略形
- 注※2
-
省略形を含みます。
次の図の上段が並列ゲートウェイを省略しない形,下段が並列ゲートウェイを省略した形で,どちらも意味は同じです。なお,分岐する側は省略できますが,合流する側は省略できません。
図2‒26 並列ゲートウェイの省略形
サブプロセスの追加または削除
-
サブプロセスの内部や境界に追加または削除できるBPMN要素を含む場合にだけ,サブプロセスを追加または削除できます。
-
トップレベル(レーン含む),サブプロセス,サブプロセス(マルチインスタンス),イベント・サブプロセスにサブプロセスの追加または削除ができます。
-
追加または削除するサブプロセスに遷移元がなく,開始(タイプなし)の省略形も追加・削除される場合,「開始イベントの追加または削除(その1)」も参照してください。
サブプロセス(マルチインスタンス)の追加または削除
-
サブプロセス(マルチインスタンス)の内部や境界に追加または削除できるBPMN要素を含む場合にだけ,サブプロセス(マルチインスタンス)を追加または削除できます。
-
トップレベル(レーン含む),サブプロセス,イベント・サブプロセスにサブプロセス(マルチインスタンス)の追加または削除ができます。
-
追加または削除するサブプロセス(マルチインスタンス)に遷移元がなく,開始(タイプなし)の省略形も追加・削除される場合,「開始イベントの追加または削除(その1)」も参照してください。
イベント・サブプロセスの追加または削除
-
イベント・サブプロセスの内部に追加または削除できるBPMN要素を含む場合にだけ,イベント・サブプロセスを追加または削除できます。
-
トップレベル(レーン含む),サブプロセス,サブプロセス(マルチインスタンス),イベント・サブプロセスにイベント・サブプロセスの追加または削除ができます。
-
イベント・サブプロセスがイベント・サブプロセス開始(タイマー)を含み,それらを追加または削除する場合,イベント・サブプロセスの追加先または削除元に制限があります。制限の詳細は「イベント・サブプロセス開始イベントの追加または削除(その2)」を参照してください。
アドホック・サブプロセスの追加または削除
-
アドホック・サブプロセスの内部や境界に追加または削除できるBPMN要素を含む場合にだけ,アドホック・サブプロセスを追加または削除できます。
-
トップレベル(レーン含む),サブプロセス,サブプロセス(マルチインスタンス),イベント・サブプロセスにアドホック・サブプロセスの追加または削除ができます。
-
追加または削除するアドホック・サブプロセスに遷移元がなく,開始(タイプなし)の省略形も追加・削除される場合,「開始イベントの追加または削除(その1)」も参照してください。
レーンの追加または削除
レーンの内部に追加または削除できるBPMN要素を含む場合にだけ,レーンを追加または削除できます。
(2) BPMN要素の属性値の変更可否
BPMN要素の属性値の変更可否を示します。
Id,Name,Documentation以外の属性値の変更
BPMN要素ごとのId,Name,Documentation以外の属性値の変更可否を次の表に示します。
BPMN要素 |
属性値(括弧内はBPMNエディタの[プロパティ]タブ上の表示) |
||
---|---|---|---|
変更できる属性値 |
変更できない属性値 |
||
イベント |
開始(タイプなし) |
- |
- |
開始(メッセージ) |
- |
ref識別子(Message ref) |
|
開始(タイマー) |
- |
タイマールール([Timer Definition]タブのすべての設定) |
|
イベント・サブプロセス非中断開始(メッセージ) イベント・サブプロセス中断開始(メッセージ) |
ref識別子(Message ref) |
中断イベントか非中断イベントかの属性(isInterrupting) |
|
イベント・サブプロセス中断開始(エラー) |
ref識別子(Error ref) |
- |
|
イベント・サブプロセス非中断開始(タイマー) イベント・サブプロセス中断開始(タイマー) |
タイマールール([Timer Definition]タブのすべての設定) |
中断イベントか非中断イベントかの属性(isInterrupting) |
|
境界非中断(メッセージ) 境界中断(メッセージ) |
ref識別子(Message ref) |
中断イベントか非中断イベントかの属性(Cancel activity) |
|
境界中断(エラー) |
ref識別子(Error ref) |
- |
|
境界非中断(タイマー) 境界中断(タイマー) |
タイマールール([Timer Definition]タブのすべての設定) |
中断イベントか非中断イベントかの属性(Cancel activity) |
|
キャッチ(メッセージ) |
ref識別子(Message ref) |
- |
|
キャッチ(タイマー) |
タイマールール([Timer Definition]タブのすべての設定) |
- |
|
キャッチ(リンク) |
- |
リンク名(LinkEventDefinition name) |
|
スロー(メッセージ) |
ref識別子(Message ref) |
- |
|
スロー(リンク) |
- |
リンク名(LinkEventDefinition name) |
|
終了(メッセージ) |
ref識別子(Message ref) |
- |
|
終了(エラー) |
ref識別子(Error ref) |
- |
|
終了(タイプなし) |
- |
- |
|
強制終了 |
- |
- |
|
アクティビティ |
ユーザタスク |
作業者([Participan]タブのすべての設定) |
- |
サービスタスク ビジネスルールタスク |
ref識別子(Operation ref) |
- |
|
コールアクティビティ |
- |
calledElement属性(Called element) |
|
アクティビティ(マルチインスタンス) |
ユーザタスク(マルチインスタンス) サービスタスク(マルチインスタンス) ビジネスルールタスク(マルチインスタンス) コールアクティビティ(マルチインスタンス) |
パラレルかシーケンシャルか(Sequential) |
- |
繰り返し回数(Loop cardinality) |
|||
完了条件(Completion condition) |
|||
ゲートウェイ |
排他ゲートウェイ |
デフォルト遷移先(Default flow) |
- |
並列ゲートウェイ |
- |
- |
|
排他イベントゲートウェイ |
- |
- |
|
接続オブジェクト |
シーケンスフロー |
分岐条件(Condition) |
- |
コンテナ |
レーン |
- |
- |
サブプロセス |
- |
- |
|
イベント・サブプロセス |
- |
- |
|
アドホック・サブプロセス |
インスタンスキャンセル属性(Cancel remaining instances) |
フローノード実行方式(Ordering) |
|
完了条件(Completion condition) |
|||
サブプロセス(マルチインスタンス) |
繰り返し回数(Loop cardinality)※ |
パラレルかシーケンシャルか(Sequential) |
|
完了条件(Completion condition) |
- (凡例)
-
-:該当する属性値はありません。
- 注※
-
Loop cardinalityを変更できるかどうかは,サブプロセス(マルチインスタンス)に次のBPMN要素を含むかどうかに依存します。
-
複数の開始(タイプなし)(省略形を含む)
-
並列ゲートウェイ(省略形を含む)
-
イベント・サブプロセス開始(タイマー)
-
サブプロセス,アドホック・サブプロセスにアタッチされた境界(タイマー)
- これらのBPMN要素のどれも含まない場合
-
Loop cardinalityを変更できます。
- これらのBPMN要素のどれかを含み,かつEditJoinPermissionがtrueの場合
-
Loop cardinalityを変更できます。
- これらのBPMN要素のどれかを含み,かつEditJoinPermissionがfalse(デフォルト)の場合
-
-
Loop cardinalityが固定値のとき
Loop cardinalityを変更できません。
-
Loop cardinalityが固定値でないとき
ciwtransbpmnコマンドの,次の2つのオプションに同じ値を指定すればLoop cardinalityを変更できます。
-
-srcオプションまたは-srcdirオプションを指定して実行した際の-mimaxオプション(ビジネスプロセス登録当初の値)
-
-updateオプションを指定して実行した際の-mimaxオプション(ビジネスプロセス変更時の値)
-
-
-
Id,Nameの変更
対象のBPMN要素が追加できて,かつ削除できる場合にId,Nameを変更できます(Id,Nameの変更は内部的に削除および追加と同等になるため)。BPMN要素の追加,または削除の可否については,「(1) BPMN要素の追加または削除の可否」を参照してください。
- Id,Nameを変更できる例
-
-
ユーザタスクのId,Nameを変更できます。ただし,ユーザタスクの遷移先に並列ゲートウェイがある場合は,-ejpオプションを指定したciwchgenvコマンドでEditJoinPermissionにtrueを設定する必要があります。また,ユーザタスクが実行中の案件が0件である必要があります。
-
並列ゲートウェイのId,Nameを変更できます。ただし,-ejpオプションを指定したciwchgenvコマンドでEditJoinPermissionにtrueを設定する必要があります。
-
イベント・サブプロセスがイベント・サブプロセス開始(メッセージ),サービスタスク,並列ゲートウェイ,終了(タイプなし)で構成されている場合,イベント・サブプロセスのId,Nameを変更できます。ただし,-ejpオプションを指定したciwchgenvコマンドでEditJoinPermissionにtrueを設定する必要があります。また,イベント・サブプロセス内部が実行中の案件が0件である必要があります。
-
Documentationの変更
任意のBPMN要素のDocumentationに設定する内容を変更できます。
(3) 並列ゲートウェイに関する変更・追加・削除の可否
-ejpオプションを指定したciwchgenvコマンドを実行してEditJoinPermissionにtrueを設定している場合,並列ゲートウェイに関する変更・追加・削除ができます。環境構築時のデフォルト設定(EditJoinPermissionにfalseを設定)では,並列ゲートウェイに関する変更・追加・削除はできません。
ciwchgenvコマンドの詳細については,マニュアルuCosminexus Service Coordinator Interactive Workflow コマンドを参照してください。
EditJoinPermissionの設定値ごとの,並列ゲートウェイに関する変更・追加・削除の可否を次に示します。
項番 |
並列ゲートウェイの変更・追加・削除 |
EditJoinPermissionの値 |
|
---|---|---|---|
False(デフォルト) |
true |
||
1 |
並列ゲートウェイ(分岐)の追加 |
× |
○ |
2 |
並列ゲートウェイ(分岐)の削除 |
× |
○ |
3 |
並列ゲートウェイ(分岐)の遷移先の変更
|
○ |
○ |
4 |
並列ゲートウェイ(分岐)からの出力フローの追加 |
○ |
○ |
5 |
並列ゲートウェイ(分岐)からの出力フローの削除 |
○ |
○ |
6 |
並列ゲートウェイ(合流)の追加 |
× |
○ |
7 |
並列ゲートウェイ(合流)の削除 |
× |
○ |
8 |
並列ゲートウェイ(合流)の遷移元の変更
|
× |
○ |
9 |
並列ゲートウェイ(合流)への入力フローの追加 |
× |
○ |
10 |
並列ゲートウェイ(合流)への入力フローの削除 |
× |
○ |
- (凡例)
-
○:並列ゲートウェイに関する変更・追加・削除ができる
×:並列ゲートウェイに関する変更・追加・削除ができない