CN112181367A - Configurable business process model - Google Patents
Configurable business process model Download PDFInfo
- Publication number
- CN112181367A CN112181367A CN201910599432.1A CN201910599432A CN112181367A CN 112181367 A CN112181367 A CN 112181367A CN 201910599432 A CN201910599432 A CN 201910599432A CN 112181367 A CN112181367 A CN 112181367A
- Authority
- CN
- China
- Prior art keywords
- node
- nodes
- child
- business
- rule
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/20—Software design
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- General Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Stored Programmes (AREA)
Abstract
The invention provides a configurable business process model which mainly comprises a rule tree, a decision table and a business flow module, wherein the rule tree is mainly realized aiming at various judgment logics in a business process; after the business flow can modularize the business, the business flow sequence and the judgment rule are adjusted to realize complex and changeable business logic; the decision table corresponds to the rule tree and is freely realized in the service system, and the main point is that the corresponding service process is triggered through the result after the rule judgment. The invention can interact with the service system in the form of micro-service deployment, and can be integrated into the service system in the form of SDK package.
Description
Technical Field
The invention belongs to the technical field of computer software development and application, and particularly relates to a configurable business process model.
Background
In the enterprise-level project field, user requirements are complex and varied. If the relevant service logic is realized only through the code, the code readability is poor, and the subsequent modification and expansion are easy to make mistakes, and need to be reissued, so that the flexibility is poor.
At present, the technical solutions for implementing such services in the industry are mainly divided into two types, the first type uses a dynamic language, and an operation logic is dynamically modified in the program operation process. For example, a Groovy script is used in a java project, code logic is dynamically configured, the method has the advantages of being flexible and universal, complex functions can be realized in the method, the method has the disadvantages that time consumption is more likely, the simple script is executed slowly for the first time, the script is executed quickly after being cached, and preheating can be considered; the second approach is to implement the button logic through the configuration platform using a rules engine, such as the Drools rules engine used in the java project.
Disclosure of Invention
The invention aims to provide a lightweight configurable business process model for overcoming the problems of complexity, heaviness and difficulty in fast integration of the existing technical schemes into the existing project by referring to the existing technical schemes, and the lightweight configurable business process model can interact with a business system in a micro-service deployment mode and can be integrated into the business system in an SDK (software development kit) package mode.
The technical scheme of the invention is as follows:
a configurable business process model, comprising: the system mainly comprises a rule tree, a decision table and a service flow module, wherein the rule tree is a light-weight service rule engine and is mainly realized aiming at various judgment logics in the service process; the business flow is a light business process engine, and can adjust the business process sequence and the judgment rule to realize complex and changeable business logic after the business is modularized; the decision table corresponds to the rule tree and is freely realized in the service system, and the main point is that the corresponding service process is triggered through the result after the rule judgment.
The rule tree is a business rule engine based on a behavior tree, leaf nodes extending from the tree execute instructions for controlling objects, and various combined nodes form branches of the tree to control the trend of the instructions so as to form a series of instructions.
The nodes comprise behavior nodes and control nodes; the node of the behavior node executing the actual service operation can have a return value and a state; the control node only controls the behavior of the node and does not relate to specific service operation.
The control nodes comprise sequential, selective, parallel and modified nodes, and the control nodes are only related to the execution conditions or the execution sequence of the child nodes; the selection node selects one of the child nodes to execute according to the condition; the sequential nodes sequentially execute all the child nodes, and the next child node can start after the previous child node is completely executed; the parallel nodes execute all the child nodes at the same time, and the execution of the next child node does not need to wait until the operation of the previous child node is finished; the modified node only comprises one child node and is used for controlling the behavior of the child node, the cycle can control the execution times of the child node, the negation can negate the return value of the child node, the delay can be delayed before the child node is executed, and the child node is executed after waiting for the triggering of a certain event.
The behavior node comprises an output and a state return; only the behavior node contains output, the input and output values can be stored in the node, and the node can be called to obtain the output value in the time before the whole system logic flow is finished; except for the root node, each node contains a state return, and the child node can inform the parent node of the current execution state in a callback function or observer mode.
The invention has the following advantages:
static property: the static property directly brings the advantages that the planning of the system does not need to be dynamically adjusted during operation, and convenience is brought to much optimization and pre-editing.
Intuition: the running logic of the system is very intuitive represented in a tree form, and a graphical editor can be derived for editing the system behavior.
The reusability is as follows: the reusability of the behavior nodes (specific business logic) is high; through abstraction of the modules, the nodes can be freely combined.
Expansibility: the behavior nodes can be continuously expanded and developed for the second time, almost can cover the logic requirements of most systems, and can also easily tailor new behavior logic for new projects.
Modularization: the system combination is based on modules, and a system logic meeting the requirements can be quickly combined only by corresponding module inlets with other nodes
Serving: the system is only used as a behavior logic control center, the specific business logic is realized by the relevant business system, and the general business can be realized at the rule engine
Drawings
FIG. 1 is a configurable business process model system architecture diagram;
FIG. 2 is a select node execution mode;
FIG. 3 is a sequential node execution mode;
FIG. 4 is a parallel node execution mode.
Detailed Description
As shown in fig. 1, the scheme mainly implements a configurable business process model based on three modules, namely a rule tree, a decision table and a business flow, and implements efficient and convenient business logic configuration. The rule tree is a light-weight business rule engine and is mainly realized aiming at various judgment logics in a business process. The business flow is a light business process engine, and can realize complex and changeable business logic by adjusting the business process sequence and the judgment rule after the business is modularized. The decision table corresponds to the rule tree and is freely realized in the service system, and the main point is that the corresponding service process is triggered through the result after the rule judgment.
A rule tree is a business rule engine based on a behavior tree, similar to a finite state machine, which is a common way in game AI design to control some column actions of an AI through well-defined nodes. Leaf nodes extending from the tree execute instructions to control the object. The various combination nodes form branches of a tree to control the direction of instructions to form a series of instructions. In enterprise-level development, the business rule engine is designed by taking the thought of a behavior tree as a reference. The general idea is that the behaviors are separated from the control, no association exists between the behaviors, the system logic is realized by the control, the behaviors can be developed for the second time, and the control can be exhaustive.
Business rules Engine terminology definition:
and (3) node: the basic elements in the system are the base classes of all the elements;
behavior nodes: the node executing the actual service operation may have a return value and a state;
the control node: only the node is subjected to behavior control, and specific service operation is not involved;
precondition: judging whether to execute before executing the node;
post-processing conditions: whether to continue executing the child nodes after the nodes are executed;
a module: the node tree formed by connecting a plurality of nodes and conditions only has one entrance;
module interface: the node entering a module has no business operation and only makes module connection.
The control nodes comprise sequence, selection, parallelism, modification, random selection and preferential selection. The control node associates only the execution conditions or execution order of its child nodes. The control node has no return value, and the control node can have a precondition and a postnode.
As shown in fig. 2, selecting a node selects one of the child nodes to execute according to the condition.
As shown in FIG. 3, the sequence node executes all the child nodes in sequence, and the next child node needs to be executed after the previous child node is executed, which refers to the execution sequence 1 → 2 → 3 in FIG. 3.
As shown in FIG. 4, the parallel nodes execute all the child nodes simultaneously (multithreading), and the execution of the next child node does not need to wait until the execution of the previous child node is finished.
Random selection: and randomly selecting one node to execute.
And (3) preferential selection: and presetting a priority judgment condition in the node in advance, and selecting the node to execute according to the priority.
The modified node comprises circulation, negation, time delay, repetition, waiting and the like, and only comprises one child node for controlling the behavior of the child node. The loop may control the number of times a child node executes, the negation may be negated on a child node return value (boolean value), the delay may be delayed before the child node is executed, and it may wait for the child node to be executed after some event has triggered.
The behavior node includes three states, i.e., submitted, failed, and running, and the output values are not limited, and may be list, int, object, map, etc. Such as radio boxes, multiple boxes, fills, interface calls, template outputs, etc. The behavior node can be developed secondarily.
The behavior nodes contain outputs and state returns.
And (3) outputting: only the behavior node contains output, the input and output values are stored in the node, and the node can be called to obtain the output value in the time before the logic flow of the whole system is finished.
And (3) returning the state: except for the root node, each node contains a state return, and the child node can inform the parent node of the current execution state in a callback function or observer mode.
Each node can add a condition before and after to control whether the path of the node or the path after the node is executed. For example, there are three child nodes below the sequence node, and if the first child node is executed without the precondition, the second child node is executed by skipping the node. The system logic is simplified through the front-back conditions, and the maintenance personnel can think conveniently.
Claims (5)
1. A configurable business process model, comprising: the system mainly comprises a rule tree, a decision table and a service flow module, wherein the rule tree is a light-weight service rule engine and is mainly realized aiming at various judgment logics in the service process; the business flow is a light business process engine, and can adjust the business process sequence and the judgment rule to realize complex and changeable business logic after the business is modularized; the decision table corresponds to the rule tree and is freely realized in the service system, and the main point is that the corresponding service process is triggered through the result after the rule judgment.
2. The configurable business process model of claim 1, wherein: the rule tree is a business rule engine based on a behavior tree, leaf nodes extending from the tree execute instructions for controlling objects, and various combined nodes form branches of the tree to control the trend of the instructions so as to form a series of instructions.
3. The configurable business process model of claim 2, wherein: the nodes comprise behavior nodes and control nodes; the node of the behavior node executing the actual service operation can have a return value and a state; the control node only controls the behavior of the node and does not relate to specific service operation.
4. The configurable business process model of claim 3, wherein: the control nodes comprise sequential, selective, parallel and modified nodes, and the control nodes are only related to the execution conditions or the execution sequence of the child nodes; the selection node selects one of the child nodes to execute according to the condition; the sequential nodes sequentially execute all the child nodes, and the next child node can start after the previous child node is completely executed; the parallel nodes execute all the child nodes at the same time, and the execution of the next child node does not need to wait until the operation of the previous child node is finished; the modified node only comprises one child node and is used for controlling the behavior of the child node, the cycle can control the execution times of the child node, the negation can negate the return value of the child node, the delay can be delayed before the child node is executed, and the child node is executed after waiting for the triggering of a certain event.
5. The configurable business process model of claim 3, wherein: the behavior node comprises an output and a state return; only the behavior node contains output, the input and output values can be stored in the node, and the node can be called to obtain the output value in the time before the whole system logic flow is finished; except for the root node, each node contains a state return, and the child node can inform the parent node of the current execution state in a callback function or observer mode.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910599432.1A CN112181367A (en) | 2019-07-04 | 2019-07-04 | Configurable business process model |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910599432.1A CN112181367A (en) | 2019-07-04 | 2019-07-04 | Configurable business process model |
Publications (1)
Publication Number | Publication Date |
---|---|
CN112181367A true CN112181367A (en) | 2021-01-05 |
Family
ID=73916015
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910599432.1A Pending CN112181367A (en) | 2019-07-04 | 2019-07-04 | Configurable business process model |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112181367A (en) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112767135A (en) * | 2021-01-26 | 2021-05-07 | 北京健康之家科技有限公司 | Rule engine configuration method and device, storage medium and computer equipment |
CN113065656A (en) * | 2021-03-26 | 2021-07-02 | 龙马智芯(珠海横琴)科技有限公司 | Rule engine configuration method and device, server and readable storage medium |
WO2023004806A1 (en) * | 2021-07-30 | 2023-02-02 | 西门子股份公司 | Device deployment method for ai model, system, and storage medium |
WO2023184241A1 (en) * | 2022-03-30 | 2023-10-05 | 西门子股份公司 | Microservice orchestration method and apparatus, electronic device, and readable medium |
-
2019
- 2019-07-04 CN CN201910599432.1A patent/CN112181367A/en active Pending
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112767135A (en) * | 2021-01-26 | 2021-05-07 | 北京健康之家科技有限公司 | Rule engine configuration method and device, storage medium and computer equipment |
CN113065656A (en) * | 2021-03-26 | 2021-07-02 | 龙马智芯(珠海横琴)科技有限公司 | Rule engine configuration method and device, server and readable storage medium |
CN113065656B (en) * | 2021-03-26 | 2022-09-30 | 龙马智芯(珠海横琴)科技有限公司 | Rule engine configuration method and device, server and readable storage medium |
WO2023004806A1 (en) * | 2021-07-30 | 2023-02-02 | 西门子股份公司 | Device deployment method for ai model, system, and storage medium |
WO2023184241A1 (en) * | 2022-03-30 | 2023-10-05 | 西门子股份公司 | Microservice orchestration method and apparatus, electronic device, and readable medium |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN112181367A (en) | Configurable business process model | |
Zhou et al. | Control of nondeterministic discrete-event systems for bisimulation equivalence | |
US6925336B2 (en) | Control unit for electronic microcontrollers or microprocessors and method of making | |
CN106681820B (en) | Extensible big data computing method based on message combination | |
Coronado et al. | Development of intelligent behaviors for social robots via user-friendly and modular programming tools | |
CN102520925A (en) | AADL2TASM (Architecture Analysis and Design Language-to-Timed Abstract State Machine) model transformation method | |
Feldmann et al. | Specification, design, and implementation of logic controllers based on colored Petri net models and the standard IEC 1131. I. Specification and design | |
Verma et al. | Optimal adaptation in web processes with coordination constraints | |
Ballarini et al. | Petri nets compositional modeling and verification of flexible manufacturing systems | |
US9323242B2 (en) | Method for setting an operating status | |
CN103135975B (en) | The element sequence auto arranging method of control strategy configuration and logical connection method thereof | |
CN102063333A (en) | Recursive structure workflow model and dispatching method thereof | |
Prenzel et al. | Dynamic software updating of IEC 61499 implementation using erlang runtime system | |
Murray | Specifying agent behaviors with UML statecharts and StatEdit | |
Yu et al. | An engineerable procedure description method for industrial automation | |
Luder et al. | Formal models for the verification of IEC 61499 function block based control applications | |
Hobbs et al. | Perception computing-aware controller synthesis for autonomous systems | |
CN115857882A (en) | Integrated development environment system | |
Armbrust et al. | Verification of behaviour networks using finite-state automata | |
Graja et al. | Demonstrating BPMN4CPS: Modeling anc verification of cyber-physical systems | |
US7181704B1 (en) | Method and system for designing integrated circuits using implementation directives | |
Zurawski | Verifying correctness of interfaces of design models of manufacturing systems using functional abstractions | |
US20190011893A1 (en) | Method for generating a switching sequence in an industrial system, and device | |
Beaumont et al. | Compositional design of asynchronous circuits from behavioural concepts | |
Christmann et al. | Priority scheduling in SDL |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
WD01 | Invention patent application deemed withdrawn after publication |
Application publication date: 20210105 |
|
WD01 | Invention patent application deemed withdrawn after publication |