This part is the core of my work flow design paper.
The business process management module is an important part of the platform. It is necessary to convert standardized processes in published standards into processes in a specific computer to achieve automatic operation of processes, it is of great significance to closely integrate the standardized results with the daily work of employees.
The Business Process Management module consists of Process Modeling, workflow execution services, and process monitoring. Process Modeling is used to define a process, including the process definition and activity definition. The workflow execution service is used to explain the process definition and control its operation, the most important thing in the workflow execution service is the workflow engine. Process Monitoring is used to monitor the operation of processes. The business process management module is shown in Figure 3-5:
Figure 3-5 Process Management
3.2.2.1
Process Modeling
Process Modeling is used for process creation, modification, deletion, and other operations. Each business process usually contains several activities. In the flowchart, each node corresponds to one activity. Based on business needs, we divide the node type into seven categories. for different types of nodes, we should also set them differently.
(1) start and end nodes
Nodes of the start and end types belong to the automatic activity type, but they are special. A process can have only one Start Node and multiple end nodes.
(2) node
A node of the node type is an automatic activity type. When the instance is executed here, it is automatically processed according to the configuration and continues to run down.
(3) task nodes
A task node is a type of manual activity and is very important. When the process runs to this type of node, the operation of the process will be automatically suspended and wait for the participants to perform the corresponding operations (such as entering the form), and the execution will continue after the corresponding operations are triggered.
(4) demo-type nodes
A decision node belongs to the decision node. For example, in a process, if the time exceeds a certain time limit, some operation is required. When a node of the demo-type is used, the computer automatically determines based on the rules and switches to the corresponding flow route.
The demo-node also needs to set Automatic jump rules for the computer to automatically determine how the flow direction jumps.
(5) fork nodes
A fork node is a branch node used for the branch operation of a process. When a process requires branch execution, this type of node is used to make the process flow along its branch at the same time.
(6) join nodes
Join nodes belong to aggregation nodes, which are used to end the branch process and return it to the main process. Join nodes and fork nodes appear in pairs. After the branch nodes are run, they enter the join node. The join node triggers the process to go back to the main process to continue running.
(7) subprocess nodes
Subprocess nodes are subprocess nodes used to implement nested operation of subprocesses. When the process runs to a subprocess node, the subprocess bound to the node is activated and automatically starts to run. At this time, the main process is suspended and continues after the sub-process is completed.
3.2.2.2
Detailed Design of workflow execution service
The workflow execution service refers to the workflow engine. It is a software that provides a runtime service environment for workflow execution and is the core component of the workflow execution service. Its main functions include:
(1) instantiate the process according to the process definition, that is, process the relevant data according to the pre-established process definition and generate a process instance;
(2) control the operation of process instances, including process start, stop, suspension, and activation;
(3) Handling of activities (tasks) so that participants can participate in specific tasks, such as filling out application forms and approving;
(4) Maintain and process workflow-related data, such as control data or business data during workflow operation;
(5) provide external interfaces for other calls.
In the design of the workflow engine, the token mechanism is introduced. A token can record the nodes in the process and control the process as the token passes. When you start a process, the workflow engine creates a new process instance based on the process definition and processes the data.
The workflow engine finds the Start Node of the enabled process and creates a root token to associate the token with the Start Node. Then the engine will promote the operation and execution of the process according to the routing rules. During the process running and execution, the workflow engine calls differentAlgorithm. The design concept is shown in Figure 3-6:
Figure 3-6 workflow engine design ideas
Different types of nodes perform different processing based on their configuration and performance. When the node is transferred to the end type node, the process has been completed, thus ending the operation of a process instance.