Method for dynamically determining a predetermined previous condition of a rule-based system
First Claim
1. A method for dynamically determining a predetermined previous condition of a computer system having a rule-based system comprising a plurality of rules, each rule of the plurality of rules is associated with a transaction and a condition, when the condition is triggered the transaction is executed, the method comprising the steps of:
- (a) representing each transaction by a transaction object using the computer system, each transaction object having a data structure and comprising a transaction identifier, a who property, a when property and a condition property, wherein each condition property points to one or more rules of the plurality of rules which caused the condition to be triggered;
(b) representing, using the computer system, each condition by a condition object;
(c) determining, by the computer system, a current computer system condition, the current computer system condition based on the expression of one or more rules of the plurality of rules;
(d) determining, by the computer system, an immediate previous condition that caused the current computer system condition;
(e) backtracking by the computer system using one or more of the transaction identifiers to the immediate previous condition from the current computer system condition and setting the immediate previous condition as the current computer system condition; and
(f) repeating steps (d) and (e) until the predetermined previous condition is reached.
10 Assignments
0 Petitions
Accused Products
Abstract
A method for dynamically determining a predetermined previous condition of a rule-based system comprising a plurality of rules. Each of the plurality of rules is associated with a transaction and a condition under which the transaction is executed. In one embodiment, the method includes the steps of (a) determining a system condition; (b) determining an immediate previous condition that caused the system condition; (c) setting the immediate previous condition to the system condition; and (d) repeating steps (b) and (c) until the predetermined previous condition is reached.
63 Citations
18 Claims
-
1. A method for dynamically determining a predetermined previous condition of a computer system having a rule-based system comprising a plurality of rules, each rule of the plurality of rules is associated with a transaction and a condition, when the condition is triggered the transaction is executed, the method comprising the steps of:
-
(a) representing each transaction by a transaction object using the computer system, each transaction object having a data structure and comprising a transaction identifier, a who property, a when property and a condition property, wherein each condition property points to one or more rules of the plurality of rules which caused the condition to be triggered; (b) representing, using the computer system, each condition by a condition object; (c) determining, by the computer system, a current computer system condition, the current computer system condition based on the expression of one or more rules of the plurality of rules; (d) determining, by the computer system, an immediate previous condition that caused the current computer system condition; (e) backtracking by the computer system using one or more of the transaction identifiers to the immediate previous condition from the current computer system condition and setting the immediate previous condition as the current computer system condition; and (f) repeating steps (d) and (e) until the predetermined previous condition is reached. - View Dependent Claims (2, 3, 4, 5, 6)
-
-
7. A method of deriving a cause of a given state of a rule-based system comprising a plurality of rules, each rule comprising a transaction and a condition, the method comprising the steps of:
-
(a) representing each transaction by a transaction object using the computer system, each transaction object comprising a when property and a computer system condition property, each computer system condition property pointing to one or more rules of the plurality of rules which caused the condition to be triggered; (b) determining a transaction resulting in the given state; (c) determining a condition under which the transaction executes; (d) determining which rule of the plurality of rules was executed by the condition; and (e) determining an explanation associated with the transaction; (f) translating the explanation into a natural language equivalent; and (g) displaying the natural language equivalent in response to a query.
-
-
8. A method of inspecting a computer system having a rule-based system in a given state to identify one or more causes of the given state over a multi-day time period, the computer system comprising a plurality of log files, the rule-based system comprising a plurality of rules, each rule comprising a transaction, each transaction initiated by a corresponding condition, each condition containing at least one derivation determined by a rule, and an explanation associated with the rule, the method comprising:
-
for each transaction in the series of rule executions, a) determining by the computer system the condition executing the transaction; b) determining by the computer system the derivation identifying the rule triggering the transaction; c) determining by the computer system, the explanation associated with the rule, thereby generating the cause of the given state by combining the explanation for each of the executed rules, wherein the cause occurs a day or more before the explanation is determined.
-
-
9. An apparatus for dynamically determining a predetermined previous condition of a rule-based system comprising a plurality of rules, each of the plurality of rules is associated with a transaction and a condition under which the transaction is executed, the apparatus comprising:
-
a processor, the processor executing; a first condition determining module adapted to determine a given system condition of the rule-based system, the system condition being generated by a rule; a second condition determining module adapted to determine an immediate previous condition that caused the given system condition, the second condition determining module in communication with the first condition determining module; and a condition setting module adapted to set the immediate previous condition to the given system condition, the condition setting module in communication with both the first condition determining module and the second condition determining module, wherein the condition setting module iteratively backtracks along linked data structures from the given system condition to the immediate previous condition until the predetermined previous condition is reached. - View Dependent Claims (10, 11, 12, 13, 14, 15)
-
-
16. An apparatus for deriving a cause of a given state of a rule-based system comprising a plurality of rules, each rule comprising a transaction and a condition, the apparatus comprising:
a processor, the processor executing; a transaction determining module adapted to determine a transaction resulting in the given state, the given state being generated by a rule; a condition determining module adapted to determine a condition under which the transaction executes, the condition determining module in communication with the transaction determining module; a rule determining module adapted to determine which rule of the plurality of rules was executed by the condition, the rule determining module in communication with the condition determination module; and an explanation determining module adapted to determine an explanation associated with the transaction each explanation comprising a property identifier and a value, the explanation determining module configured to translate each explanation into a natural language equivalent, the explanation determining module in communication with the rule determining module, wherein the processor represents each transaction by a transaction object, each transaction object comprising a transaction identifier and a condition property, each condition property points to one or more rules of the plurality of rules which caused the condition to be triggered.
-
17. A apparatus for inspecting a previous state of a rule-based system, the rule-based system comprising a plurality of rules, each rule comprising a transaction, each transaction initiated by a corresponding condition, each condition containing at least one derivation and an explanation associated with the rule, the apparatus comprising:
a processor, the processor executing; a rule execution module adapted to execute transactions in a series of rules, a condition determining module adapted to determine each of the conditions causing the corresponding transactions, the condition determining module in communication with the rule execution module; a derivation determining module adapted to determine each of the derivations that identifies the corresponding rule, the derivation determining module in communication with the condition determining module; an explanation determining module adapted to determine each of the explanations associated with each of the rules, the explanation determining module in communication with the derivation determining module, each explanation comprising a property identifier and a value, the explanation determining module configured to translate each explanation into a natural language equivalent, a cause generating module adapted to generate the cause of the given state by combining the explanation for each of the executed rules, the cause generating module in communication with the explanation determining module.
-
18. An apparatus for dynamically determining a predetermined previous condition of a rule-based system comprising a plurality of rules, each rule of the plurality of rules is associated with a transaction and a condition, when the condition is triggered the transaction is executed, the apparatus comprising
a processor adapted to perform the steps of: -
(a) represent each transaction by a transaction object, each transaction object comprising a transaction identifier, a who property, a when property and a condition property, each condition property points to one or more rules of the plurality of rules which caused the condition to be triggered, each transaction object having a data structure; (b) represent each condition by a condition object; (c) determine a system condition caused by the execution of one or more rules of the plurality of rules; (d) determine an immediate previous condition that caused the system condition; (e) backtrack using one or more of the transaction identifiers to the immediate previous condition from the system condition; and (f) repeating steps (d) and (e) until the predetermined previous condition is reached.
-
Specification