System and method for scheduling linked events with fixed and dynamic conditions
First Claim
1. A scheduling system for scheduling events, comprising:
- a. a computer with a central processing unit and a memory;
b. one or more events to be scheduled and each event stored in the memory as an event data structure, one or more of the events having one or more event conditions, the event conditions defined in the respective event data structure and the event conditions being satisfied before the event can be performed;
c. one or more links, each link connecting two or more events, each link identified in one or more of the event data structures of the respective events that the link connects and each link establishing sequential relationships between the events that the link connects; and
d. a scheduler executed by the central processing unit to schedule one or more event groups, each event group having one or more events connected by one or more of the links, the scheduler scheduling the event group only if all of the event conditions in the event group are satisfied.
5 Assignments
0 Petitions
Accused Products
Abstract
In a scheduling system, events and/or groups of events are checked at a scheduling time to insure that certain fixed conditions associated with the event(s) are satisfied. The events are also checked at one or more times, between scheduling time and a performance time (when the event(s) are to be performed), called "prepare to perform time(s)." At the prepare to perform time(s), certain dynamic conditions and/or data associated with the events are checked to determine whether the dynamic conditions are satisfied. If the dynamic conditions are satisfied, the event(s) are confirmed for performance. If one or more of the dynamic conditions are not satisfied, the event(s) are modified. Events can be modified by cancelling, altering or postponing. When an event(s) is modified, a notification can be sent out. Further, a modification of a event(s) can cause modifications to one or more subsequent events in the event group (propagation.) Templates are event groups with some omitted information that is provided by a user at scheduling time. Templates are used to facilitate the scheduling of common events and/or event groups.
398 Citations
24 Claims
-
1. A scheduling system for scheduling events, comprising:
-
a. a computer with a central processing unit and a memory; b. one or more events to be scheduled and each event stored in the memory as an event data structure, one or more of the events having one or more event conditions, the event conditions defined in the respective event data structure and the event conditions being satisfied before the event can be performed; c. one or more links, each link connecting two or more events, each link identified in one or more of the event data structures of the respective events that the link connects and each link establishing sequential relationships between the events that the link connects; and d. a scheduler executed by the central processing unit to schedule one or more event groups, each event group having one or more events connected by one or more of the links, the scheduler scheduling the event group only if all of the event conditions in the event group are satisfied. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12)
-
-
13. A scheduling system for scheduling events, comprising:
-
a. a computer with a central processing unit, a memory, and an electronic calendar; b. one or more events to be scheduled on the electronic calendar, each event being described in an event data structure stored in the memory, the data structure having one or more event conditions associated with respective event described in the event data structure, the event conditions being zero or more fixed conditions and zero or more dynamic conditions, the fixed conditions being satisfied before the event can be scheduled on the electronic calendar at a schedule time and dynamic conditions being satisfied at a prepare-to-perform-time before the event can be performed at a performance time; c. one or more links, each link connecting two or more events, and each link establishing sequential relationships between the events that the link connects and each link establishing an interval wait condition between the evens; d. one or more event groups, each event group having one or more events connected by one or more of the links; e. a template representation of each of the event groups, the template having one or more variables that include sequential information that defines the sequential relationship of the events, the template further having omitted information; and f. a process, executed by the central processing unit, for scheduling every event in a template representation when the omitted information is provided by a user. - View Dependent Claims (14, 15, 16, 17, 18, 19)
-
-
20. A scheduling system for scheduling medical events, comprising:
-
a. a computer with a central processing unit and a memory; b. one or more of the medical events to be scheduled, each medical event stored in the memory as an event data structure and one or more of the medical events having one or more associated medical event conditions, the medical event conditions defined in the respective event data structure and the medical event conditions being satisfied before the medical event can be performed; c. one or more links, each link connecting two or more of the medical events, and each link establishing sequential relationships between the medical events that the link connects; and d. a scheduler executed by the central processing unit that schedules one or more medical event groups, each medical event group having one or more of the medical events connected by one or more of the links, the medical event group scheduled only if all of the medical event conditions in the medical event group are satisfied.
-
-
21. A scheduling system for scheduling events, comprising:
-
a. a computer means with a memory means for storing one or more event means; b. one or more link means for connecting two or more of the event means, and each link means establishing sequential relationships between the event means that the link means connects; c. one or more fixed condition means for permitting one or more of the event means to be scheduled at a schedule time if the fixed condition means is satisfied; and d. one or more dynamic condition means for permitting one or more of the event means to be scheduled at a performance time if the dynamic conditions means are satisfied at one or more prepare-to-perform-times.
-
-
22. A method executing on a computer for scheduling comprising the steps of:
-
a. at a schedule time, examining a tentative start time of one or more events, each event being connected to one or more other events by a link, each link establishing a sequential relationship between the events that the link connects, the connected events forming an event group; b. determining if the tentative start time is an illegal time; c. if the tentative start time is an illegal time, applying one or more adjustment rules to the tentative start time to produce a new tentative start time; d. replacing the tentative start time with the new tentative start time; e. repeating steps b through e until the tentative start time is a legal start time for the event; and f. scheduling the event at the legal start time. - View Dependent Claims (23, 24)
-
Specification