Approach for re-using business rules
First Claim
1. A method for developing rules applications, wherein the method comprises the computer implemented steps of:
- generating a first template that defines a rules structure for rules that may be executed by a rules engine;
generating a second template describing a first set of tasks that includes a first task and an association with said task and said first template;
generating a set of rules based on said first template, wherein said association between said first task and said first template causes execution of said set of rules by said rules engine while executing said first task; and
generating a third template describing a second set of tasks that includes a second task and association between said first template and said second task, wherein said association between said second task and said first template causes execution of said set of rules by said rules engine while executing said second task.
0 Assignments
0 Petitions
Accused Products
Abstract
An approach is described for developing software that executes rules, such as business rules. A group of rule templates defines a rule structure for rules that may be executed by a rules engine. Separate ruleflow templates define tasks that entail the execution of rules. Each of the ruleflow templates associates a task with the group of rule templates. Because the ruleflow templates define the association between the tasks and the group of rule templates, during execution of the tasks a rules engine executes rules defined by the group of templates. User interfaces are automatically generated based on the group of rule templates. A user may interact with the user interfaces to edit the rules defined by the group of templates. After editing the rules, executing the tasks associated with the group of templates will cause execution of the modified rules.
80 Citations
44 Claims
-
1. A method for developing rules applications, wherein the method comprises the computer implemented steps of:
-
generating a first template that defines a rules structure for rules that may be executed by a rules engine; generating a second template describing a first set of tasks that includes a first task and an association with said task and said first template; generating a set of rules based on said first template, wherein said association between said first task and said first template causes execution of said set of rules by said rules engine while executing said first task; and generating a third template describing a second set of tasks that includes a second task and association between said first template and said second task, wherein said association between said second task and said first template causes execution of said set of rules by said rules engine while executing said second task. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8)
-
-
9. A method for developing software that involves the execution of rules by a rules engine, wherein the method comprises the computer implemented steps of:
-
generating a group of rule templates that define rules structure for rules that may be executed by said rules engine; generating a first ruleflow template that defines;
a first set of tasks that includes a first task, and an association with said first task and said a group of rule templates;generating a second ruleflow template that defines;
a second set of tasks that includes a second task, and an association with said second task and said group of rule templates; andgenerating a set of rules based on said group of templates, wherein said association between said first task and said group of templates causes execution of said set of rules by said rules engine while executing said first task; and wherein said association between said second task and said group of templates causes execution of said set of rules by said rules engine while executing said second task.
-
-
10. A computer-readable medium carrying one or more sequences of instructions for developing rules applications, wherein execution of the one or more sequences of instructions by one or more processors causes the one or more processors to perform the steps of:
-
generating a first template that defines a rules structure for rules that may be executed by a rules engine; generating a second template describing a first set of tasks that includes a first task and an association with said task and said first template; generating a set of rules based on said first template; wherein said association between said first task and said first template causes execution of said set of rules by said rules engine while executing said first task; and generating a third template describing a second set of tasks that includes a second task and association between said first template and said second task, wherein said association between said second task and said first template causes execution of said set of rules by said rules engine while executing said second task. - View Dependent Claims (11, 12, 13, 14, 15, 16, 17)
-
-
18. A computer-readable medium carrying one or more sequences of instructions for developing software that involves the execution of rules by a rules engine, wherein execution of the one or more sequences of instructions by one or more processors causes the one or more processors to perform the steps of;
-
generating a group of rule templates that define rules structure for rules that may be executed by said rules engine; generating a first ruleflow template that defines;
a first set of tasks that includes a first task, and an association with said first task and said group of rule templates;generating a second ruleflow template that defines;
a second set of tasks that includes a second task, and an association with said second task and said group of rule templates; andgenerating a set of rules based on said group of templates, wherein said association between said first task and said group of templates causes execution of said set of rules by said rules engine while executing said first task, and wherein said association between said second task and said group of templates causes execution of said set of rules by said rules engine while executing said second task.
-
-
19. A method for developing rules applications, wherein the method comprises the computer implemented steps of:
-
generating a first template that defines a rules structure for rules that may be executed by a rules engine; generating a second template describing a first set of tasks that includes a first task and an association with said task and said first template; generating a set of rules based on said first tern plate, wherein said association between said first task and said first template causes execution of said set of rules by said rules engine while executing said first task; and wherein the step of generating said set of rules includes generating said first set of rules based on said first template and instances of said first template. - View Dependent Claims (20, 21, 22, 23, 24, 25)
-
-
26. A computer-readable medium carrying one or more sequences of instructions for developing rules applications, wherein execution of the one or more sequences of instructions by one or more processors causes the one or more processors to perform the steps of:
-
generating a first template that defines a rules structure for rules that may be executed by a rules engine; generating a second template describing a first set of tasks that includes a first task and an association with said task and said first template; generating a set of rules based on said first template; wherein said association between said first task and said first template causes execution of said set of rules by said rules engine while executing said first task; and wherein the step of generating said set of rules includes generating said first set of rules based on said first template and instances of said first template. - View Dependent Claims (27, 28, 29, 30, 31, 32)
-
-
33. A method for developing rules applications, wherein the method comprises the computer implemented steps of:
-
generating rule element data that defines a set of choices that a user may choose for a rule element; receiving user choice data that specify one or more choices made by the user for the rule element; and generating the rule based upon the user choice data; and generating a first template that defines a rules structure for rules that may be executed by a rules engine. - View Dependent Claims (34, 35)
-
-
36. A method for developing rules applications, wherein the method comprises the computer implemented steps of:
-
providing a rule structure with one or more rule elements and an editable rule element; providing an editable rule element type, and a set of choices that a user may choose for the editable rule element; receiving user choice data that specify one or more choices chosen by the user for the rule element; generating the rule based upon the user choice data; generating a first template that defines a rules structure for rules that may be executed by a rules engine; generating a second template describing a first set of tasks that includes a first task and an association with said task and said first template; wherein said association between said first task and said first template causes execution of said set of rules by said rules engine while executing said first task.
-
-
37. A method for developing rules applications, wherein the method comprises the computer implemented steps of:
-
generating a first template that defines a rules structure for rules that may be executed by a rules engine; generating a second template describing a first set of tasks that includes a first task and an association with said task and said first template; generating a set of rules based on said first template, wherein said association between said first task and said first template causes execution of said set of rules by said rules engine while executing said first task; wherein the step of generating a second template describing an association with said first task and said first template includes the step of generating a second template that describes an association between said first task and a template group that includes said first template; and generating a third template describing a second set of tasks that includes a second task and association between said first template and said second task, wherein said association between said second task and said first template causes execution of said set of rules by said rules engine while executing said second task. - View Dependent Claims (38)
-
-
39. A method for developing rules applications, wherein the method comprises the computer implemented steps of:
-
generating a first template that defines a rules structure for rules that may be executed by a rules engine; generating a second template describing a first set of tasks that includes a first task and an association with said task and said first template; generating a set of rules based on said first template, wherein said association between said first task and said first template causes execution of said set of rules by said rules engine while executing said first task; wherein the step of generating a second template describing an association with said first task and said first template includes the step of generating a second template that describes an association between said first task and a template group that includes said first template; wherein, the step of generating said set of rules includes generating said first set of rules based on said first template and instances of said first template; generating one or more user interfaces based on said first template; generating said instances in response to said user interfaces receiving input from a user indicating values for said instances; generating a third template describing a second set of tasks that includes a second task and association between said first template and said second task, wherein said association between said second task and said first template causes execution of said set of rules by said rules engine while executing said second task; modifying said instances; modifying said set of rules based on said first template and the modifications to said instances; and after modifying said set of rules, executing said first task or said second task, wherein executing said first task or said second task after modifying said set of rules causes execution of the modified set of rules.
-
-
40. A method for developing software that includes the execution of rules by a rules engine, wherein the method comprises the computer implements steps of:
-
generating a group of rule templates that define rules structure for rules that may be executed by said rules engine; generating a first ruleflow template that defines a first set of tasks that includes a first task, and an association with said first task and a group of rule templates; generating a second ruleflow template that defines a second set of tasks that includes a second task, an association with said second task and said group of rule templates; generating a set of rules based on said group of templates; wherein said association between said first task and said group of templates causes execution of said set of rules by said rules engine while executing said first task; wherein said association between said second task and said group of templates causes execution of said set of rules by said rules engine while executing said first task; wherein said association between said second task and said group of templates causes execution of said set of rules by said rules engine while executing said second task; generating one or more user interfaces based on said group of rule templates; generating instances of said.group of rule templates in response to said user interfaces receiving input from a user indicating values for said instances; generating changes to said instances in response to said user interface receiving further input from said user indicating new values for said instances; modifying said set of rules based on said group of rule templates and said changes to said instances; and after modifying said set of rules, executing said first task or said second task, wherein executing said first task or said second task after modifying said set of rules causes execution of the modified set of rules.
-
-
41. A computer-readable medium carrying one or more sequences of instructions for developing rule applications, wherein execution of the one or more sequences of instructions by one or more processors causes the one or more processors to perform the steps of:
-
generating a first template that defines a rules structure for rules that may be executed by a rules engine; generating a second template describing a first set of tasks that includes a first task and an association with said task and said first template; generating a set of rules based on said first template; wherein said association between said first task and said first template causes execution said set of rules by said rules engine while executing said first task; wherein the step of generating a second template describing an association with said first task and said first template includes the step of generating a second template that describes an association between said first task and a template group that includes said first template; and generating a third template describing a second set of tasks that includes a second task and association between said first templates and said second task, wherein said association between said second task and said first template second task. - View Dependent Claims (42)
-
-
43. A computer-readable medium carrying one or more sequences of instructions for developing rule applications, whereih execution of the one or more sequences of instructions by one or more processors causes the one or more processors to perform the steps of:
-
generating a first template that defines a rules structure for rules that may be executed by a rules engine; generating a second template describing a first set of tasks that includes a first task and an association with said task and said first template; generating a set of rules based on said first template; wherein said association between said first task and said first template causes execution said set of rules by said rules engine while executing said first task; wherein the step of generating a second template describing an association with said first task and said first template includes the step of generating a second template that describes an association between said first task and a template group that includes said first template; wherein the step of generating said set of rules includes generating said first set of rules based on said first template and instances of said first template; generating one or mare user interfaces based on said first template; generating said instances in response to said user interfaces receiving input from a user indicating values for said instances; generating a third template describing a second set of tasks that includes a second task and association between said first template and said second task, wherein said association between said second task and said first template causes execution of said set of rules by said rules engine while executing said second task; modifying said instances; modifying said set of rules based on said first template and the modifications to said instances; and after modifying said set of rules, executing said first task or said second task, wherein executing said first task or said second task after modifying said set of rules causes execution of the modified set of rules.
-
-
44. A computer-readable medium carrying one more sequences of instructions for developing software that involves the execution of rules by a rules engine, wherein execution of the one or more sequences of instructions by one or more processors causes the one or more processors to perform the steps of:
-
generating a group of rule templates that define rules structure for rules that may be executed by said rule engine; generating a first ruleflow template that defines a first set of tasks that includes a first task, and an association with said first task and a group of rule templates; generating a second ruleflow template that defines a second set of tasks that includes a second task, an association with said second task and said group of rule templates; generating a set of rules based on said group of templates, wherein said association between said first task and said group of templates causes execution of said set of rules by said rules engine while executing said first task, and wherein said association between said second task and said group of templates causes execution of said set of rules by said rules enginewhile executing said second task; generating one or more user interfaces based on said group of rule templates;
generating instances of said group of rule templates in response to said user interfaces receiving input from a user indicating values for said instances;generating changes to said instances in response to said user interface receiving further input from said user indicating new values for said instances; modifying said set of rules based on said group of rule templates and said changes to said instances; and after modifying said set of rules, executing said first task or said second task, wherein executing said first task or said second task after modifying said set of rules causes execution of the modified set of rules.
-
Specification