DESIGN AND IMPLEMENTATION OF A DYNAMIC PROGRAMMING ENVIRONMENT FOR ACTIVE RULES
Currently, many applications that require monitoring (e.g., surveillance, track monitoring) use the event-condition-action (or ECA) rule paradigm. The Local Event Detector (LED) that has been developed based on the ECA rule paradigm provides active capability to various applications including relational database systems. LED is capable of handling events that are local to the application, thus providing active capability. Existing LED framework supports creation of events and rules at compile time. Modifications to existing rules or events are difficult once the execution of the application begins. Thus, modifying rules or events requires adding code for new rules and events, recompiling and executing. This is a limitation for many applications where the rules and events need to be modified dynamically at run time and without bringing the system down.
This thesis provides a novel approach for supporting the creation of rules and events dynamically at run time, which is critical for several classes of monitoring applications. The proposed approach avoids recompilation and restarts which is not appropriate in many environments that require fine-tuning of rules on the fly. The dynamic programming environment (DPE) presented in this thesis provides a generic set of classes that are designed to handle the creation, management, and execution of rules. This set of generic classes is application-independent making the system a general-purpose tool. The user application provides necessary class and event information to the DPE. The DPE uses this information to create, modify and manage the rules. The DPE supports the creation of new composite and temporal events. The system also provides information about rules and events in XML format. A user-friendly interface is provided to perform these tasks.