「ステートマシン」と「ワークフロー」の違いと、「ステートマシンワークフロー」との違いを知りたいのですが。
4 に答える
Jereが述べているように、ステートマシンは循環グラフである可能性があり、ワークフローは通常非循環です。ほとんどの場合、ワークフローの用語は、おそらく何らかの情報が変更されている、ある種の人間の相互作用を表すために使用されます(例:ドキュメント)。ワークフローという用語は、人々がどのように仕事をし、どのように情報を処理するかを表すことに深く関係しています。ステートマシンは、エンティティまたはエンティティのグループのさまざまな状態を表す必要がある、より技術的な概念です。また、おそらくビジネスプロセスについて質問する必要があります:)乾杯
プロダクトマネージャーはワークフロー定義グラフを描画し、それを開発者/プログラマーに渡します。プロダクトマネージャーによって作成された要件ドキュメント、開発者/プログラマーの設計エンティティ、エンティティの状態を読んだ後、 1つのワークフローノードで複数のエンティティの状態を設定します
WorkFlowには、並列ゲートウェイ、包括的ゲートウェイ、および排他的ゲートウェイがありますが、ステートマシンには排他的ゲートウェイしかありません。したがって、 WorkFlowは同時に複数のワークフローノードで実行できますが、ステートマシンは1つのノードでしか実行できません。
ワークフローという用語は、人々がどのように仕事をし、どのように情報を処理するかを表すことに深く関係しています。
新規参入者は、ワークフロー定義グラフによってプログラムを簡単に理解でき、ワークフロー定義グラフは、ワークフローエンジン(例:acitivtiまたはjbpm6)によってコードにバインドされます。コードと同期しています。要件ドキュメントはコードと同期していません。
ワークフローエンジンとステートマシンの主な違いは、焦点にあります。ワークフローエンジンでは、前のアクションが完了すると次のステップへの移行が発生しますが、ステートマシンには、次のアクティビティへの分岐を引き起こす外部イベントが必要です。つまり、ステートマシンはイベント駆動型であり、ワークフローエンジンはそうではありません。
私はここからこの本当の違いを見つけるまで、それらの間の大きな違いを探していました。それは本当です。この違いを引用したこの記事を参照してください。