Business process development system and method

Through the combination of main process, subprocess and independent workflow, combined with domain-specific language DSL and functional plug-in addins, the problem of difficulty in quantifying the deployment of business process modeling languages ​​in the existing technology is solved, and a lightweight business process development system is realized to facilitate deployment in practical applications.

CN115525256BActive Publication Date: 2025-08-191DATA TECH SHANGHAI CO LTD
View PDF 2 Cites 0 Cited by

Patent Information

Application Number
CN202210270357.6
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2022-03-18
Publication Date
2025-08-19
Estimated Expiration
2042-03-18

AI Technical Summary

Technical Problem

In the RPA scenario, the business process modeling language is difficult to quantitatively deploy, making it difficult to realize business process automation.

Method used

Using a combination of main process, subprocess and independent workflow, variable transmission is carried out through input parameters, output parameters and global variables. The logical relationships and functions between nodes are implemented by domain-specific language DSL and function plug-in addins, and process representation and scheduling are independently implemented.

Benefits of technology

It realizes a lightweight business process development system, which facilitates quantitative deployment in actual applications and improves the flexibility and independence of business processes.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN115525256B_ABST
    Figure CN115525256B_ABST
Patent Text Reader

Abstract

The present application discloses a business process development system and method, including: a main process containing zero or more sub-processes, provided with a general entrance to a target business process, for implementing all or part of the business process of the target business process; an independent workflow, for implementing a business process in parallel with the main process, and having an independent execution space. The main process, sub-processes and independent workflows are composed of a layer of nodes or nested nodes of multiple layers connected in series. The functional entity part of the present application combined with a specific application scenario is implemented by a domain-specific language DSL and preset functional plug-ins addins, while the process representation and scheduling of the target business process are independently implemented by the main process, sub-processes and independent workflows, without relying on other services, and thus has the characteristics of being lightweight, which is convenient for quantitative deployment in actual applications.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present application relates to the technical field of business process development, and more specifically, to a business process development system and method. Background Art

[0002] As early as the early 2000s, IBM, Microsoft, OMG, and Intellijke all proposed the concept of business process automation and, based on this, developed the business process modeling languages BPEL and BPML. As real-world business process requirements evolved, the BPEL4WS web service business process execution language was subsequently developed. Regardless of the resulting business process modeling language, they are essentially hypertext parsing languages derived from the concept of business process automation and rely on a vast ecosystem. This makes them difficult to deploy on a large scale in actual RPA (Robotic Process Automation) scenarios. Summary of the Invention

[0003] In view of this, the present application provides a business process development system and method, which can be used to develop business processes and make the developed business process files easy to deploy.

[0004] To achieve the above objectives, the first aspect of the present application provides a business process development system, including:

[0005] A main process containing zero or more sub-processes is provided with a main entry point of a target business process, and is used to implement all or part of the target business process; wherein the sub-processes are used to implement independent functions within the main process and share the execution space with the main process;

[0006] Independent workflows are used to implement business processes that are parallel to the main process and have independent execution space;

[0007] The main process and the independent workflow transfer variables through input parameters and output parameters, and the main process and the sub-process transfer variables through global variables;

[0008] The main process, sub-process and independent workflow all contain one level of nodes or nested nodes containing multiple levels; each level has a start ID, and each node of each level has a run ID and a next step ID; wherein the start ID of the level is used to identify the starting run node of the level, the run ID of the node is used to identify the node, and the next step ID of the node is used to identify the node to which the node needs to be routed after executing its internal business;

[0009] The nodes include process control nodes for realizing logical relationships between nodes and process function nodes for realizing general functions. The process control nodes and the process function nodes realize entity functions through a preset domain-specific language DSL and preset function plug-ins addins.

[0010] Preferably, the attributes of the main process are configured through a first attribute file, and the attributes of the main process include a project ID and a flow ID of a sub-process;

[0011] The sub-process is a code segment marked by a tag in the main process. The attributes of the sub-process are configured through a second attribute file. The attributes of the sub-process include the name and ID of the sub-process.

[0012] Preferably, the process control node includes:

[0013] Condition judgment node, multi-condition judgment node, pre-condition loop node, post-condition loop node, loop traversal node, exception capture node, event trigger node, parallel execution node, sub-process wake-up node, independent workflow wake-up node and external workflow wake-up node;

[0014] The process function nodes include: abort loop node, pause execution node, continue execution node, exception throwing node, input parameter setting node, output parameter setting node, global assignment node, local assignment node and instruction execution node.

[0015] Preferably, the conditional judgment node includes a true branch and a false branch, and the conditional judgment node is directed to be executed according to the execution result of the DSL.

[0016] Preferably, the multi-condition judgment node includes multiple conditional branches, and the multi-condition judgment node is matched through the execution result of the DSL and directed to execution according to the matching result.

[0017] Preferably, the pre-conditional loop node includes a loop branch, and the pre-conditional loop node determines whether to cyclically execute the loop branch according to the execution result of the DSL.

[0018] Preferably, the post-conditional loop node includes a loop branch. After executing the loop branch once, the post-conditional loop node determines whether to execute the loop branch again according to the execution result of the DSL.

[0019] Preferably, the loop traversal node comprises a loop branch, configured to loop through the DSL container list via a DSL iterator variable, and execute the loop branch according to the item of the traversed DSL container list.

[0020] Preferably, the exception capture node is used to execute services in a protected manner and capture exceptions during execution;

[0021] If the exception capture node is set with a number of attempts, the error is ignored and the service is attempted again within the number of attempts.

[0022] A second aspect of the present application provides a business process development method, comprising:

[0023] Use the above system to implement the orchestration of the target business process and obtain the business process source file;

[0024] Adding dependent resources to the business process source file to obtain a business process file package;

[0025] The business process file package is compiled by a preset syntax compiler to obtain a business process target file.

[0026] Through the above technical solution, it can be known that the present application includes a main process for providing a total entrance for the target business process, a sub-process for realizing the internal independent functions of the main process and sharing the execution space with the main process, and an independent workflow for executing business in parallel with the main process and enjoying an independent execution space. Among them, the main process and the independent workflow pass variables through input parameters and output parameters, and the main process and the sub-process pass variables through global variables. The main process, sub-process and independent workflow can all contain one level of nodes or nested nodes containing multiple levels, and each level is provided with a starting ID, and each node of each level is provided with a running ID and a next step ID respectively; wherein, the starting ID of the level is used to identify the starting running node of the level, the running ID of the node is used to uniquely identify the node, and the next step ID of the node is used to identify the node to which the node needs to be routed after executing the internal business. Through the starting ID, running ID and next step ID, it is beneficial to use various dynamic logical relationships to connect all nodes in series. Furthermore, the nodes include process control nodes for implementing logical relationships between nodes and process function nodes for implementing general functions. The process control nodes and the process function nodes implement specific functions through a preset domain-specific language DSL and preset functional plug-in addins. In this application, the functional entity part combined with the specific application scenario is implemented by the domain-specific language DSL and preset functional plug-in addins, while the process representation and scheduling of the target business process are independently implemented by the main process, sub-processes and independent workflows, without relying on other services. Therefore, it has the characteristics of being lightweight and convenient for quantitative deployment in actual applications. BRIEF DESCRIPTION OF THE DRAWINGS

[0027] In order to more clearly illustrate the embodiments of the present application or the technical solutions in the prior art, the following briefly introduces the drawings required for use in the embodiments or the description of the prior art. Obviously, the drawings described below are merely embodiments of the present application. For ordinary technicians in this field, other drawings can be obtained based on the provided drawings without any creative work.

[0028] Figure 1 A schematic diagram of a business process development system disclosed in an embodiment of the present application;

[0029] Figure 2 A schematic diagram of the components of the business process development system disclosed in an embodiment of the present application;

[0030] Figure 3 A schematic diagram of the main process disclosed in the embodiment of this application;

[0031] Figure 4 A schematic diagram of the sub-process disclosed in the embodiment of this application;

[0032] Figure 5 A schematic diagram of an independent workflow disclosed in an embodiment of the present application;

[0033] Figure 6 A schematic diagram of a conditional judgment node disclosed in an embodiment of the present application;

[0034] Figure 7 A schematic diagram of a multi-condition judgment node disclosed in an embodiment of the present application;

[0035] Figure 8 A schematic diagram of a pre-conditional loop node disclosed in an embodiment of the present application;

[0036] Figure 9 A schematic diagram of a post-conditional loop node disclosed in an embodiment of the present application;

[0037] Figure 10 A schematic diagram of a loop traversal node disclosed in an embodiment of the present application;

[0038] Figure 11 A schematic diagram of an exception capture node disclosed in an embodiment of the present application;

[0039] Figure 12 A schematic diagram of the business process development method disclosed in an embodiment of the present application;

[0040] Figure 13 A schematic diagram of the business process development device disclosed in an embodiment of this application. DETAILED DESCRIPTION

[0041] The following will be combined with the drawings in the embodiments of this application to clearly and completely describe the technical solutions in the embodiments of this application. Obviously, the embodiments described are only part of the embodiments of this application, not all of the embodiments. Based on the embodiments in this application, all other embodiments obtained by ordinary technicians in this field without making creative efforts are within the scope of protection of this application.

[0042] The following describes the business process development system provided by the embodiment of this application. Figure 1 and Figure 2 The business process development system provided in the embodiment of the present application may include: a main flow 10 including zero or more subflows 30 and an independent workflow 20.

[0043] Among them, the main process is set with the main entrance of the target business process, which is used to implement all or part of the business process of the target business process; the sub-process is used to implement the independent functions within the main process and share the execution space with the main process; the independent workflow is used to implement the business process in parallel with the main process and enjoys an independent execution space. Specifically, Figure 1 As shown, the main process and its sub-processes execute business processes in execution space A, and the independent workflow and its sub-processes execute business processes in execution space B. Execution space A and execution space B are independent execution spaces.

[0044] In addition, the main process and independent workflows pass variables through input parameters and output parameters, and the main process and sub-processes pass variables through global variables.

[0045] Specifically, since the main process and independent workflows are in different independent execution spaces, they do not share the global variable pool, but instead use input and output parameters to pass variables. The main process and its sub-processes share the same execution space and the global variable pool within that execution space. Therefore, variables can be passed between the main process and its sub-processes through local variables.

[0046] It should be noted that a main process can contain one or more sub-processes, each independently responsible for implementing its corresponding functionality. A main process can also contain no sub-processes, with the main process implementing all functionality. Similarly, for less complex business processes, the development and design of the process business can be completed using only the main process or a combination of a main process and sub-processes, without the need to add any independent workflows. Furthermore, the only difference between an independent workflow and a main process is that it is not the main entry point for the target business process; other than that, the other properties and structure of an independent workflow are consistent with the main process. Therefore, an independent workflow can also contain one or more sub-processes as needed.

[0047] The main process, sub-process, and independent workflow can all contain one level of nodes, or nested nodes containing multiple levels. Each level has a start ID (beginId), and each node in each level has a run ID (runId) and a next ID (nextId). The level's start ID is used to identify the starting run node of that level, the node's run ID is used to identify the node, and the node's next ID is used to identify the node to which it needs to be routed after executing its internal business.

[0048] Furthermore, nodes include process control nodes and process function nodes. Process control nodes are used to implement logical relationships between nodes, while process function nodes are used to implement common functions. These nodes implement entity functions through a pre-defined DSL (Domain Specific Language) and pre-defined addins.

[0049] Specifically, DSLs are domain-specific languages designed for specific application scenarios. They require an AST parsing engine for parsing and execution, enabling the routing of specific functions to different DSL classification scenarios. This routing can be achieved through internal package scheduling or external RPC communication. Addins are functional plug-ins that work with the system to implement system-related entity functions, as opposed to system-independent logical functions.

[0050] It is understandable that the combination of the above main process, sub-process and independent workflow realizes the expression of business process and the scheduling of each node in the business process, and it is indispensable to rely on certain resources during the execution of the business process. Figure 2 As shown, for a complete business process project, in addition to the business process files constructed by the above main process, sub-processes and independent workflows, a dependent resource set (depends) is also required.

[0051] The embodiment of the present application includes a main process for providing a total entrance for the target business process, a sub-process for realizing the internal independent functions of the main process and sharing the execution space with the main process, and an independent workflow for executing business in parallel with the main process and enjoying an independent execution space. Among them, the main process and the independent workflow pass variables through input parameters and output parameters, and the main process and the sub-process pass variables through global variables. The main process, sub-process and independent workflow can all contain a level of nodes or nested nodes containing multiple levels, and each level is provided with a starting ID, and each node of each level is provided with a running ID and a next step ID; wherein, the starting ID of the level is used to identify the starting running node of the level, the running ID of the node is used to uniquely identify the node, and the next step ID of the node is used to identify the node to which the node needs to be routed after executing the internal business. Through the starting ID, running ID and next step ID, it is beneficial to use various dynamic logical relationships to connect all nodes in series. Furthermore, the nodes include process control nodes for implementing logical relationships between nodes and process function nodes for implementing general functions. The process control nodes and process function nodes implement specific functions through a preset domain-specific language DSL and preset functional plug-in addins. In the embodiment of the present application, the functional entity part combined with the specific application scenario is implemented by the domain-specific language DSL and preset functional plug-in addins, while the process representation and scheduling of the target business process are independently implemented by the main process, sub-process and independent workflow, without relying on other services. Therefore, it has the characteristics of being lightweight and convenient for quantitative deployment in actual applications.

[0052] In some embodiments of this application, please refer to Figure 3 The properties of the main flow (mainflow) can be configured through the first property file (.properties file). The properties of the main flow include the project ID (projectId) and the flow ID (flowId) of the sub-flow.

[0053] The first property file can be used not only to configure the main process but also to verify it. The project ID identifies the project to which the main process belongs, and the sub-process ID identifies which sub-processes the main process contains. The main process can contain nodes, which can nest further nodes (sub-node sets) within the nodes.

[0054] See also Figure 4 The subflow is a code segment marked by a tag within the main process. The properties of the subflow are configured through the second property file (.properties file). The properties of the subflow include the name and ID of the subflow.

[0055] Among them, the tag is customized. Specifically, the main process, sub-process and independent workflow can be written in XML format, and the tag is a customized tag in XML. Through the tag, each sub-process can be clearly divided in the XML file. In addition to being used to configure the sub-process, the second attribute file can also be used to verify the sub-process. The name of the sub-process can be a general description of the sub-process, and the sub-process ID is used to uniquely identify the sub-process. The sub-process can contain nodes, and the nodes can contain more nodes (sub-node sets) nested inside.

[0056] See also Figure 5 An independent workflow can be an independent business workflow file. Its components and structure are similar to the main process. The difference is that its attributes record the workflowId.

[0057] In some embodiments of the present application, the process control node may include:

[0058] Conditional judgment node (if), multi-condition judgment node (switch), pre-condition loop node (while), post-condition loop node (do-while), loop traversal node (foreach), exception capture node (try-catch), event trigger node (trigger), parallel execution node (parallel-processing), sub-process wake-up node (invokesubflow), independent workflow wake-up node (invokeworkflow) and external workflow wake-up node (invokeproject).

[0059] Process function nodes may include: break loop node (break), pause execution node (pause), continue execution node (continue), exception throwing node (throw), input parameter setting node (inputparameter), output parameter setting node (outputparameter), global assignment node (assign), local assignment node (assignlocal) and instruction execution node (execute).

[0060] Each of the above types of nodes includes a run ID (runId) and a next ID (nextId). The runId is the unique identifier of the node itself, and the nextId is used to jump to the node specified by the nextId after executing the steps of the current node.

[0061] Each of the above types of nodes has localvars to mark local variables that are actively applied during the orchestration process. The scope of this variable is limited to the current node. When the node is executed, the local variables declared here will be released through the GC mechanism (Garbage Collection).

[0062] In some embodiments of this application, please refer to Figure 6 ,The conditional judgment node (if) includes true branches and false branches. The conditional judgment node is guided to execute through the execution result of DSL.

[0063] Specifically, local variables (localvars) can be implemented and take effect within an if node. After the node completes execution, all used local variables are released by the garbage collector. The if node's conditional is described using a DSL expression within the condition. The result of the DSL expression's execution leads to either the true branch (branch1) or the false branch (branch0). Each branch can contain multiple nested child nodes to implement flow control instructions and flow function instructions.

[0064] In some embodiments of this application, please refer to Figure 7 ,The multi-condition judgment node (switch) includes multiple conditional branches. The multi-condition judgment node matches ,the DSL execution results and directs execution according to the matching results.

[0065] In some embodiments of this application, please refer to Figure 8 The pre-conditional loop node (while) includes a loop branch, and the pre-conditional loop node determines whether to execute the loop branch cyclically according to the execution result of the DSL.

[0066] In some embodiments of this application, please refer to Figure 9 The post-conditional loop node (do-while) includes a loop branch. After executing the loop branch once, the post-conditional loop node determines whether to execute the loop branch repeatedly based on the execution result of the DSL.

[0067] In some embodiments of this application, please refer to Figure 10 The loop traversal node (foreach) includes a loop branch for looping through the DSL container list through the DSL iterator variable and executing the loop branch according to the item of the traversed DSL container list.

[0068] In some embodiments of this application, please refer to Figure 11The exception capture node (try-catch) is used to execute the business in a protected manner and capture the exception during execution; if the exception capture node is set with a number of attempts, the error will be ignored and the business will be tried again within the number of attempts.

[0069] In addition, the event trigger node (trigger) is used to trigger the specified node in the form of an event; the parallel execution node (parallel-processing) is used to execute multiple specified nodes in parallel; the sub-process wake-up node (invokesubflow) is used to call the specified node in the main process or independent workflow; the independent workflow wake-up node (invokeworkflow) is used to call the specified independent workflow in the main process, or call other specified independent workflows in an independent workflow; the external workflow wake-up node (invokeproject) is used to call other business process projects within the project of the target business process.

[0070] For the above process function nodes, the break loop node (break) is used to terminate and jump out of the current loop branch; the pause execution node (pause) is used to pause the current execution node; the continue execution node (continue) is used to continue the current execution node, usually used in conjunction with the loop branch; the exception throwing node (throw) is used to judge the exception and perform certain processing on the exception; the input parameter setting node (inputparameter) is used to set the input parameters of the node; the output parameter setting node (outputparameter) is used to set the output parameters of the node; the global assignment node (assign) is used to assign values to global variables; the local assignment node (assignlocal) is used to assign values to local variables; the instruction execution node (execute) is used to execute the specified node.

[0071] The business process development method provided in the embodiment of the present application is described below. The business process development method described below and the business process development method system described above can be referenced to each other.

[0072] See Figure 12 The business process development method provided in the embodiment of the present application may include the following steps:

[0073] Step S201 : Use the main process, sub-processes and independent workflows to implement the orchestration of the target business process and obtain the business process source file.

[0074] For example, the business workflow can be orchestrated through the preset Studio orchestrator, and the capabilities provided by the basic logic units of the above-mentioned main process, sub-process and independent workflow can be used to connect the nodes in series based on the preset logical relationship to obtain the business process source file.

[0075] Step S202: Add dependent resources to the business process source file to obtain a business process file package.

[0076] Step S203 : compile the business process file package using a preset syntax compiler to obtain a business process target file.

[0077] In some embodiments of the present application, the implementation process of the business process target file in the process automation project may include:

[0078] 1) Take the first orchestrated node of the main flow as the starting node of the business process, and fill its attribute runId with the beginId of mainflow to find the starting step during execution.

[0079] 2) After a node completes execution, the next step is found and executed based on the node's nextId. If no next step exists for the node, the code block at the level where the current node is located has completed execution. After exiting the code block area at that level, the next step is found and executed based on the nextId of the code block at the next level, and so on.

[0080] 3) When executing to a node at a new level, the entry node of that level is found and executed through the beginId of that level, and then returns to 2), and so on.

[0081] 4) When the nextId of the top level is found to be empty, it indicates that the project execution is completed.

[0082] The business process development system provided in the embodiment of the present application can be applied to business process development equipment, such as computers. Optionally, Figure 13 Shows the hardware structure diagram of the business process development equipment, refer to Figure 13 The hardware structure of the business process development device may include: at least one processor 31 , at least one communication interface 32 , at least one memory 33 and at least one communication bus 34 .

[0083] In the embodiment of the present application, the number of the processor 31, the communication interface 32, the memory 33, and the communication bus 34 is at least one, and the processor 31, the communication interface 32, and the memory 33 communicate with each other through the communication bus 34;

[0084] The processor 31 may be a central processing unit (CPU), or an application-specific integrated circuit (ASIC), or one or more integrated circuits configured to implement the embodiments of the present application;

[0085] The memory 32 may include a high-speed RAM memory, and may also include a non-volatile memory, such as at least one disk memory;

[0086] The memory 33 stores a program, and the processor 31 can call the program stored in the memory 33, wherein the program is used to:

[0087] The main process, sub-process and independent workflow are used to realize the arrangement of the target business process and obtain the business process source file.

[0088] Add the dependent resources to the business process source file to obtain a business process file package.

[0089] The business process file package is compiled by a preset syntax compiler to obtain a business process target file.

[0090] Optionally, the detailed functions and extended functions of the program may refer to the above description.

[0091] An embodiment of the present application further provides a storage medium, which may store a program suitable for execution by a processor, wherein the program is used to:

[0092] The main process, sub-process and independent workflow are used to realize the arrangement of the target business process and obtain the business process source file.

[0093] Add the dependent resources to the business process source file to obtain a business process file package.

[0094] The business process file package is compiled by a preset syntax compiler to obtain a business process target file.

[0095] Optionally, the detailed functions and extended functions of the program may refer to the above description.

[0096] In summary:

[0097] The embodiment of the present application includes a main process for providing a total entrance for the target business process, a sub-process for realizing the internal independent functions of the main process and sharing the execution space with the main process, and an independent workflow for executing business in parallel with the main process and enjoying an independent execution space. Among them, the main process and the independent workflow pass variables through input parameters and output parameters, and the main process and the sub-process pass variables through global variables. The main process, sub-process and independent workflow can all contain a level of nodes or nested nodes containing multiple levels, and each level is provided with a starting ID, and each node of each level is provided with a running ID and a next step ID; wherein, the starting ID of the level is used to identify the starting running node of the level, the running ID of the node is used to uniquely identify the node, and the next step ID of the node is used to identify the node to which the node needs to be routed after executing the internal business. Through the starting ID, running ID and next step ID, it is beneficial to use various dynamic logical relationships to connect all nodes in series. Furthermore, the nodes include process control nodes for implementing logical relationships between nodes and process function nodes for implementing general functions. The process control nodes and process function nodes implement specific functions through a preset domain-specific language DSL and preset functional plug-in addins. In the embodiment of the present application, the functional entity part combined with the specific application scenario is implemented by the domain-specific language DSL and preset functional plug-in addins, while the process representation and scheduling of the target business process are independently implemented by the main process, sub-process and independent workflow, without relying on other services. Therefore, it has the characteristics of being lightweight and convenient for quantitative deployment in actual applications.

[0098] Finally, it should be noted that, in this document, relational terms such as first and second, etc., are used only to distinguish one entity or operation from another entity or operation, and do not necessarily require or imply any actual relationship or order between these entities or operations. Moreover, the terms "comprises," "comprising," or any other variations thereof are intended to cover non-exclusive inclusion, such that a process, method, article, or device comprising a series of elements includes not only those elements, but also other elements not explicitly listed, or elements inherent to such process, method, article, or device. In the absence of further limitations, an element defined by the phrase "comprising a ..." does not exclude the presence of additional identical elements in the process, method, article, or device comprising the element.

[0099] The various embodiments in this specification are described in a progressive manner, and each embodiment focuses on the differences from other embodiments. The various embodiments can be combined as needed, and the same or similar parts can be referenced to each other.

[0100] The above description of the disclosed embodiments is intended to enable one skilled in the art to implement or use the present application. Various modifications to these embodiments will be readily apparent to one skilled in the art, and the general principles defined herein may be implemented in other embodiments without departing from the spirit or scope of the present application. Therefore, the present application is not limited to the embodiments shown herein, but is intended to conform to the widest scope consistent with the principles and novel features disclosed herein.

Claims

1. A business process development system, characterized in that: include: A main process containing zero or more sub-processes, wherein the main process is provided with a general entry point for the target business process and is used to implement all or part of the target business process; wherein the sub-processes are used to implement independent functions within the main process and share the execution space with the main process; Independent workflows are used to implement business processes that are parallel to the main process and have independent execution space; The main process and the independent workflow transfer variables through input parameters and output parameters, and the main process and the sub-process transfer variables through global variables; The main process, sub-process and independent workflow all contain one level of nodes or nested nodes containing multiple levels; each level has a start ID, and each node of each level has a run ID and a next step ID; wherein the start ID of the level is used to identify the starting run node of the level, the run ID of the node is used to identify the node, and the next step ID of the node is used to identify the node to which the node needs to be routed after executing its internal business; The nodes include process control nodes for realizing logical relationships between nodes and process function nodes for realizing general functions. The process control nodes and the process function nodes realize entity functions through a preset domain-specific language DSL and preset function plug-ins addins.

2. The system according to claim 1, wherein: The attributes of the main process are configured through a first attribute file, and the attributes of the main process include a project ID and a flow ID of a sub-process; The sub-process is a code segment marked by a tag in the main process. The attributes of the sub-process are configured through a second attribute file. The attributes of the sub-process include the name and ID of the sub-process.

3. The system according to claim 1, wherein: The process control node includes: Condition judgment node, multi-condition judgment node, pre-condition loop node, post-condition loop node, loop traversal node, exception capture node, event trigger node, parallel execution node, sub-process wake-up node, independent workflow wake-up node and external workflow wake-up node; The process function nodes include: abort loop node, pause execution node, continue execution node, exception throwing node, input parameter setting node, output parameter setting node, global assignment node, local assignment node and instruction execution node.

4. The system according to claim 3, characterized in that The conditional judgment node includes a true branch and a false branch, and the conditional judgment node is directed to be executed according to the execution result of the DSL.

5. The system according to claim 3, wherein: The multi-condition judgment node includes multiple conditional branches. The multi-condition judgment node is matched through the execution result of the DSL and directed to execution according to the matching result.

6. The system according to claim 3, wherein: The pre-conditional loop node includes a loop branch, and the pre-conditional loop node determines whether to cyclically execute the loop branch according to the execution result of the DSL.

7. The system according to claim 3, wherein: The post-conditional loop node includes a loop branch. After executing the loop branch once, the post-conditional loop node determines whether to cyclically execute the loop branch based on the execution result of the DSL.

8. The system according to claim 3, wherein: The loop traversal node includes a loop branch, which is used to loop through the DSL container list through a DSL iterator variable and execute the loop branch according to the item of the traversed DSL container list.

9. The system according to claim 3, wherein: The exception capture node is used to execute the business in a protected manner and capture exceptions during execution; If the exception capture node is set with a number of attempts, the error is ignored and the service is attempted again within the number of attempts.

10. A business process development method, characterized in that: include: Using the system according to any one of claims 1 to 9 to implement the orchestration of the target business process and obtain the business process source file; Adding dependent resources to the business process source file to obtain a business process file package; The business process file package is compiled by a preset syntax compiler to obtain a business process target file.

Citation Information

Patent Citations

  • Financial self-service terminal service flow development method and device and terminal device

    CN109324791A

  • Robot process automation multi-tool integration method and system

    CN111798216A