Hitachi

Cosminexus V11 BPM/ESB基盤 サービスプラットフォーム 開発ガイド 基本開発編


付録C.3 上流設計ツール利用時の前提事項

サービスプラットフォーム用のビジネスプロセスを設計するときの前提事項(上流設計ツールを使うときの注意点)について説明します。

〈この項の構成〉

(1) ビジネスプロセス全体に関する前提事項

(a) インスタンス補正の設定

サービスプラットフォームはインスタンス補正を行いません。上流設計ツールでビジネスプロセスのインスタンス補正を設定できる場合は,「補正無し」を指定してください。設定できない場合は,インスタンス補正されないことを前提にフローを設計してください。

(b) 抽象プロセスの指定

サービスプラットフォームは,実行可能な実装レベルのビジネスプロセスだけ扱うことができます。上流設計ツールでビジネスプロセスを抽象プロセスとして設定できる場合は,「抽象プロセス」として指定しないでください。

(c) joinFailureフォルトの抑止

サービスプラットフォームは,joinFailureフォルトを常に抑止して動作します。上流設計ツールでjoinFailureフォルトの抑止を設定できる場合は,「抑止する」を指定してください。設定できない場合は,joinFailureフォルトが抑止されることを前提にフローを設計してください。

(2) アクティビティに関する前提事項

(a) 未サポート要素および属性の使用

BPELインポート機能がサポートしないBPELの要素,および属性は使用しないでください。サポートしていない要素や属性は,取り込みのスキップ,またはほかの要素へ置き換えられるため,意図しないフローに変わることがあります。BPELインポート機能のサポート状況については,「付録E 上流設計ツールとの連携で使用するBPELのサポート範囲」を参照してください。

また,上流設計ツールの各要素(BPMN要素)や設定項目と,BPELの各要素や属性との対応については,BPMN仕様または上流設計ツールのマニュアルを参照してください。

(b) 補償ハンドラの使用

BPELインポート機能は,compensationHandler要素をサポートしていません。BPMNを利用した上流設計ツールで補償マーカを使用すると,compensationHandler要素としてBPELに出力されることがあるため,補償マーカを使用しないで設計することを推奨します。補償マーカを使用しないで同等の設計をする例を示します。

図C‒3 補償マーカを使用しないで設計する場合の例

[図データ]

(c) サービス名の文字種

サービスプラットフォームは,ビジネスプロセスと連携するサービスの名前にNCNameだけ使用できます。上流設計ツールでサービスの名前(BPMNではInterface属性)を設定する場合は,NCNameで値を指定してください。NCName以外の文字が使用されている場合,情報の取り込みが一部スキップされます。

(d) メッセージの部分指定

上流設計ツールではメッセージの部分指定をしないでください。メッセージの部分指定は,メッセージの構造が確定する必要があるため,開発環境にビジネスプロセス定義を取り込んだあとで指定します。BPELのassignアクティビティなどに部分指定(part)属性を指定した場合,BPELインポート機能によって指定が無視されます。

(3) メッセージに関する前提事項

(a) メッセージタイプの指定

上流設計ツールではメッセージの構造を指定しないでください。メッセージの構造は,サービスのインターフェースが確定する必要があるため,開発環境にビジネスプロセスを取り込んだあとで指定します。BPELにメッセージタイプ(messageType)属性を指定した場合,string型の変数に置き換えて取り込まれます。

(b) タイプの指定

メッセージが基本型(構造を持たない)の場合は,XMLスキーマの名前空間(http://www.w3.org/2001/XMLSchema)に属する型を指定してください。BPELのタイプ(type)属性にそのほかの型を指定した場合,互換性があると推測される型に置き換えて取り込まれます。