Method for improving temporal consistency and snapshot recency in a monitored real-time software-reporting-application architecture
First Claim
1. A processing system including a machine-readable medium having stored thereon computer executable code, the computer code comprising:
- an object model;
an object model driver receiving change information events pertinent to objects in the object model, and writing those changes to a database;
an object monitor independent from the object model driver, performing periodic sequential successive reads of the object model, the frequency of reads set to be higher than an expected frequency of the change information events incoming to the object model driver and retaining each read for a period as a snapshot of the object model;
a plurality of listener modules, individual ones pre-programmed to view successive snapshots produced by the object monitor, and to listen for changes to specific objects; and
user-activated monitors accessing one or more individual listener modules through interfaces;
wherein users are informed through the monitors of values and changes in values of the specific objects the listener modules are programmed to listen for, according to the most recent snapshot provided by the object monitor.
10 Assignments
0 Petitions
Accused Products
Abstract
An object-oriented software application is provided for receiving updates that change state of an object model and reporting those updates to requesting users. The application includes a database application for storing data; an object model driver for writing updates into the database; a notification system for notifying about the updates; and, a plurality of external monitors for reading the updates. In a preferred embodiment the object model produces multiple temporal snapshots of itself in co-currency with received events, each snapshot containing associated update information from an associated event and whereupon at the time of occurrence of each snapshot coinciding with an event the notification system notifies the appropriate external monitor or monitors, which in turn access the appropriate snapshot, performs calculations thereupon if required and renders the information accessible to the users.
38 Citations
13 Claims
-
1. A processing system including a machine-readable medium having stored thereon computer executable code, the computer code comprising:
-
an object model; an object model driver receiving change information events pertinent to objects in the object model, and writing those changes to a database; an object monitor independent from the object model driver, performing periodic sequential successive reads of the object model, the frequency of reads set to be higher than an expected frequency of the change information events incoming to the object model driver and retaining each read for a period as a snapshot of the object model; a plurality of listener modules, individual ones pre-programmed to view successive snapshots produced by the object monitor, and to listen for changes to specific objects; and user-activated monitors accessing one or more individual listener modules through interfaces; wherein users are informed through the monitors of values and changes in values of the specific objects the listener modules are programmed to listen for, according to the most recent snapshot provided by the object monitor. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8)
-
-
9. A method for updating users concerning changes to objects in a model, comprising steps of:
-
(a) writing incoming object changes to the model by a write-only model driver; (b) monitoring the model by a read-only object monitor separate from the model driver; (c) producing sequential snapshots of the model by the object monitor according to sequential reads the frequency of the sequential reads set to be higher than an expected frequency of the writes in step (a); (d) monitoring the snapshots for specific object changes by individual listener modules programmed to listen for changes to specific objects in the model; and (e) providing values and changes in value of the specific objects to individual monitors interfaced to individual ones of the listener modules. - View Dependent Claims (10, 11, 12, 13)
-
Specification