DEV Community

Cover image for Understanding Workflow Schemes and Instances in Optimajet Workflow Engine
Optimajet Limited
Optimajet Limited

Posted on Edited on

Understanding Workflow Schemes and Instances in Optimajet Workflow Engine

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 limits of Workflow Engine Free (formerly Community Edition) apply to the number of schemes and execution threads, not to the number of instances.

Workflow Engine Free limits:

  1. Schemes: 10
  2. Execution threads: 4
  3. Activities, transitions and commands: unlimited

This means that you can create and manage an unlimited number of instances of up to 10 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)