Our team conducts daily demonstrations of the Workflow Engine and Workflow Server. Quite often, through interviews with those who are just beginning to develop their integration architecture, we discover that very simple concepts are not always immediately understood. One such concept is the difference between a workflow scheme and workflow instances. This understanding can be critically important for product licensing, as the Optimajet license allows for the creation of an unlimited number of instances. The limitations of the free community version apply only to the capabilities of the scheme itself.
Free limits:
- Activity: 15
- Transition: 25
- Command: 5
- Schema: 1
- Thread: 1
This means that you can create and manage an unlimited number of instances for relatively simple schemes, effectively meeting basic needs when choosing a workflow engine.
Letβs dive deeper into this topic.
In the context of the Optimajet Workflow Engine, a workflow scheme and a workflow instance are two key concepts that are important to understand.
Workflow Scheme
A workflow scheme is an abstract description of the sequence of actions, conditions, and transitions between them. Simply put, it is a plan or model of a workflow that defines how work should be carried out. The scheme specifies the steps, possible transitions between them, the conditions that must be met for a transition, as well as various other parameters and settings.
An example of a workflow scheme might include stages such as:
- Request creation
- Request review
- Decision making
- Process completion
A workflow scheme is a static structure that describes the process without being tied to specific data or instances of the process.
Workflow Instance
A workflow instance is a specific execution of a workflow scheme. When a process is launched based on a given scheme, an instance of that process is created. The instance includes the current state of the process, the data that has been passed through the stages, and the history of actions performed.
If you imagine the scheme as a building blueprint, the instance is the actual building constructed according to that blueprint. Therefore, there may be multiple instances of the same workflow, each corresponding to the same scheme but containing unique data and having its own current state.
Differences
Workflow Scheme β This is the general model that describes how the process should proceed.
Workflow Instance β This is the specific execution of the process according to this model, with certain data and the current state.
Thus, the workflow scheme is a concept, while the instance is its practical implementation.
Very important
Please write in the comments about the challenges you face when choosing a workflow engine in the .NET stack. What is the most critical deal-breaker when deciding which library to use? We will try to create a guide that benefits the entire community and helps you.
Top comments (0)