Efficient rule execution in decision services
First Claim
1. A method for rule execution in decision services, comprising:
- providing, by one or more processors, one or more specialized rulesets classified by decision partitions based on defined clustering predicates of decision service signatures for business rules, wherein a clustering predicate is a function that determines a decision category based on parameters that are input into the function, wherein the clustering predicate is based on the decision service signature, wherein the decision service signatures define input parameters and output parameters for a decision service, wherein the decision service is an autonomous component that receives decision requests and return decision outputs;
receiving, by one or more processors, a decision request from a client, wherein the decision service redirects the decision request to a particular set of business rules;
inputting, by one or more processors, one or more parameters of the decision request to a clustering predicate based on the decision service signatures to produce the decision category;
determining, by one or more processors, a specialized ruleset for the decision request based on the decision category;
forwarding, by one or more processors, the decision request for processing by the specialized ruleset;
returning, by one or more processors, a decision output from the specialized ruleset;
defining, by one or more processors, the clustering predicate at business rules authoring time;
analyzing, by one or more processors, business rules to identify decision partitions based on the clustering predicate and to classify the business rules per decision partition to form specialized rulesets, wherein said analyzing the business rules includes;
scanning, by one or more processors, all business rules for all conditions in the business rules;
scanning, by one or more processors, all conditions for all tests performed on the decision partitions;
adding, by one or more processors, a new decision partition;
adding a test to the new decision partition; and
adding the test to a default decision partition.
1 Assignment
0 Petitions
Accused Products
Abstract
A method, system, and/or computer program product performs rule execution in decision services. One or more specialized rulesets classified by decision partitions are based on defined clustering predicates of decision service signatures for business rules. A decision request is received from a client, and one or more parameters of the decision request are input to a clustering predicate based on decision service signatures to produce a decision category. A specialized ruleset for the decision request is determined based on the decision category, and the decision request is forwarded for processing to the specialized ruleset. A decision input is then returned from the specialized ruleset.
-
Citations
16 Claims
-
1. A method for rule execution in decision services, comprising:
-
providing, by one or more processors, one or more specialized rulesets classified by decision partitions based on defined clustering predicates of decision service signatures for business rules, wherein a clustering predicate is a function that determines a decision category based on parameters that are input into the function, wherein the clustering predicate is based on the decision service signature, wherein the decision service signatures define input parameters and output parameters for a decision service, wherein the decision service is an autonomous component that receives decision requests and return decision outputs; receiving, by one or more processors, a decision request from a client, wherein the decision service redirects the decision request to a particular set of business rules; inputting, by one or more processors, one or more parameters of the decision request to a clustering predicate based on the decision service signatures to produce the decision category; determining, by one or more processors, a specialized ruleset for the decision request based on the decision category; forwarding, by one or more processors, the decision request for processing by the specialized ruleset; returning, by one or more processors, a decision output from the specialized ruleset; defining, by one or more processors, the clustering predicate at business rules authoring time; analyzing, by one or more processors, business rules to identify decision partitions based on the clustering predicate and to classify the business rules per decision partition to form specialized rulesets, wherein said analyzing the business rules includes; scanning, by one or more processors, all business rules for all conditions in the business rules; scanning, by one or more processors, all conditions for all tests performed on the decision partitions; adding, by one or more processors, a new decision partition; adding a test to the new decision partition; and adding the test to a default decision partition. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9)
-
-
10. A system for rule execution in decision services, the system comprising:
-
a processor, a computer readable memory, and a computer readable storage media; first program instructions to provide one or more specialized rulesets classified by decision partitions based on defined clustering predicates of decision service signatures for business rules, wherein a clustering predicate is a function that determines a decision category based on parameters that are input into the function, wherein the clustering predicate is based on the decision service signature, wherein the decision service signatures define input parameters and output parameters for a decision service, wherein the decision service is an autonomous component that receives decision requests and return decision outputs; second program instructions to receive a decision request from a client, wherein the decision service redirects the decision request to a particular set of business rules; third program instructions to input one or more parameters of the decision request to a clustering predicate based on decision service signatures to produce the decision category; fourth program instructions to determine a specialized ruleset for the decision request based on the decision category; fifth program instructions to forward the decision request for processing by the specialized ruleset; sixth program instructions to return a decision output from the specialized ruleset; seventh program instructions to define the clustering predicate at business rules authoring time; eighth program instructions to analyze business rules to identify decision partitions based on the clustering predicate and to classify the business rules per decision partition to form specialized rulesets, wherein said analyzing the business rules includes; scanning all business rules for all conditions in the business rules; scanning all conditions for all tests performed on the decision partitions; adding a new decision partition; adding a test to the new decision partition; and adding the test to a default decision partition; and
whereinsaid first, second, third, fourth, fifth, sixth, seventh and eighth program instructions are stored on said computer readable storage media for execution by said processor via said computer readable memory. - View Dependent Claims (11, 12)
said ninth, tenth, eleventh, and twelfth program instructions are stored on said computer readable storage media for execution by said processor via said computer readable memory.
-
-
12. The system as claimed in claim 11, wherein the default ruleset is a full ruleset from which the specialized rulesets have been partitioned.
-
13. A computer program product for rule execution in decision services, the computer program product comprising a non-transitory computer readable storage medium having computer-readable program code embodied therewith, the computer-readable program code configured to:
-
provide one or more specialized rulesets classified by decision partitions based on defined clustering predicates of decision service signatures for business rules, wherein a clustering predicate is a function that determines a decision category based on parameters that are input into the function, wherein the clustering predicate is based on the decision service signature, wherein the decision service signatures define input parameters and output parameters for a decision service, wherein the decision service is an autonomous component that receives decision requests and return decision outputs; receive a decision request from a client, wherein the decision service redirects the decision request to a particular set of business rules; input one or more parameters of the decision request to a clustering predicate based on decision service signatures to produce the decision category; determine a specialized ruleset for the decision request based on the decision category; forward the decision request for processing by the specialized ruleset; return a decision output from the specialized ruleset; define the clustering predicate at business rules authoring time; analyze business rules to identify decision partitions based on the clustering predicate and to classify the business rules per decision partition to form specialized rulesets, wherein said analyzing the business rules includes; scanning all business rules for all conditions in the business rules; scanning all conditions for all tests performed on the decision partitions; adding a new decision partition; adding a test to the new decision partition; and adding the test to a default decision partition. - View Dependent Claims (14, 15, 16)
-
Specification