プロセス駆動型メッセージングサービス(PDMS)とは、プロセス指向でメッセージやデータ呼び出しを交換するサービスです。PDMSでは、ジョブとトリガーを組み合わせてメッセージのワークフローを作成できます。
メッセージングプラットフォームは、インターネットインフラストラクチャの重要な要素とみなされています。かつては主に電子メールとインスタントメッセージングを包含していた概念は、複雑なマルチメディア電子メール、インスタントメッセージング、および関連する固定およびモバイルメッセージングインフラストラクチャを包含するように進化しました。インターネットや無線通信リンク上で送信されるものはすべてメッセージであると言えるでしょう。
PDMSは、イベント駆動型プロセスチェーンに基づくシステム、アプリケーション、または人間間のあらゆる種類のメッセージ/データ呼び出しのためにメッセージを交換します。[ 1 ]
プロセス駆動型メッセージングサービスとは、ジョブとトリガーを組み合わせてメッセージのワークフローを作成できるサービスであり、そのワークフローをプロセスとして捉えることができる。
ワークフローは、トリガーが作動すると実行されます。トリガーによって1つ以上のジョブが起動され、それらのジョブはさらに他のジョブを実行することができます。すべてのジョブが実行された後もワークフローはアクティブなままですが、再度トリガーされるまで何も起こりません。[ 2 ]
PDMS のワークフローは、トリガーやジョブをまとめて、設定を繰り返すことなく何度も呼び出せる一連のアクションとイベントを実行するために使用されます。ワークフローはコンテナです。ワークフロー プロセスは、レコードをあるステータスから別のステータスに移動させるなど、ワークフロー ステータスとアクションのグループのコンテナです。[ 3 ]トリガーやジョブ以外にも、グループやアーティファクトを含めることができます。ワークフローに含めることができるアイテムは、ワークフロー内のすべてのトリガーとジョブで使用できます。
ワークフローの概念は、ビジネスプロセスの一部または全体のためのテンプレートと見なすことができます。ワークフローは、さまざまな理由でトリガーされます。例えば、ドメイン内で何らかの事象が発生した場合や、明示的な呼び出しがあった場合などが挙げられます。
ワークフロー、そのトリガー、およびジョブがアクティブな場合、ワークフローは実行待ちの状態になります。
ワークフローを作成する際には、最後のジョブを最初に追加する必要があります。つまり、ジョブは実行の逆順でリストする必要があります。ジョブとトリガーも、作成時に逆順でリストする必要があります。[ 4 ]
ジョブは、タスク(メッセージの送信など)を作成したり、標準オブジェクト(ユニット内のウェイメタデータなど)に影響を与えたりします。これは、システムが実行すべき内容を記述したタスクであり、複数のタスクを記述できます。ジョブがアクティブ化されると、別のジョブ(メッセージの配信など)の実行につながる可能性があります。ジョブは、システムがデータに対して行う処理、つまりシステムドメイン内のアクティビティを表します。
ジョブは、プロセスをカプセル化する手段を提供します。ジョブは、入力オプション、プロセス内のステップ、それらのステップが実行されるノードに一致するフィルタ式、およびステップを並列実行するかどうかを指定する実行制御パラメータを表す構成です。特定のコマンド実行が繰り返し行われ、ルーチン手順となっている場合があるかもしれません。ルーチンプロセスはカプセル化され、他のルーチン手順の基盤となる必要があります。
トリガー(ワークフローを開始/実行するもの)は、アクションの実行を促します。ビジネスロジックと動作を定義するオブジェクトのコンポーネントはトリガーと呼ばれます。レコードの作成、更新、削除時に、自動化されたプログラムによる検証、通知、データ操作、その他のアクティビティを実行するために、任意の数のトリガーを作成および構成できます。[ 5 ]
プロセスはシステム内のどこかの時点で開始されます。例えば、トリガーがワークフローのインスタンスを実行したときなどです。
プロセス主導型のメッセージングサービスは、多かれ少なかれ複雑なビジネスプロセスを管理する際によく利用されます。
十分に開発されたプロセス駆動型メッセージングプラットフォームがあれば、すべてのトリガーとジョブを公開API(アプリケーションプログラミングインターフェース)で公開でき、API内でプロセスを作成できるようになります。
PDMSはイベント駆動型アーキテクチャに基づいており、このアーキテクチャパターンは、疎結合されたソフトウェアコンポーネントとサービス間でイベントを伝送するアプリケーションとシステムの設計と実装に適用できます。要求を発行して応答を待つことで動作する従来の情報システムとは異なり、イベント駆動型システムはイベントが発生したときに処理するように設計されており、システムが監視し、動的に反応し、受信者と状況に応じてパーソナライズされたデータを発行できるようにします。[ 2 ]
PDMSが使用できる領域は、システム間通信、A2P( PDMSには他のメッセージタイプも含まれる)、アプリケーション間通信、システム対人通信、M2M、およびイベント駆動型プロセスに基づくシステム、アプリケーション、および/または人の間のあらゆる種類のメッセージ/データ呼び出しです。