The two generic types of business processes exist in Bitrix24:
- a sequential business process to perform a series of consecutive actions on a document, from a predefined start point to a predefined end point;
- a state-driven business process not having start and end points; instead, the workflow changes the process status. Such business processes can finish at any stage.
A Sequential Business Process
The sequential modus is generally used for processes having a predefined limited lifecycle. The typical example is creation and approval of a text document. Any sequential process usually includes several actions between the start and end points.
A Status Driven Business Process
Status driven approach is used when a process does not have a definite time frame and can recur or can cycle on the same status due to nature of production or office style. A typical scheme for such processes consists of several statuses which in their turn include actions and status change conditions.
Each action in a status is usually a finite sequential process whose design is defined by the nature of actions performed on information in a given status. Hence, a status driven business process consolidates multiple sequential processes the activity between which is relayed depending on their result.
Selecting a Correct Business Process Type
In practice, any management task can be modeled using a sequential as well as a status driven business process. However, an improperly chosen business process type may make the resulting model and business process template substantially and unreasonably more complicated.
Use a sequential business process to model a simple sequence of actions.
Choose a status driven business process if the model shows that a business process may occur in different statuses along the way, and it may migrate from one status to another according to the rules the model specifies. This kind of business process enables full control over the document access permissions in different statuses. Additionally, you can specify events that will trigger the execution of child processes.