CN115185616A - Business rule engine and processing method thereof - Google Patents

Business rule engine and processing method thereof Download PDF

Info

Publication number
CN115185616A
CN115185616A CN202211112487.3A CN202211112487A CN115185616A CN 115185616 A CN115185616 A CN 115185616A CN 202211112487 A CN202211112487 A CN 202211112487A CN 115185616 A CN115185616 A CN 115185616A
Authority
CN
China
Prior art keywords
rule
business
rules
service
rule matching
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.)
Granted
Application number
CN202211112487.3A
Other languages
Chinese (zh)
Other versions
CN115185616B (en
Inventor
莫中平
陈增勇
杨康
王功勋
王帅帅
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Shenzhen Yishi Huolala Technology Co Ltd
Original Assignee
Shenzhen Yishi Huolala Technology Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Shenzhen Yishi Huolala Technology Co Ltd filed Critical Shenzhen Yishi Huolala Technology Co Ltd
Priority to CN202211112487.3A priority Critical patent/CN115185616B/en
Publication of CN115185616A publication Critical patent/CN115185616A/en
Application granted granted Critical
Publication of CN115185616B publication Critical patent/CN115185616B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/448Execution paradigms, e.g. implementations of programming paradigms
    • G06F9/4482Procedural
    • G06F9/4484Executing subprograms
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/448Execution paradigms, e.g. implementations of programming paradigms
    • G06F9/4488Object-oriented
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N5/00Computing arrangements using knowledge-based models
    • G06N5/04Inference or reasoning models
    • G06N5/041Abduction
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N5/00Computing arrangements using knowledge-based models
    • G06N5/04Inference or reasoning models
    • G06N5/042Backward inferencing

Abstract

The application discloses a business rule engine. The business rule engine comprises a rule engine core packet, and the rule engine core packet comprises a registration interface and a verification interface. The registration interface is used for generating business rule matching chains of the marketing tools, wherein each marketing tool corresponds to one business rule matching chain, and each business rule matching chain comprises a plurality of business rules which are arranged according to execution steps. The check interface is used for: when the number of the service rule matching chains to be verified is smaller than or equal to a preset number threshold, serially verifying the plurality of service rule matching chains; and when the business rule matching chains to be verified are larger than the quantity threshold value, rearranging the execution sequence of the business rules in all the business rule matching chains to be verified, and verifying the plurality of business rules according to the rearranged execution sequence. The application also discloses a processing method of the business rule engine. According to different scenes of verification, the most suitable verification sequence is dynamically adjusted, and the verification efficiency is improved.

Description

Business rule engine and processing method thereof
Technical Field
The present application relates to the field of internet platform technologies, and in particular, to a business rule engine and a processing method of the business rule engine.
Background
In the field of operation growth business, the retained practical marketing tool needs to be continuously improved, a new marketing tool needs to be continuously created to meet the growth of business volume, and the requirement on the technical side is that the version iteration of the marketing tool needs to be stable and fast. Most of the iterative upgrade of the marketing tool is the adjustment of business rules, and the business rules of the existing tool are often reused when a new marketing tool is born in the early stage. The technical side makes it important for the business rules to be stripped from the business logic to be checked independently and for the rule pool to be established. The conventional technical means in the market at present is to use a rule engine to perform unified arrangement and verification on business rules so as to achieve the goal of stability and quickness.
At present, DROOLS is adopted as a complied type in a mature rule engine in the market, and QLEXPRESS, GROOVY, JEXL and the like are adopted as an interpreted type. The compiling type rule engine is basically realized based on RETE algorithm, uses forward reasoning, carries out reasoning mode according to the direction of deducing conclusion from conditions, starts from a group of facts, and uses a certain reasoning rule to prove the establishment of target facts or propositions. The method is suitable for business scenes with more rules than facts, such as case audition (legal terms are far more than evidence of facts), insurance purchase (treaty of products is far more than relevant information of insurants), and the like. And the business rule volume of the marketing tool is far smaller than the customer information, and the marketing tool is statically checked one by one, so that the efficiency is low.
Disclosure of Invention
In order to solve at least one technical problem in the foregoing background art, embodiments of the present application provide a business rule engine and a processing method of the business rule engine.
The business rule engine of the embodiment of the application comprises a rule engine core package, wherein the rule engine core package comprises:
the system comprises a registration interface, a service rule matching module and a service rule matching module, wherein the registration interface is used for generating a service rule matching chain of marketing tools, each marketing tool corresponds to one service rule matching chain, and each service rule matching chain comprises a plurality of service rules which are arranged according to execution steps; and
a check interface to: when the service rule matching chains to be verified are smaller than or equal to a preset number threshold, serially verifying the plurality of service rule matching chains; and when the business rule matching chains to be verified are larger than the quantity threshold value, rearranging the execution sequence of the business rules in all the business rule matching chains to be verified, and verifying the plurality of business rules according to the rearranged execution sequence.
In some embodiments, the verification interface is further configured to record an average elapsed time for verifying each business rule;
when serially checking a plurality of business rule matching chains, the checking interface is used for:
based on the average consumed time, performing first reordering on a plurality of service rules in the same ladder from low to high according to the average consumed time in each service rule matching chain; and
and checking a plurality of business rules in the same ladder according to the first reordering.
In some embodiments, when rearranging the execution order of all the business rules in the business rule matching chain to be verified, the verification interface is configured to:
integrating a plurality of service rules of the same step in all service rule matching chains to be verified;
performing second reordering on the service rules in the same step after integration based on the average time consumption, the historical passing rate and the sharing times of the same service rules in the same step after integration; and
and checking the plurality of integrated business rules in the same ladder according to the second reordering.
In some embodiments, the verification interface is further configured to:
and when the service rule is not matched after verification, judging that the marketing tool corresponding to the unmatched service rule is not applicable.
In some embodiments, the business rules engine further comprises:
a rule context data packet for defining all facts used in a business rule;
a rule condition packet for extracting data corresponding to a business rule from the rule context data packet; and
an engine toolkit for defining annotations for business rule orchestration use, and/or for generating orchestration rule information.
In some embodiments, the rule condition package comprises:
a first functional interface for writing data into the factual objects defined in the rule context data packet; and
and the second functional interface is used for reading the data in the rule context data packet and processing the data into the data for judgment in the business rule.
In some embodiments, the rule condition package further includes a tool class, and the tool class is configured to define a writing and/or reading rule of the first functional interface and the second functional interface based on the newly added service rule.
In some embodiments, the business rules include any one or more of constraint class rule conditions, behavior class rule conditions, and derived class rule conditions.
In some embodiments, the business rules engine is developed using the JAVA language, and the rules engine core package, the rules context package, the rules conditions package, and the engine toolkit access the business rules engine by way of JAR packages.
The processing method of the business rule engine of the embodiment of the application comprises the following steps:
the method comprises the following steps of forming business rule matching chains of marketing tools, wherein each marketing tool corresponds to one business rule matching chain, and each business rule matching chain comprises a plurality of business rules which are arranged according to execution steps;
when the service rule matching chains to be verified are smaller than or equal to a preset number threshold, serially verifying the plurality of service rule matching chains; and
and when the business rule matching chains to be verified are larger than the quantity threshold value, rearranging the execution sequence of the business rules in all the business rule matching chains to be verified, and verifying the plurality of business rules according to the rearranged execution sequence.
In the business rule engine and the processing method thereof, a rule matching chain of a marketing tool is generated, a plurality of business rules are arranged in the rule matching chain according to different execution steps, when verification is triggered, the business rule matching chain is less, the business rule matching chains are directly connected in series, and when the business rule matching chain is more, all the rule matching chains are integrated again to arrange the business rules to be verified according to a new execution sequence, so that the most suitable verification sequence is dynamically adjusted according to different verification scenes, and the verification efficiency is improved.
Additional aspects and advantages of embodiments of the present application will be set forth in part in the description which follows and, in part, will be obvious from the description, or may be learned by practice of the present application.
Drawings
The above and/or additional aspects and advantages of the present application will become apparent and readily appreciated from the following description of the embodiments, taken in conjunction with the accompanying drawings of which:
FIG. 1 is a block diagram of a business rules engine in accordance with certain embodiments of the present application;
FIG. 2 is a functional framework diagram of a validation using a business rules engine in accordance with certain embodiments of the present application;
FIG. 3 is a flow chart illustrating a method of processing by a business rules engine in accordance with certain embodiments of the present application.
Detailed Description
Reference will now be made in detail to embodiments of the present application, examples of which are illustrated in the accompanying drawings, wherein like reference numerals refer to the same or similar elements or elements having the same or similar functions throughout. The embodiments described below by referring to the drawings are exemplary only for the purpose of explaining the embodiments of the present application, and are not to be construed as limiting the embodiments of the present application.
Referring to fig. 1, fig. 1 is a block diagram of a business rule engine 10 according to some embodiments of the present application, where the business rule engine 10 includes a rule engine core package 11, and the rule engine core package 11 includes a registration interface 111 and a verification interface 112. The registration interface 111 is configured to generate business rule matching chains of the marketing tools, where each marketing tool corresponds to one business rule matching chain, and the business rule matching chain includes a plurality of business rules arranged in a ladder. The verification interface 112 is configured to verify the multiple service rule matching chains in series when the service rule matching chains to be verified are less than or equal to a preset number threshold; and when the business rule matching chains to be verified are larger than the quantity threshold value, rearranging the execution sequence of the business rules in all the business rule matching chains to be verified, and verifying the plurality of business rules according to the rearranged execution sequence.
In the business rule engine 10 of the embodiment of the present application, a rule matching chain of a marketing tool is generated, a plurality of business rules are arranged in the rule matching chain according to different execution steps, when verification is triggered, for the case that the number of business rule matching chains is small, a plurality of business rule matching chains are directly serialized in series, for the case that the number of business rule matching chains is large, all the rule matching chains are integrated again, so as to arrange the business rules to be verified according to a new execution sequence, thus, according to different scenes of verification, the most suitable verification sequence is dynamically adjusted, and the efficiency of verification is improved.
Specifically, the registration interface 111 is configured to generate a business rule matching chain of the marketing tool, where the business rule matching chain corresponds to the marketing tool one to one, and the rule engine core package 11 generates the business rule matching chain at a machine of each marketing tool. The business rule matching chain comprises a plurality of business rules arranged according to execution steps, the execution steps represent the verified sequence in the business rule matching chain, the same execution step can be provided with a plurality of business rules in parallel, and one business rule matching chain can comprise one or more execution steps.
In one example, two functional interfaces are designed for generating a business rule matching chain, namely a rule decision functional interface and a rule execution functional interface. Rule decision functional interface (Boolean Function): the rule judging functions generated by all rule conditions are stored in the Array Linked List according to the arranging sequence. Rule execution Function interface (Execute Function): and the rule judging function is used for sequentially executing the rule judging functions in the rule condition list, and assembling each rule condition judging result to obtain a final executing result of the service rule.
The verification interface 112 is configured to execute a plurality of business rule matching chains to be verified according to the entries. Specifically, when the business rule matching chains needing to be checked are smaller than or equal to a preset number threshold, the multiple business rule matching chains are checked in series. And when the service rule matching chain needing to be checked is larger than the quantity threshold value, rearranging the execution sequence of the service rules in the service rule matching chain to be checked, and checking the plurality of service rules according to the rearranged execution sequence. The quantity threshold may be set according to different processing capabilities of the business rule engine 10, for example, the quantity threshold may be two, three, four, five, and the like, which is not limited herein. According to different scenes of verification, different verification strategies are adopted, the most suitable verification sequence is dynamically adjusted, and the verification efficiency is improved.
Referring still to fig. 1, in some embodiments, when a mismatch between services is verified, it is determined that the marketing tool corresponding to the mismatched service rule is not applicable. If the applicable marketing tool needs to be determined, all the business rules in the business rule matching chain corresponding to the marketing tool need to be verified successfully, so that only one business rule is verified to be unmatched, the business rule matching chain where the business rule is located can be determined to be unmatched, the marketing tool corresponding to the business rule matching chain is not applicable, and the rest of the business rules in the business rule matching chain do not need to be verified. Therefore, the embodiment adopts the core idea of reverse reasoning, the rule conditions of the business rules are compiled into the business rule matching chain, when a certain business rule condition is not met, the verification of the following business rules can be abandoned, the efficiency is greatly improved, and the method and the system are very suitable for the fields of pursuing efficiency such as operation growth business and the like.
With continued reference to FIG. 1, in some embodiments, the verification interface 112 is further configured to record an average elapsed time for verifying each business rule. When serially checking multiple business rule matching chains, the checking interface 112 is specifically configured to:
based on average consumed time, performing first reordering on a plurality of business rules in the same ladder in each business rule matching chain according to the average consumed time from low to high; and checking the plurality of business rules in the same ladder according to the first reordering.
Specifically, the checking interface 112 records the average time consumption for checking each business rule, wherein the average time consumption for checking any number of the same business rules in the past can be recorded, taking the average time consumption for recording 10 same business rules in the past as an example,
Figure DEST_PATH_IMAGE002
wherein, in the step (A),
Figure DEST_PATH_IMAGE004
the average elapsed time for checking for some same business rule 10 times in the past. It can be understood that the smaller the calculated average time consumption for checking the business rule, the faster the representative is checking the business rule.
Further, when a plurality of service rule matching chains are checked in series, on the basis of average consumed time, a plurality of service rules in the same ladder are firstly reordered from low to high according to average consumed time in each service rule matching chain, specifically, a plurality of service rules with different average consumed time can exist in the same service rule matching chain, the service rules are firstly reordered, and then the plurality of service rules in the same ladder are checked according to the first ordering, namely, the service rules with lower average consumed time are checked preferentially for the plurality of service rules in the same ladder, so that the check result of the whole service rule matching chain is obtained as soon as possible. Of course, for the business rules in different steps, the steps are also checked in sequence.
Continuing with reference to FIG. 1, in some embodiments, in rearranging the execution order of all business rules in the business rule matching chain to be verified, the verification interface 112 is configured to:
integrating a plurality of service rules of the same step in all service rule matching chains to be verified; performing second reordering on the service rules in the same step after integration based on average time consumption, historical passing rate and sharing times of the same service rules in the same step after integration; and checking the plurality of business rules in the same integrated ladder according to the second reordering.
And integrating the plurality of business rules of the same ladder in the plurality of business rule matching chains, for example, integrating the business rule of the first ladder of all the business rule matching chains to be verified, wherein the integration includes but is not limited to merging the same business rules. And performing second reordering on the integrated business rules in the same step based on the average time consumption, the historical passing rate and the sharing times of the same business rules in the same step after integration, for example:
Figure DEST_PATH_IMAGE006
wherein, S is a measurement parameter for performing the second reordering, the smaller S is, the earlier the position of the corresponding business rule when performing the second reordering is, R is the historical passing rate, and m is the number of times of sharing a certain business rule in the same step of the matching chain of different rules. It is understood that the smaller S, the more efficient per unit time indicating that the corresponding business rule is verified, and should be verified preferentially. And checking the plurality of integrated business rules in the same ladder according to the second reordering, thereby greatly improving the overall matching efficiency. Of course, the present embodiment is applicable to a plurality of business rules in any staircase, such as the first staircase, the second staircase, and the third staircase, and is not limited thereto.
Continuing to refer to FIG. 1, in some embodiments, the business rules engine 10 further includes a rule context data package 12, a rule condition package 13, and an engine toolkit 14; the rule context packet 12 is used to define all facts used in the business rules; the rule condition packet 13 is used for extracting data corresponding to the business rule from the rule context data packet 12; the engine toolkit 14 is used to define annotations used by business rule orchestration and/or to generate orchestration rule information.
Specifically, the business rule engine 10 is developed by using JAVA language, and the rule engine core package 11, the rule context data package 12, the rule condition package 13, and the engine toolkit 14 are accessed to the business rule engine 10 by means of JAR package, thus providing a solution for quick access of the existing system developed by using JAVA language, which can be referred to by software tools, defining a flexible functional interface, and being open to modification. In addition, the JAVA strong type language is used for realizing rule judgment, the cost of learning and troubleshooting is reduced, and the existing rule conditions can be quickly configured and quoted. The utility model provides a practical instrument can be fast from the data generation rule arrangement information that the service personnel configured, has reduced the access cost.
As shown in FIG. 1, the rule context packet 12 is used to define all facts used in the business rule, and in one example, the rule condition packet 13 includes a first functional interface 121 and a second functional interface 122. The first functional interface 121 is used to write data into the fact object defined in the rule context packet 12; the second functional interface 122 is used to read the data in the rule context packet 12 and process the data into the business rule for determination. In particular, the first functional interface 121 may provide a Context data function (Context Provider): data is written to the rule context data (the fact object defined in the rule context data packet 12). The second functional interface 122 may be a regular fetch decision data function (Context store): and reading the data in the rule context data and processing the data into data for judgment in the rule condition.
In one marketing example, the self-defined business rule is that the activity limit vehicle type is a small bread or a small van, the business rule check is triggered by an order prepayment event, the data to be judged is the vehicle type small bread in the order prepayment information, the data source is the event data of the KAFKA order prepayment, and the function of providing the context data function is that the order prepayment information is inquired from the data source and written into the rule context data. Rule context data is a large object that contains all the data used in the execution of the rule. The function of taking data to be determined is to read the order car type value such as bread from the order prepayment information. The service rule judgment is to judge whether the bread is in the custom service rule bread or the small van, and the judgment result is passed.
Referring to fig. 1, the rule condition package 13 is used to extract data corresponding to the business rules from the rule context data package 12, and specifically, when the marketing tool system configures the selected business rules, the rule condition package 13 utilizes the Enable Auto Configuration function of the Spring Boot to inject the corresponding fetch decision data function Bean providing the context data function and the rules into the marketing tool system. Necessary configuration information is injected into the marketing tool system by using the Environment Post Processor, so that the marketing tool system can directly program and use the existing business rules.
In one example, the rule condition package 13 further includes a tool class for defining writing and/or reading rules of the first functional interface 121 and the second functional interface 122 based on the new service rule. Specifically, the rule condition package 13 provides a tool class for providing a context data function and a decision data function of a rule when a new business rule is registered, supports a new addition of a unique business rule to the marketing tool system, and also provides a tool class for covering the decision data function of the business rule, and supports the marketing tool system to perform secondary development.
As shown in FIG. 1, the engine toolkit 14 contains annotations used in the orchestration of business rules, tools for generating information about the orchestration rules, and the like. In one example, the engine toolkit 14 may provide 8 annotations supporting identifying orchestration business rules, where each annotation may have a different representative function, e.g., a first annotation to support deferred execution of a behavior-class business rule to obtain results of other business rules, a second annotation to support derived-class business rules, the business rules grouped by name, and the business rules within the group are executed only after other business rules are activated. The tool for arranging the rule information is used for supporting the analysis of any object for storing the active business rule information and generating the business rule arranging information by analyzing the annotation information.
It should be noted that the business rules according to the embodiment of the present application include any one or more of constraint class rule conditions, behavior class rule conditions, and derived class rule conditions. The business rules include, for example: age is greater than 10, type of decision in business rules is for example: the type is determined to be "greater than" in the business rules described above. Constraint class rule conditions: the restriction conditions for the admission or completion of a certain process node in the service flow are relatively independent. Behavior class rule conditions: dynamic rules in business, rules where a certain event occurs or a condition is triggered are satisfied. Derived class rule conditions: new entities are derived using logical reasoning or inference.
Referring to fig. 2, fig. 2 is a functional framework diagram of some embodiments of the present disclosure, in which a business rule engine 10 is used for verification, business personnel create a marketing campaign, register and arrange business rules by using an engine toolkit 14, generate a business rule matching chain, trigger the marketing campaign according to an occurrence event, prepare data to be determined, determine the business rules, generate a determination result, and perform business logic processing on the marketing campaign according to the determination result. The core process of the business rule judgment is as follows: acquiring data to be judged, judging, recording a judgment result and returning the result. The specific determination method may be combined with the above description of the business rule engine 10, and is not described herein again.
Referring to fig. 3, fig. 3 is a schematic flow chart of a processing method of a business rule engine according to some embodiments of the present application, where the processing method of the business rule engine includes the steps of:
generating a business rule matching chain of the marketing tools, wherein each marketing tool corresponds to one business rule matching chain, and each business rule matching chain comprises a plurality of business rules which are arranged according to execution steps;
when the service rule matching chains to be verified are smaller than or equal to a preset number threshold, serially verifying the plurality of service rule matching chains; and
and when the business rule matching chains to be verified are larger than the quantity threshold value, rearranging the execution sequence of the business rules in all the business rule matching chains to be verified, and verifying the plurality of business rules according to the rearranged execution sequence.
For details of implementation of the processing method of the business rules engine, reference may be made to the above description of the business rules engine 10, which is not described herein again. It is understood that the processing method of the business rules engine also includes the functions that all the components in the business rules engine 10 can implement, and are not listed here.
In the description herein, reference to the description of the terms "one embodiment," "some embodiments," "an illustrative embodiment," "an example," "a specific example" or "some examples" or the like means that a particular feature, structure, material, or characteristic described in connection with the embodiment or example is included in at least one embodiment or example of the application. In this specification, schematic representations of the above terms do not necessarily refer to the same embodiment or example. Furthermore, the particular features, structures, materials, or characteristics described may be combined in any suitable manner in any one or more embodiments or examples. Moreover, various embodiments or examples and features of various embodiments or examples described in this specification can be combined and combined by one skilled in the art without being mutually inconsistent.
Any process or method descriptions in flow charts or otherwise described herein may be understood as representing modules, segments, or portions of code which include one or more executable instructions for implementing specific logical functions or steps of the process, and the scope of the preferred embodiments of the present application includes other implementations in which functions may be executed out of order from that shown or discussed, including substantially concurrently or in reverse order, depending on the functionality involved, as would be understood by those reasonably skilled in the art of the present application.
Although embodiments of the present application have been shown and described above, it is understood that the above embodiments are exemplary and should not be construed as limiting the present application and that variations, modifications, substitutions and alterations in the above embodiments may be made by those of ordinary skill in the art within the scope of the present application.

Claims (10)

1. A business rules engine comprising a rules engine core package, the rules engine core package comprising:
the system comprises a registration interface, a service rule matching module and a service rule matching module, wherein the registration interface is used for generating a service rule matching chain of marketing tools, each marketing tool corresponds to one service rule matching chain, and each service rule matching chain comprises a plurality of service rules which are arranged according to execution steps; and
a check interface to: when the number of the service rule matching chains to be verified is smaller than or equal to a preset number threshold, serially verifying the plurality of service rule matching chains; and when the business rule matching chains to be verified are larger than the quantity threshold value, rearranging the execution sequence of the business rules in all the business rule matching chains to be verified, and verifying the plurality of business rules according to the rearranged execution sequence.
2. The business rule engine of claim 1 wherein the verification interface is further configured to record an average elapsed time for verifying each business rule;
when the plurality of business rule matching chains are serially checked, the check interface is used for:
based on the average consumed time, performing first reordering on a plurality of service rules in the same ladder from low to high according to the average consumed time in each service rule matching chain; and
and checking a plurality of business rules in the same ladder according to the first reordering.
3. The business rule engine of claim 2 wherein in rearranging the execution order of all business rules to be verified that match the business rules in the chain, the verification interface is configured to:
integrating a plurality of service rules of the same step in all service rule matching chains to be verified;
performing second reordering on the service rules in the same step after integration based on the average time consumption, the historical passing rate and the sharing times of the same service rules in the same step after integration; and
and checking the plurality of integrated business rules in the same ladder according to the second reordering.
4. The business rules engine of claim 1, wherein the check interface is further configured to:
and when the service rule is verified to be unmatched, judging that the marketing tool corresponding to the unmatched service rule is not applicable.
5. A business rules engine as claimed in any one of claims 1 to 4 further comprising:
a rule context data packet for defining all facts used in a business rule;
a rule condition packet for extracting data corresponding to a business rule from the rule context data packet; and
an engine toolkit for defining annotations used in business rule orchestration and/or for generating orchestration rule information.
6. A business rules engine as claimed in claim 5, wherein the rule condition package comprises:
a first functional interface for writing data into the factual objects defined in the rule context data packet; and
and the second functional interface is used for reading the data in the rule context data packet and processing the data into the data for judgment in the business rule.
7. The business rules engine of claim 6, wherein the rule condition package further comprises a tool class, and the tool class is configured to define the writing and/or reading rules of the first functional interface and the second functional interface based on the added business rules.
8. A business rules engine as claimed in claim 5 wherein the business rules include any one or more of constraint class rule conditions, behaviour class rule conditions and derived class rule conditions.
9. The business rules engine of claim 5 wherein the business rules engine is developed using JAVA language, and wherein the rules engine core package, the rule context package, the rule condition package, and the engine toolkit access the business rules engine by way of JAR packages.
10. A processing method of a business rule engine is characterized by comprising the following steps:
generating business rule matching chains of marketing tools, wherein each marketing tool corresponds to one business rule matching chain, and each business rule matching chain comprises a plurality of business rules which are arranged according to execution steps;
when the number of the service rule matching chains to be verified is smaller than or equal to a preset number threshold, serially verifying the plurality of service rule matching chains; and
and when the business rule matching chains to be verified are larger than the quantity threshold value, rearranging the execution sequence of the business rules in all the business rule matching chains to be verified, and verifying the plurality of business rules according to the rearranged execution sequence.
CN202211112487.3A 2022-09-14 2022-09-14 Business rule engine device and processing method of business rule engine Active CN115185616B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202211112487.3A CN115185616B (en) 2022-09-14 2022-09-14 Business rule engine device and processing method of business rule engine

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202211112487.3A CN115185616B (en) 2022-09-14 2022-09-14 Business rule engine device and processing method of business rule engine

Publications (2)

Publication Number Publication Date
CN115185616A true CN115185616A (en) 2022-10-14
CN115185616B CN115185616B (en) 2022-12-13

Family

ID=83524734

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202211112487.3A Active CN115185616B (en) 2022-09-14 2022-09-14 Business rule engine device and processing method of business rule engine

Country Status (1)

Country Link
CN (1) CN115185616B (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116340832A (en) * 2023-05-25 2023-06-27 北京城建智控科技股份有限公司 Train control basic data verification method and device

Citations (25)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO1998021654A1 (en) * 1996-11-14 1998-05-22 Mitsubishi Electric Information Technology Center America, Inc. Log based data architecture for a transactional message queuing system
CA2250797A1 (en) * 1997-11-03 1999-05-03 Marius Minea Static partial order reduction
US20110153861A1 (en) * 2009-12-23 2011-06-23 Abhishek Chauhan Systems and methods for determining a good rss key
CN102292708A (en) * 2008-11-25 2011-12-21 思杰系统有限公司 Systems and Methods for HTTP Callouts for Policies
CN102334111A (en) * 2009-03-30 2012-01-25 亚马逊技术有限公司 For the managed computer network provides the logic network savvy
CN103116498A (en) * 2013-03-07 2013-05-22 徐国庆 Parallel program rule engine and realizing method thereof
CN106101090A (en) * 2016-06-07 2016-11-09 中国建设银行股份有限公司 Operational approach and rule engine system for regulation engine
CN107291716A (en) * 2016-03-30 2017-10-24 阿里巴巴集团控股有限公司 A kind of link data method of calibration and device
US9940182B1 (en) * 2013-09-13 2018-04-10 Stott Creations LLC Business rule engine validation systems and related methods
CN107943878A (en) * 2017-11-14 2018-04-20 北京思特奇信息技术股份有限公司 A kind of Business Rule Engine method and system
CN109582681A (en) * 2018-10-26 2019-04-05 平安科技(深圳)有限公司 Business data processing method, device, computer equipment and storage medium
CN110633160A (en) * 2019-08-22 2019-12-31 浙江大搜车软件技术有限公司 Interface calling method and device, computer equipment and storage medium
CN111241186A (en) * 2020-01-17 2020-06-05 中信银行股份有限公司 Rule-based visual parallel data preparation method, system, equipment and medium
CN111562965A (en) * 2020-04-27 2020-08-21 深圳木成林科技有限公司 Page data verification method and device based on decision tree
CN111813406A (en) * 2020-07-14 2020-10-23 深圳前海移联科技有限公司 Dynamic event-driven model
CN112115518A (en) * 2020-09-28 2020-12-22 中国建设银行股份有限公司 Service data checking method and device
CN112488855A (en) * 2020-11-23 2021-03-12 中国人寿保险股份有限公司 Business verification method and equipment based on rule template
CN112532456A (en) * 2020-12-04 2021-03-19 浪潮云信息技术股份公司 Alarm monitoring method in cloud environment
CN112685410A (en) * 2020-12-25 2021-04-20 中国平安人寿保险股份有限公司 Business rule checking method and device, computer equipment and storage medium
CN112800095A (en) * 2021-04-13 2021-05-14 腾讯科技(深圳)有限公司 Data processing method, device, equipment and storage medium
CN113435861A (en) * 2021-07-15 2021-09-24 支付宝(杭州)信息技术有限公司 Public opinion data-based business operation and maintenance method and device and electronic equipment
CN113779004A (en) * 2021-02-19 2021-12-10 北京沃东天骏信息技术有限公司 Data verification method and device
CN114092116A (en) * 2021-11-26 2022-02-25 浙江唯品会支付服务有限公司 Business rule checking method and device and electronic equipment
CN114896081A (en) * 2022-03-03 2022-08-12 首约科技(北京)有限公司 Method for improving ordering verification efficiency
CN115033816A (en) * 2022-06-27 2022-09-09 中国平安人寿保险股份有限公司 Business processing method and device based on rule engine, computer equipment and medium

Patent Citations (25)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO1998021654A1 (en) * 1996-11-14 1998-05-22 Mitsubishi Electric Information Technology Center America, Inc. Log based data architecture for a transactional message queuing system
CA2250797A1 (en) * 1997-11-03 1999-05-03 Marius Minea Static partial order reduction
CN102292708A (en) * 2008-11-25 2011-12-21 思杰系统有限公司 Systems and Methods for HTTP Callouts for Policies
CN102334111A (en) * 2009-03-30 2012-01-25 亚马逊技术有限公司 For the managed computer network provides the logic network savvy
US20110153861A1 (en) * 2009-12-23 2011-06-23 Abhishek Chauhan Systems and methods for determining a good rss key
CN103116498A (en) * 2013-03-07 2013-05-22 徐国庆 Parallel program rule engine and realizing method thereof
US9940182B1 (en) * 2013-09-13 2018-04-10 Stott Creations LLC Business rule engine validation systems and related methods
CN107291716A (en) * 2016-03-30 2017-10-24 阿里巴巴集团控股有限公司 A kind of link data method of calibration and device
CN106101090A (en) * 2016-06-07 2016-11-09 中国建设银行股份有限公司 Operational approach and rule engine system for regulation engine
CN107943878A (en) * 2017-11-14 2018-04-20 北京思特奇信息技术股份有限公司 A kind of Business Rule Engine method and system
CN109582681A (en) * 2018-10-26 2019-04-05 平安科技(深圳)有限公司 Business data processing method, device, computer equipment and storage medium
CN110633160A (en) * 2019-08-22 2019-12-31 浙江大搜车软件技术有限公司 Interface calling method and device, computer equipment and storage medium
CN111241186A (en) * 2020-01-17 2020-06-05 中信银行股份有限公司 Rule-based visual parallel data preparation method, system, equipment and medium
CN111562965A (en) * 2020-04-27 2020-08-21 深圳木成林科技有限公司 Page data verification method and device based on decision tree
CN111813406A (en) * 2020-07-14 2020-10-23 深圳前海移联科技有限公司 Dynamic event-driven model
CN112115518A (en) * 2020-09-28 2020-12-22 中国建设银行股份有限公司 Service data checking method and device
CN112488855A (en) * 2020-11-23 2021-03-12 中国人寿保险股份有限公司 Business verification method and equipment based on rule template
CN112532456A (en) * 2020-12-04 2021-03-19 浪潮云信息技术股份公司 Alarm monitoring method in cloud environment
CN112685410A (en) * 2020-12-25 2021-04-20 中国平安人寿保险股份有限公司 Business rule checking method and device, computer equipment and storage medium
CN113779004A (en) * 2021-02-19 2021-12-10 北京沃东天骏信息技术有限公司 Data verification method and device
CN112800095A (en) * 2021-04-13 2021-05-14 腾讯科技(深圳)有限公司 Data processing method, device, equipment and storage medium
CN113435861A (en) * 2021-07-15 2021-09-24 支付宝(杭州)信息技术有限公司 Public opinion data-based business operation and maintenance method and device and electronic equipment
CN114092116A (en) * 2021-11-26 2022-02-25 浙江唯品会支付服务有限公司 Business rule checking method and device and electronic equipment
CN114896081A (en) * 2022-03-03 2022-08-12 首约科技(北京)有限公司 Method for improving ordering verification efficiency
CN115033816A (en) * 2022-06-27 2022-09-09 中国平安人寿保险股份有限公司 Business processing method and device based on rule engine, computer equipment and medium

Non-Patent Citations (3)

* Cited by examiner, † Cited by third party
Title
余军阳等: "基于权重优先业务规则引擎的行政许可管理应用", 《杭州师范大学学报(自然科学版)》 *
刘苇等: "基于Spring的业务规则引擎", 《计算机工程》 *
路劲: "动态校验技术在数据质量提升中的应用", 《云南电力技术》 *

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116340832A (en) * 2023-05-25 2023-06-27 北京城建智控科技股份有限公司 Train control basic data verification method and device

Also Published As

Publication number Publication date
CN115185616B (en) 2022-12-13

Similar Documents

Publication Publication Date Title
US8566787B2 (en) System and method for improving modularity of large legacy software systems
JP6216757B2 (en) Method, computer program, and system for editing and compiling business rules
Prowell et al. Cleanroom software engineering: technology and process
CA2729304C (en) Data logging in graph-based computations
Bergmann et al. Incremental evaluation of model queries over EMF models
Verbeek et al. Verifying workflows with cancellation regions and or-joins: An approach based on relaxed soundness and invariants
Fleck et al. Search‐based model transformations
CN115185616B (en) Business rule engine device and processing method of business rule engine
US20090327874A1 (en) Validation assisted document conversion design
Muñoz-Fernández et al. 10 challenges for the specification of self-adaptive software
CN112395199B (en) Distributed software instance testing method based on cloud computing and software development platform
Saini et al. A Proposed Method of Machine Learning based Framework for Software Product Line Testing
CN114791808A (en) Data flow graph generation method and device
Heisinger et al. From Decision Models To User-Guiding Configurators Using SMT
AU2019204148B2 (en) Editing and compiling business rules
McGill et al. Scalable analysis of conceptual data models
Mahmood Software implementation of hierarchical decision modeling and hierarchical decision modeling sensitivity analysis.
US20240135210A1 (en) Replacing lambda expressions in a rete network with corresponding code classes
Wetzler Efficient, mechanically-verified validation of satisfiability solvers
Djaaboub et al. Generating verifiable LOTOS specifications from UML models: a graph transformation-based approach
Chaghrouchni et al. Machine Learning in Predicting the Appropriate Model of Software Process Models Deviation
Mey et al. Transforming Truth Tables to Binary Decision Diagrams Using Relational Reference Attribute Grammars.
Walter SAT-based Analysis,(Re-) Configuration & Optimization in the Context of Automotive Product documentation
CN113448865A (en) Relational test data generation method and device based on formal model
US20040194091A1 (en) System and method for capturing and managing a process flow

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant