IP Library Granted Patent US 7,613,671
Granted Patent B2
US 7,613,671 · App. 11/539,138 · Granted Nov 3, 2009

Approach for re-using business rules

Assignee: Fair Isaac Corporation
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 7,613,671
App. No.
11/539,138
Granted
Nov 3, 2009
Kind
B2
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.

Claims (56)

1. A computer-implemented method for developing rules applications comprising:

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; and

enabling the rules engine to access the generated set of rules,

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.

2. The method of claim 1 , further comprising:

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.

3. A method for developing rules applications, wherein the method comprises the computer implemented comprising:

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

enabling the rules engine to access the generated set of rules,

wherein the step of generating said set of rules includes generating said set of rules based on said first template and instances of said first template.

4. The method of claim 3 , further comprising:

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.

5. A computer-readable storage 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 operations comprising:

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; and

enabling the rules engine to access the generated set of rules,

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 said set of rules includes generating said set of rules based on said first template and instances of said first template.

6. The computer-readable medium of claim 5 , further including one or more instructions for performing operations comprising:

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.

7. A computer-implemented method comprising:

generating a first template that defines a rules structure with one or more rule elements for rules that may be executed by a rules engine;

receiving, via a graphical user interface, user choice data that specifies one or more choices made by the user for said one or more rule elements;

generating a rule based upon said user choice data; and enabling the rules engine to access the generated set of rules.

8. A computer-implemented method comprising:

generating a first template that defines a rules structure with one or more rule elements and an editable rule element for rules that may be executed by a rules engine;

providing a set of choices that a user may choose for the editable rule element;

receiving user choice data that specifies one or more choices chosen by the user for the rule element;

generating the rule based upon the user choice data; and

enabling the rules engine to access the generated set of rules.

9. The method of claim 8 , further comprising:

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.

10. A computer-implemented method comprising:

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 second task and a template group that includes said first template;

generating a third template describing a second set of tasks that includes a second task and association between said first template or said second task, wherein said association between said second task or said first template causes execution of said set of rules by said rules engine while executing said second task; and

enabling the rules engine to access the generated set of rules.

11. A computer-implemented method comprising:

creating a template specifying editable rule element for rules that may be executed by a rules engine;

creating said rules by choosing values for said editable rule elements to create instances;

associating a task with said template and instances; and

executing said task by combining said template and said instances to form rules that are fired when conditions therefore are met; and

enabling the rules engine to access the formed rules.

Continuity (2)
Continuation 1105917200 · Feb 15, 2005
Related Publication 20070112717A1 · May 17, 2007