System, method and computer program product for dynamic resource management
Summary by NHIP
Dynamic Hierarchical Resource Management
The method manages resources across hierarchical levels by creating maintenance plans with associated threshold times and scheduling task performance. It monitors task execution to project completion times, comparing them against thresholds to determine whether to proceed with additional tasks.
Claim Score by NHIP
Abstract
A system for dynamically managing the resources of a hierarchical organization includes an organizing processing element, at least one resource and a monitoring processing element. The organizing processing element capable of creating a maintenance plan comprising at least one task. Additionally, the organizing processing element can schedule performance of the tasks of the maintenance plan. The resources are capable of acting on the at least one task of the maintenance plan at the level Li to thereby perform the at least one task. And the monitoring processing element is capable of monitoring the performance of the at least one task at least partially based upon a status of the at least one task. And, if necessary, based on the monitoring, the organizing processing element is capable of soliciting available resources from said organizing processing element at a higher level of the hierarchical organization.

Term
Term ended
Expired 25 January 2024, 2.7 years ago.
- Priority and filed
- Granted
- Expired
- Today
10 claims: 3 independent, 7 dependent
- 1Broadest claimClaim Score 20, narrow(NHIP)A method at least partially implemented on a computer for of dynamically managing the resources of a hierarchical organization, wherein the hierarchical organization comprises n levels L 1 . . . L n with n being a positive integer, wherein for at least i>1 each level L i comprises a plurality of members, and wherein the members of level L i−1 comprise groupings of the members of level L i , said method comprising:creating a maintenance plan comprising at least one task at each level L 1 . . . L n , wherein for at least i>1 the at least one task at leach level L i at least partially includes groupings of the at least one task of level L i−1 , and wherein the maintenance plan at each level includes an associated predetermined threshold time;scheduling performance of the at least one task by at least one resource, wherein the at least one resource acts on at least a portion of the at least one task to thereby perform the at least one task;performing one of the at least one task at the level L i ;monitoring the performance of the at least one task to determine an amount of time required to perform the task performed and thereafter projecting a completion time associated with the maintenance plan;comparing the projected completion time to the predetermined threshold time associated with the maintenance plan, wherein when the projected completion time is no greater than the predetermined threshold time another task of the maintenance plan is performed, monitored and compared at the level L i until the each of the at least one task of the maintenance plan has been performed;determining whether performance of the other tasks of the maintenance plan can be rescheduled such that the maintenance plan can be completed within the predetermined threshold time, wherein determining occurs when the projected completion time is greater than the predetermined threshold time;soliciting additional resources from a higher level L i+1 , wherein soliciting occurs when at least one resource cannot be rescheduled to execute the other tasks of the maintenance plan within the predetermined threshold time;and allocating additional resources to level L i and thereafter rescheduling the at least one resource at level L i to include the additional resources allocated from level L i+1 to act on at least a portion of other of the at least one task to thereby perform the other of the at least one task.
- 4A system for dynamically managing the resources of a hierarchical organization, wherein the hierarchical organization comprises n levels L 1 . . . L n with n being a positive integer, wherein for at least i>1 each level L i comprises a plurality of members, and wherein the members of level L i−1 comprise groupings of the members of level L i , at each level said system comprising:an organizing processing element capable of creating a maintenance plan comprising at least one task, wherein said organizing processing element is capable of scheduling performance of the at least one task of the maintenance plan, and wherein the maintenance plan includes an associated predetermined threshold time;at least one resource capable of acting on the at least one task of the maintenance plan at the level L i to thereby perform the at least one task, wherein said organizing processing element is capable of scheduling the at least one resource to act on the at least one task to thereby schedule performance of the at least one task;a monitoring processing element capable of monitoring the performance of the at least one task at least partially based upon a status of the at least one task, wherein said monitoring processing element is capable of determining an amount of time required to perform the at least one task and thereafter projecting a completion time associated with the maintenance plan, wherein said monitoring processing element is capable of comparing the projected completion time to the predetermined threshold time associated with the maintenance plan, wherein when the projected completion time is greater than the predetermined threshold time said monitoring processing element is capable of communicating with said organizing processing element to determine whether performance of the other tasks of the maintenance plan can be rescheduled such that the maintenance plan can be completed within the predetermined threshold time, wherein when the at least one resource cannot be rescheduled said organizing processing element is capable of soliciting additional resources from said organizing processing element at a higher level L i+1 , wherein said organizing processing element at level L i+1 is capable of communicating additional resources to allocate from level L i+1 to level L i to act on at least a portion of other of the at least one task to thereby perform the other of the at least one task, and wherein said organizing processing element at level L i is capable of rescheduling the at least one resource at level L i to include the additional resources allocated from level L i+1 .
- 8A computer program product for dynamically managing the resources of a hierarchical organization, wherein the hierarchical organization comprises n levels L 1 . . . L n with n being a positive integer, wherein for at least i>1 each level L i comprises a plurality of members, and wherein the members of level L i−1 comprise groupings of the members of level L i , the computer program product comprising a computer-readable storage medium having computer-readable program code embodied in said medium, the computer-readable program code comprising:a first executable portion for creating a maintenance plan comprising at least one task at each level L 1 . . . L n , wherein for at least i>1 the at least one task at leach level L i at least partially includes groupings of the at least one task of level L i−1 , and wherein the maintenance plan at each level includes an associated predetermined threshold time;a second executable portion for scheduling performance of the at least one task at each level by at least one resource, wherein the at least one resource acts on at least a portion of the at least one task to thereby perform the at least one task;a third executable portion for monitoring the performance of the at least one task as one of the at least one task is performed at the level L i , wherein monitoring comprises monitoring to determine an amount of time required to perform the task performed and thereafter projecting a completion time associated with the maintenance plan;a fourth executable portion for comparing the projected completion time to the predetermined threshold time associated with the maintenance plan, wherein when the projected completion time is no greater than the predetermined threshold time another task of the maintenance plan is performed, monitored and compared at the level L i until the each of the at least one task of the maintenance plan has been performed;a fifth executable portion for determining whether performance of the other tasks of the maintenance plan can be rescheduled such that the maintenance plan can be completed within the predetermined threshold time, wherein determining occurs when the projected completion time is greater than the predetermined threshold time;a sixth executable portion for soliciting additional resources from a higher level L i+1 , wherein soliciting occurs when at least one resource cannot be rescheduled to execute the other tasks of the maintenance plan within the predetermined threshold time;and a seventh executable portion for allocating additional resources to level L i , wherein said second executable portion thereafter reschedules the at least one resource at level L i to include the additional resources allocated from level L i+1 to act on at least a portion of other of the at least one task to thereby perform the other of the at least one task.
Independent claims3
44 paragraphs in 5 sections, as filed
FIELD OF THE INVENTION
0001The present invention relates to systems and methods for managing the resources of an organization and, more particularly, relates to systems, methods and computer program products for dynamically managing the resources of a hierarchical organization.
BACKGROUND OF THE INVENTION
0002In many industries, planning for equipment and product maintenance currently involves the manual collection of data from a number of disparate sources and requires the analysis of the maintenance requirements of the equipment and/or product by those with relevant knowledge of the equipment and/or product to thereby identify resource requirements and schedule maintenance at a high level within an enterprise. Most of the data sources for maintenance planning exist in paper form and some are semi-automated. During times of high tempo operations, however, little or no time exists for the orderly collection and evaluation of problem data and the planning process becomes a response to individual equipment/product needs for its immediate use.
0003As equipment and product support requirements evolve over time, the enterprise must make the optimum use of scarce support resources. For example, in the aircraft industry, in times of war, as the military's operational resources (e.g., aircraft) degrade, the support system will be called upon to direct limited theater support assets to the site of specific aircraft where the most operational benefit will be realized. In this regard, the support system, including individual aircraft maintenance planning, must evolve with the aircraft it is supporting.
SUMMARY OF THE INVENTION
0004In light of the foregoing background, the present invention provides systems, methods and computer program products for dynamically managing the resources of a hierarchical organization. The present invention allows for the automatic collection and evaluation of data from a number of disparate sources. Additionally, the present invention allows for resource allocation and reallocation among different levels of the hierarchical organization based on the priority of the maintenance task, without requiring an unnecessarily long amount of time. This is especially important, as stated above, during times of high tempo operations where little or no time exists for the orderly collection and evaluation of problem data.
0005According to one embodiment, the present invention provides a system for dynamically managing the resources of a hierarchical organization, where the hierarchical organization comprises n levels L<sub>1 </sub>. . . L<sub>n </sub>with n being a positive integer. According to the hierarchical organization, for at least i>1, each level L<sub>i </sub>comprises a plurality of members, where the members of level L<sub>i−1 </sub>include groupings of the members of level L<sub>i</sub>, At each level of the organization, the system includes an organizing processing element, at least one resource and a monitoring processing element. The organizing processing element is capable of creating a maintenance plan comprising at least one task. Further, the organizing processing element is capable of scheduling performance of the tasks of the maintenance plan, where the maintenance plan includes an associated predetermined threshold time for maintenance plan completion.
0006The resources of the system are capable of acting on the tasks of the maintenance plan at the level L<sub>i </sub>to thereby perform the tasks. In this regard, the organizing processing element is capable of scheduling the resources to act on the tasks to thereby schedule performance of the tasks. The monitoring processing element is then capable of monitoring performance of the tasks at least partially based upon a status of the tasks. In this regard, in another embodiment, at each level the system further includes at least one indicator capable of indicating the status of the at least one task of the maintenance plan.
0007Based upon monitoring the tasks, the monitoring processing element is capable of determining an amount of time required to perform the tasks thereafter projecting a completion time associated with the maintenance plan. From the projected completion time, the monitoring processing element is capable of comparing the projected completion time to the predetermined threshold time associated with the maintenance plan to determine whether the projected completion time is greater than the predetermined threshold time. If the projected completion time is greater than the predetermined threshold time, the monitoring processing element is capable of communicating with the organizing processing element to determine whether performance of the other tasks of the maintenance plan can be rescheduled such that the maintenance plan can be completed within the predetermined threshold time.
0008If the at least one resource cannot be rescheduled, the organizing processing element is capable of soliciting available resources from the organizing processing element at a higher level L<sub>i+1</sub>. In this regard, the organizing processing element at level L<sub>i+1 </sub>is capable of communicating available resources to allocate from level L<sub>i+1 </sub>to level L<sub>i</sub>. Based on the communication of available resources, the organizing processing element at level L<sub>i </sub>is capable of rescheduling at least one resource at level L<sub>i </sub>to include the available resources allocated from level L<sub>i+1</sub>.
0009In one embodiment, the organizing processing element at level L<sub>i </sub>is capable of soliciting available resources from level L<sub>x+1</sub>, where x=i. If no resources are available to allocate from level L<sub>x+1</sub>, the soliciting repeatedly continues at the organizing processing element of level L<sub>x </sub>for x=x+1 until either all the levels have been solicited (x=n) or until a level L<sub>x </sub>has available resources. The organizing processing element at level L<sub>x+1 </sub>is then capable of communicating available resources to allocate from level L<sub>x+1 </sub>to level L<sub>x</sub>. Communicating the available resources repeatedly continues for x=x−1 until x=i and the original soliciting level receives available resources. In another embodiment, if no resources are available from any of the levels of the hierarchical organization, the organizing processing element is further capable of recreating the maintenance plan to reduce a demand on the at least one resource to perform the tasks such that the projected completion time for the maintenance plan is no greater than the predetermined threshold time.
0010In operation, a method of dynamically managing the resources of a hierarchical organization creates a maintenance plan comprising at least one task at each level L<sub>1 </sub>. . . L<sub>n</sub>. For at least i>1 the tasks at leach level L<sub>i </sub>at least partially include groupings of the tasks of level L<sub>i−1</sub>. Performance of the tasks by the resource is then scheduled, where the resources act on at least a portion of the tasks to thereby perform the tasks. The tasks at the level L<sub>i </sub>are then performed and, as the tasks are performed, the performance of the tasks is monitored to determine an amount of time required to perform the task. Then, a completion time associated with the maintenance plan is projected and compared to the predetermined threshold time associated with the maintenance plan.
0011When the projected completion time is no greater than the predetermined threshold time another task of the maintenance plan is performed, monitored and compared at the level L<sub>i </sub>until the each of the tasks of the maintenance plan has been performed. But if the projected completion time is greater than the predetermined threshold time, a determination is made as to whether performance of the other tasks of the maintenance plan can be rescheduled such that the maintenance plan can be completed within the predetermined threshold time.
0012If resources cannot be rescheduled to execute the other tasks of the maintenance plan within the predetermined threshold time, additional resources from a higher level L<sub>i+1 </sub>are solicited. Available resources are then allocated to level L<sub>i </sub>and thereafter the resources are rescheduled at level L<sub>i </sub>to include the available resources allocated from level L<sub>i+1</sub>. In another embodiment, available resources are solicited from level L<sub>x+1</sub>, where x=i. In this embodiment, the soliciting repeatedly continues for x=x+1 until at least one of x=n and a level L<sub>x </sub>having resources available to allocate is discovered. Then, available resources are allocated to level L<sub>x </sub>from level L<sub>x+1</sub>, wherein allocating repeatedly continues for x=x−1 until x=i. If no resources are available to allocate, the maintenance plan is recreated to reduce a demand on the resources to perform the tasks, where the demand is reduced such that the projected completion time is no greater than the predetermined threshold time.
0013The present invention therefore provides systems, methods and computer program products for dynamically managing the resources of a hierarchical organization. In this regard, the present invention provides for monitoring performance of a maintenance plan based on a status of the tasks of the maintenance plan, which allows for the automatic collection of data from a number of disparate sources. Additionally, the present invention allows for resource reallocation among different levels of the hierarchical organization based on the priority of the work to be performed without requiring an unnecessarily long amount of time.
BRIEF DESCRIPTION OF THE DRAWINGS
0014Having thus described the invention in general terms, reference will now be made to the accompanying drawings, which are not necessarily drawn to scale, and wherein:
0015<figref idref="DRAWINGS">FIG. 1</figref> is a schematic diagram illustrating a hierarchical organization that would benefit from one embodiment of the present invention;
0016<figref idref="DRAWINGS">FIG. 2</figref> is a block diagram illustrating two dynamic resource managers for two levels of a hierarchical organization, according to one embodiment of the present invention; and
0017<figref idref="DRAWINGS">FIGS. 3A and 3B</figref> are flow diagrams illustrating various steps in a method of managing the resources of a hierarchical organization, highlighting two levels of the organization, according to one embodiment of the present invention.
DETAILED DESCRIPTION OF THE INVENTION
0018The present invention now will be described more fully hereinafter with reference to the accompanying drawings, in which preferred embodiments of the invention are shown. This invention may, however, be embodied in many different forms and should not be construed as limited to the embodiments set forth herein; rather, these embodiments are provided so that this disclosure will be thorough and complete, and will fully convey the scope of the invention to those skilled in the art. Like numbers refer to like elements throughout.
0019Referring to <figref idref="DRAWINGS">FIG. 1</figref>, a hierarchical organization <b>10</b> that would benefit from the system and method of the present invention is illustrated. The organization consists of n levels L<sub>1 </sub>. . . L<sub>n</sub>, with n being a positive integer. In the hierarchical organization, each level above the first level generally comprises a plurality of members, with the members of the level being groups of the members of the level below. For example, the organization illustrated in <figref idref="DRAWINGS">FIG. 1</figref> consists of four levels, L<sub>1 </sub>. . . L<sub>4</sub>. As illustrated, the level 4 enterprise includes workgroups <b>12</b> at level L<sub>1</sub>, sections <b>14</b> at level L<sub>2 </sub>and business units <b>16</b> at level L<sub>3</sub>. The business units at level L<sub>3 </sub>are groups of the respective sections at level L<sub>2</sub>. And the sections at level L<sub>2 </sub>are groups of the work groups at level L<sub>1</sub>. In the military, for example, the first level might comprise workgroups, with the second level including squadrons comprising a plurality of workgroups. The third level could comprise wings made up of a plurality of squadrons, and a fourth level could include a theater made up of a plurality of wings. As evident, the number of levels in the organization depends upon the organization. Therefore, it should be understood that the systems, methods and computer program products of the present invention can be employed by organizations with any of a number of hierarchical levels.
0020Now referring to <figref idref="DRAWINGS">FIG. 2</figref>, a system for dynamically managing the resources of a hierarchical organization <b>10</b> includes at each level an organizing processing element, at least one resource and a monitoring processing element. Additionally, the system preferably includes at each level at least one indicator. Collectively, the organizing processing element, resources, monitoring processing element and indicators of an individual level will herein be referred to as a dynamic resource manager of the respective level. In this regard, as illustrated, the dynamic resource manager <b>18</b> of level L<sub>1 </sub>includes organizing processing element <b>20</b>, resources <b>22</b>, monitoring processing element <b>24</b> and indicators <b>26</b>. Additionally, as also illustrated, the dynamic resource manager <b>28</b> of level L<sub>2 </sub>includes organizing processing element <b>30</b>, resources <b>32</b>, monitoring processing element <b>34</b> and indicators <b>36</b>. Although only two dynamic resource managers are illustrated in <figref idref="DRAWINGS">FIG. 2</figref>, it should be understood that the system can include any of a number of dynamic resource managers, typically including one dynamic resource manager for each member of each hierarchical level of the organization. Thus, for an organization with n levels and where k(n) is the number of members of level n, the system would preferably include Σ<sub>1</sub><sup>n</sup>k(n) dynamic resource managers.
0021Turning attention now to the dynamic resource manager <b>18</b> of level L<sub>1 </sub>illustrated in <figref idref="DRAWINGS">FIG. 2</figref>, organizing processing element <b>20</b> is capable of creating a maintenance plan for the level. The maintenance plan consists of at least one task and has an associated predetermined threshold time, such as an aggregation of a predetermined duration for each of the tasks of the maintenance plan. Each task is assigned a priority within the maintenance plan based on its value with respect to the operational requirements of an item being maintained and the value of the task within the maintenance plan. In this regard, each task can have an associated priority weight based upon a number of different factors, such as the cost associated with performing the task and the time involved in training human resources to perform the task. As described below, this priority can influence the scheduling process and thus resource allocations and, in the end, decisions to perform or defer the task.
0022The organizing processing element is also capable of scheduling performance of the tasks of the maintenance plan. The organizing processing element can comprise any of a number of devices, such as a personal computer or other high level processor operating under control of a computer program. In this regard, in a preferred embodiment, the organizing processing element comprises a personal computer or other high level processor operating according to a method such as that disclosed in U.S. Pat. No. 5,890,134 issued Mar. 30, 1999 to Fox and assigned to McDonnell Douglas Corporation, the contents of which is hereby incorporated by reference in its entirety.
0023The dynamic resource manager <b>18</b> of level L<sub>1 </sub>further includes at least one resource <b>22</b>, preferably a plurality of resources, capable of acting on the tasks of the maintenance plan to thereby perform the tasks. In this regard, the organizing processing element <b>20</b> is capable of scheduling the resources to act on the tasks. The number and kind of resources can vary depending on the nature and complexity of the maintenance plan, but can include such things as supporting equipment, tools, and human resource skills.
0024To help ensure the resources perform the tasks of the maintenance plan within the predetermined threshold time, the dynamic resource manager <b>18</b> of level L<sub>1 </sub>includes the monitoring processing element <b>24</b>. The monitoring processing element is capable of monitoring the performance of the tasks to determine whether the maintenance plan will be completed within the predetermined threshold time. And if the monitoring processing element determines that, under the current schedule determined by the organizing processing element <b>20</b>, the maintenance plan will not be complete within the threshold time, the monitoring processing element is capable of initiating communications to dynamically shift resources to the tasks of the maintenance plan such that the maintenance plan can get back on schedule to be completed within the threshold time. The monitoring processing element can comprise any of a number of different devices, such as a personal computer or other high level processor. Additionally, whereas the monitoring processing element and organizing processing element <b>20</b> are depicted and described as comprising two different devices, each element can be included within a single device, such as a personal computer, without departing from the spirit and scope of the present invention.
0025To determine whether the maintenance plan will be completed within the threshold time, the monitoring processing element <b>24</b> receives feedback as to the status of the maintenance plan. Any of a number of sources can provide feedback to the monitoring processing element, including the resources <b>22</b>. But in a preferred embodiment, indicators <b>26</b> provide feedback to the monitoring processing element. The indicators can comprise any number of different devices, such as testing devices used during performance of the maintenance plan. Indicators can also comprise automated components within objects maintained according to the maintenance plan. For example, in the aircraft industry, an indicator can comprise completion of execution of an onboard maintenance program within an aircraft being maintained according to the maintenance plan. Additionally, an indicator can comprise a location within electronic documentation being accessed by resources, such as human resources, during the execution of the maintenance task. In this regard, the feedback can comprise an indication that an electronic document relevant to an object has been accessed. And based upon the indication, the monitoring processing element can infer that a task including acting on the object is being performed.
0026Referring now to <figref idref="DRAWINGS">FIGS. 3A and 3B</figref>, a method for managing the resources of the hierarchical organization <b>10</b> begins by creating the maintenance plan at each level, such as in the organizing processing element. Blocks <b>40</b> and <b>42</b>. In this regard, to simplify explanation, the method will only be described with respect to two levels, L<sub>1 </sub>and L<sub>2</sub>. As stated before, however, it should be understood that the present invention can be employed by an organization <b>10</b> with any number of levels without departing from the spirit and scope of the present invention. As each level can comprise groups of the level below it, the level of the tasks can similarly be groups of tasks performed at the level below it. For example, in maintaining a squadron of aircraft, a workgroup at level L<sub>1 </sub>may have a maintenance plan comprising maintaining an individual aircraft. The squadron level, on the other hand, may include a maintenance plan comprising maintaining all aircraft assigned to the squadron. In this regard, the level of the maintenance plan increases as the level within the organization performing the maintenance plan increases. As such, level L<sub>1 </sub>of an n level organization would typically include a maintenance plan with the most low level tasks, while the highest level L<sub>n </sub>would typically include a maintenance plan with the most high level tasks.
0027Once the maintenance plan has been created, the tasks of the maintenance plan are scheduled and resources are assigned to the tasks. Blocks <b>44</b> and <b>46</b>. In this regard, in the preferred embodiment utilizing a method similar to that disclosed by the Fox '134 patent, the organizing processing element <b>20</b> (i.e., scheduling program) is started and thereafter calls for the entry of task data. Each task entered into the organizing processing element for the maintenance plan (i.e., project) can include information on the identification of the task such as “remove ejection seat”, task duration, the required resources, and the precedent constraints applicable to the task. As an example, one constraint may be that a certain task must be performed before another, a precedent constraint, such as, in the repair of an aircraft, the canopy must be opened prior to removal of the ejection seat. Thus before the ejection seat removal task can start, the scheduling program must look to determine whether the aircraft canopy open task is scheduled for completion prior to the start of the ejection seat removal task.
0028The inventory of resources available to act on the tasks, in kind and quantity, are maintained in the organizing processing element <b>20</b>. The data on resources enables the organizing processing element to allocate resources to the various tasks of the maintenance plan. In the event that a the available resources are insufficient in quantity or type to allow accomplishment of all tasks simultaneously, as is typically the situation, in preparing the schedule the organizing processing element schedules the number of such resources as are available amongst the various tasks requiring the resource, in some preferred heuristic order according to the methods utilized by the organizing processing element to schedule the tasks. The organizing processing element also ensures that the time allocations assigned to such resource for a task does not conflict with another task. That is, the resource is assigned to tasks without violating a resource constraint. For a resource that can only be utilized by a single task at a time, the organizing processing element ensures that the resource is only assigned to one task at a time.
0029To create the schedule, the organizing processing element <b>20</b> can set right and left time boundaries that designate the threshold time of the maintenance plan. Thereafter, the organizing processing element can sequentially left time shift and right time shift respective chronologically sorted completion time and starting time task listings in order to balance the allocation of resources subject to the various constraints imposed upon the resources by the task definitions. As the present invention does not focus on the scheduling of the maintenance plans, a more detailed explanation of the scheduling method will not be provided herein. Further details of such method of scheduling the tasks of the maintenance plan are provided in the Fox '134 patent. Once the tasks of the maintenance plan have been scheduled at each level, the organizing processing element determines whether sufficient resources are available to complete the tasks of the maintenance plan within the predetermined threshold time. Blocks <b>47</b> and <b>49</b>.
0030If sufficient resources are not available to schedule the tasks such that the maintenance plan can be completed within the threshold time, the organizing processing element organizing processing element <b>20</b> communicates with the organizing processing element <b>30</b> of the next higher level to thereby solicit additional resources from the higher level. Blocks <b>72</b> and <b>74</b>. For example, if the organizing processing element of level L<sub>1 </sub>determined the tasks of the maintenance plan could not be completed in the threshold time as desired, the organizing processing element of L<sub>1 </sub>would communicate with the organizing processing element of level L<sub>2 </sub>to thereby solicit additional resources from level L<sub>2</sub>. The resource solicitation will include the priority and nature of the tasks requiring additional resources as well as definition of the resource type being requested. Once solicited, the organizing processing element from the higher level will attempt to replan the maintenance plan and thereafter reschedule the higher level maintenance plan to account for tasks from the lower level requiring additional resources. Blocks <b>42</b> and <b>46</b>. In this regard, a method such as that disclosed by the Fox '134 patent can be implemented to replan and reschedule the maintenance plan of the higher level to accommodate tasks at the lower level. For example, if a maintenance plan at level L<sub>2 </sub>contains a schedule for four weeks worth of tasks, and desires to be able to accommodate at least a portion of tasks from level L<sub>1 </sub>in the second week without perturbing the schedule for the first, third, or fourth week, the organizing processing element of level L<sub>2 </sub>can set the left boundary to be the start time of the second week and the right boundary to be the end time of the second week and apply the shift right/left operations. The organizing processing element can thus open up a “hole” at a designated point in the existing schedule at level L<sub>2</sub>. The organizing processing element can reschedule and reallocate resources under the higher processing element's purview, which were previously allocated to another lower level dynamic resource manager but are tasked with lower priority work. Once the tasks at the higher level have been rescheduled, the resulting resource allocations are communicated to the affected lower level dynamic resource managers. As stated before, the level of the tasks can similarly be groups of tasks performed at the level below it. As such, the resources allocated to the lower level can come from any one of a number of sources, including another group at the same level as the soliciting level. For example, in maintaining a squadron of aircraft at level L<sub>2</sub>, one workgroup at level L<sub>1 </sub>may have requested resources from the squadron at level L<sub>2</sub>. To supply the resources to the soliciting workgroup at level L<sub>1</sub>, the organizing processing element at level L<sub>2 </sub>may allocate resources from another workgroup at level L<sub>1 </sub>to the soliciting workgroup.
0031With the allocated resources from the higher level, the organizing processing element <b>30</b> of the higher level communicates the allocated resources to the lower level organizing processing element <b>20</b>, which then plans and reschedules the tasks of the lower level to include the new resource allocations. If the higher level cannot replan and/or reschedule the maintenance plan and/or tasks to accommodate tasks from the lower level, the organizing processing element <b>20</b> can reduce the maintenance demand on the resources at the lower level by deferring or removing lower priority tasks from the schedule of the lower level maintenance plan. Blocks <b>76</b>-<b>82</b>.
0032In an alternative embodiment, the higher level organizing processing element <b>30</b> will replan and/or reschedule the maintenance plan and/or tasks to accommodate tasks from the lower level even if the higher level cannot spare the solicited resources. In such an instance, the higher level organizing processing element will proceed through steps similar to the lower level by soliciting resources from the next higher level. In this regard, consider a hierarchical organization <b>10</b> with n levels, and a lower level of i. In such an organization, the organizing processing element of level L<sub>i </sub>would solicit available resources from level L<sub>x+1</sub>, where x=i. If adequate resources were not discovered at level L<sub>x+1</sub>, the organizing processing elements at levels L<sub>x+1 </sub>would repeatedly continue soliciting for x=x+1 until either the highest level has been solicited (x=n) or a level L<sub>x </sub>having resources available to allocate is discovered. Then, the resources would be allocated to level L<sub>x </sub>from level L<sub>x+1</sub>, with the allocating repeatedly continuing for x=x−1 until x=i.
0033As an example, if level L<sub>1 </sub>solicits resources from level L<sub>2</sub>, the organizing processing element of level L<sub>2 </sub>will replan/reschedule to accommodate the request from level L<sub>1</sub>. Then, if the monitoring processing element of level L<sub>2 </sub>determines that insufficient resources are available to schedule all tasks under its purview, (e.g., all L<sub>1 </sub>workgroups) or that the scheduled time exceeds the predetermined threshold time of level L<sub>2</sub>, the organizing processing element of level L<sub>2 </sub>may defer or remove the lowest priority tasks or communicate with the organizing processing element of level L<sub>3 </sub>to thereby solicit resources from level L<sub>3</sub>. In this regard, resources are allocated to the original soliciting level, and a chain reaction proceeds through the hierarchical organization <b>10</b> until all of the levels solicited for resources have adequate resources to perform the level's respective maintenance plan after allocating resources.
0034If sufficient resources are available, or after resources have been allocated, the tasks are performed by the resources <b>22</b> as scheduled by organizing processing element <b>20</b>. Blocks <b>48</b> and <b>50</b>. As the tasks are performed, the monitoring processing element <b>24</b> monitors the status of the tasks to thereby monitor the performance of the tasks. Blocks <b>52</b> and <b>54</b>. In this regard, the monitoring processing element can provide the status to the next higher level, such as the monitoring processing element of level L<sub>1 </sub>reporting the status to the monitoring processing element of level L<sub>2</sub>. Blocks <b>56</b> and <b>58</b>. As stated, the status can be provided to the monitoring processing element in any one of a number of manners, including by the resources and/or the indicators <b>26</b>, such as an object being maintained and/or the accessing of an electronic document.
0035Based at least partially upon the status of the tasks, the monitoring processing element <b>24</b> can determine an as-performed time for the maintenance plan and project a completion time for the plan. The projected completion time is generally the as-performed time for the current status of the maintenance plan summed with the scheduled duration of the remaining tasks to be performed. For example, assume a maintenance plan is scheduled to take five days, with one task scheduled for each day. If the first task actually requires a day and a half to complete, the monitoring processing element may project a completion time of five and one-half days for maintenance plan completion. Once the projected completion time is determined, the monitoring processing element compares the projected completion time to the predetermined threshold time for the maintenance plan to determine whether the maintenance plan will be complete within the threshold time if the remaining tasks are performed as scheduled. Blocks <b>60</b> and <b>62</b>. If the projected completion time is within the threshold time, the scheduled tasks of the maintenance plan continue to be performed and monitored, and an as-performed time repeatedly determined and compared to the threshold time, until the maintenance plan is complete. Blocks <b>64</b> and <b>66</b>.
0036If, at anytime during the performance of maintenance, the projected completion time is exceeds the threshold time, the monitoring processing element <b>24</b> communicates with the organizing processing element <b>20</b> to determine whether the other tasks can be rescheduled such that the maintenance plan can be completed within the threshold time. Blocks <b>68</b> and <b>70</b>. In this regard, the organizing processing element can determine whether the schedule can be recreated for the number of tasks remaining and the time remaining. Alternatively, the organizing processing element can determine whether any resources can be transferred from one task to another to thereby provide more resources to the remaining tasks to thereby speed up performance of the remaining tasks. In this regard, a method such as that disclosed by the Fox '134 patent can be applied to the schedule to determine whether the schedule can be recreated within the required threshold time.
0037For example, the organizing processing element <b>20</b> can attempt to improve the cycle time for a subset of the tasks on the schedule by setting the left and right boundaries in accordance with the desired cycle time, e.g., separating the left and right boundaries by two days in order to define the cycle time to be two days, and then applying the shifting operations only to the subset of tasks of interest. For example, in the aircraft industry, level L<sub>2 </sub>may be responsible for the maintenance of all squadron aircraft with the maintenance of each aircraft being a respective member of the level. If the aircraft are at various stages of completion, one may desire to accelerate the tasks associated with the aircraft that is furthest from completion without altering the schedule for the tasks associated with the other aircraft so that all of the aircraft can be completed by the desired completion date. To accelerate the remaining tasks associated with the aircraft that is furthest from completion, the remaining tasks are right shifted, i.e., moved forward in time, as much as possible subject to the constraints to which the respective tasks are subject. The tasks remaining to be performed for the other aircraft are typically left undisturbed so that the maintenance of the aircraft that is furthest from completion is effectively accelerated relative to the production of the other aircraft. Alternatively, the tasks remaining to be performed for the other aircraft may be shifted, typically in a rightward direction in order to delay their performance, in order to make additional resources available for the performance of the remaining tasks associated with the aircraft that is furthest from completion, thereby effectively loosening the constraints otherwise imposed upon the aircraft that is furthest from completion. In either instance, the schedules are preferably arranged such that the maintenance of all of the aircraft is completed at the same or nearly the same time and in accordance with the desired completion schedule.
0038If the other tasks cannot be rescheduled such that the maintenance plan can be completed within the threshold time, in the same manner as when the organizing processing element <b>20</b> solicited resources to schedule the tasks within the predetermined threshold time, the organizing processing element <b>20</b> communicates with the organizing processing element <b>30</b> of the next higher level to thereby solicit additional resources from the higher level. Blocks <b>72</b> and <b>74</b>. Once solicited, the organizing processing element from the higher level attempts to replan the maintenance plan and thereafter reschedule the tasks at the higher level to account for tasks from the lower level requiring additional resources. Blocks <b>42</b> and <b>46</b>. Once the organizing processing element <b>30</b> reschedules the tasks within the maintenance plan at the higher level to accommodate the resource solicitation from the lower level, the resource allocations are communicated to the lower level organizing processing element <b>20</b>.
0039The lower level organizing processing element <b>20</b>, then reschedules the tasks of the lower level to include the new allocated resources. If the higher level cannot replan and/or reschedule the maintenance plan and/or tasks to accommodate tasks from the lower level, the organizing processing element <b>20</b> can reduce the maintenance demand on the resources at the lower level by deferring or removing lower priority tasks, that place demand on the capacity constraining resource, from the schedule of the lower level maintenance plan Blocks <b>76</b>-<b>82</b>. In an alternative embodiment, the higher level organizing processing element <b>30</b> will replan and/or reschedule the maintenance plan and/or tasks to accommodate tasks from the lower level even if the higher level cannot spare the solicited resources. In such an instance, the higher level organizing processing element will proceed through steps similar to the lower level by soliciting resources from the next higher level, or deferring or removing lower priority tasks from the maintenance plan that place demand on the capacity constraining resource.
0040Therefore the systems, methods and computer program products of the present invention dynamically manages the resources of a hierarchical organization by monitoring performance of a maintenance plan based on a status of the tasks of the maintenance plan. The present invention also allows each level of the hierarchical organization to analyze the maintenance requirements of the equipment and/or product of the respective level regardless of the relevant knowledge of the equipment and/or product. Importantly, the present invention additionally allows for resource reallocation among different levels of the hierarchical organization based on knowledge of priority of maintenance to be performed without requiring an unnecessarily long amount of time.
0041In various advantageous embodiments, portions of the system and method of the present invention include a computer program product. The computer program product includes a computer-readable storage medium, such as the non-volatile storage medium, and computer-readable program code portions, such as a series of computer instructions, embodied in the computer-readable storage medium. Typically, the computer program is stored and executed by a processing unit or a related memory device, such as the organizing processing elements <b>20</b>, <b>30</b> and/or monitoring processing elements <b>26</b>, <b>34</b> as depicted in FIG. <b>2</b>.
0042In this regard, <figref idref="DRAWINGS">FIGS. 1-3</figref> are block diagram, flowchart and control flow illustrations of methods, systems and program products according to the invention. It will be understood that each block or step of the block diagram, flowchart and control flow illustrations, and combinations of blocks in the block diagram, flowchart and control flow illustrations, can be implemented by computer program instructions. These computer program instructions may be loaded onto a computer or other programmable apparatus to produce a machine, such that the instructions which execute on the computer or other programmable apparatus create means for implementing the functions specified in the block diagram, flowchart or control flow block(s) or step(s). These computer program instructions may also be stored in a computer-readable memory that can direct a computer or other programmable apparatus to function in a particular manner, such that the instructions stored in the computer-readable memory produce an article of manufacture including instruction means which implement the function specified in the block diagram, flowchart or control flow block(s) or step(s). The computer program instructions may also be loaded onto a computer or other programmable apparatus to cause a series of operational steps to be performed on the computer or other programmable apparatus to produce a computer implemented process such that the instructions which execute on the computer or other programmable apparatus provide steps for implementing the functions specified in the block diagram, flowchart or control flow block(s) or step(s).
0043Accordingly, blocks or steps of the block diagram, flowchart or control flow illustrations support combinations of means for performing the specified functions, combinations of steps for performing the specified functions and program instruction means for performing the specified functions. It will also be understood that each block or step of the block diagram, flowchart or control flow illustrations, and combinations of blocks or steps in the block diagram, flowchart or control flow illustrations, can be implemented by special purpose hardware-based computer systems which perform the specified functions or steps, or combinations of special purpose hardware and computer instructions.
0044Many modifications and other embodiments of the invention will come to mind to one skilled in the art to which this invention pertains having the benefit of the teachings presented in the foregoing descriptions and the associated drawings. Therefore, it is to be understood that the invention is not to be limited to the specific embodiments disclosed and that modifications and other embodiments are intended to be included within the scope of the appended claims. Although specific terms are employed herein, they are used in a generic and descriptive sense only and not for purposes of limitation.
Contents5
5 sheets
Sheet 1 Sheet 2 Sheet 3 Sheet 4 Sheet 5
Every citation, both waysCites: the store holds 7 of 8
| Document | Relation | Office | Cited during |
|---|---|---|---|
| US2010257015A1 | Cited by | United States of America | Pre-grant |
| US7813871B2 | Cited by | United States of America | Applicant |
| US8571747B2 | Cited by | United States of America | Applicant |
| US12120040B2 | Cited by | United States of America | Applicant |
| US10594610B2 | Cited by | United States of America | Applicant |
| US11303570B2 | Cited by | United States of America | Applicant |
| US11323373B2 | Cited by | United States of America | Applicant |
| US11650857B2 | Cited by | United States of America | Applicant |
| US2005114861A1 | Cited by | United States of America | Pre-grant |
| US9639297B2 | Cited by | United States of America | Applicant |
| US10324757B2 | Cited by | United States of America | Applicant |
| US11709709B2 | Cited by | United States of America | Applicant |
| US9773002B2 | Cited by | United States of America | Applicant |
| US2008052720A1 | Cited by | United States of America | Pre-grant |
| US11658916B2 | Cited by | United States of America | Applicant |
| US11526304B2 | Cited by | United States of America | Applicant |
| US2010169270A1 | Cited by | United States of America | Pre-grant |
| US8782654B2 | Cited by | United States of America | Applicant |
| US12124878B2 | Cited by | United States of America | Applicant |
| US2008010107A1 | Cited by | United States of America | Pre-grant |
| US11711301B2 | Cited by | United States of America | Applicant |
| US2009150022A1 | Cited by | United States of America | Pre-grant |
| US10268402B2 | Cited by | United States of America | Applicant |
| US9367548B2 | Cited by | United States of America | Applicant |
| US7958507B2 | Cited by | United States of America | Search report |
| US8650060B2 | Cited by | United States of America | Search report |
| US2005268299A1 | Cited by | United States of America | Pre-grant |
| US11533274B2 | Cited by | United States of America | Applicant |
| US9535776B2 | Cited by | United States of America | Applicant |
| US11831564B2 | Cited by | United States of America | Applicant |
| US11886915B2 | Cited by | United States of America | Applicant |
| US2005198636A1 | Cited by | United States of America | Pre-grant |
| US11467883B2 | Cited by | United States of America | Applicant |
| US9778959B2 | Cited by | United States of America | Applicant |
| US9785479B2 | Cited by | United States of America | Applicant |
| US2004122722A1 | Cited by | United States of America | Pre-grant |
| US10938723B2 | Cited by | United States of America | Applicant |
| US2008010004A1 | Cited by | United States of America | Pre-grant |
| US7747382B2 | Cited by | United States of America | Applicant |
| US10733028B2 | Cited by | United States of America | Applicant |
| US2008010005A1 | Cited by | United States of America | Pre-grant |
| US2008080412A1 | Cited by | United States of America | Pre-grant |
| US9063938B2 | Cited by | United States of America | Applicant |
| US2005027579A1 | Cited by | United States of America | Pre-grant |
| US11494235B2 | Cited by | United States of America | Applicant |
| US8271631B1 | Cited by | United States of America | Search report |
| US2006288346A1 | Cited by | United States of America | Pre-grant |
| US10812387B2 | Cited by | United States of America | Applicant |
| US10313243B2 | Cited by | United States of America | Applicant |
| US12039370B2 | Cited by | United States of America | Applicant |
| US10895993B2 | Cited by | United States of America | Applicant |
| US11765101B2 | Cited by | United States of America | Applicant |
| US11656907B2 | Cited by | United States of America | Applicant |
| US11630704B2 | Cited by | United States of America | Applicant |
| US2008046167A1 | Cited by | United States of America | Pre-grant |
| US2009287530A1 | Cited by | United States of America | Pre-grant |
| US11537435B2 | Cited by | United States of America | Applicant |
| US9256606B2 | Cited by | United States of America | Applicant |
| US8122010B2 | Cited by | United States of America | Applicant |
| US11522952B2 | Cited by | United States of America | Applicant |
| WO2008079413A1 | Cited by | World Intellectual Property Organization (WIPO) | International search |
| US11762694B2 | Cited by | United States of America | Applicant |
| US11494332B2 | Cited by | United States of America | Applicant |
| US11960937B2 | Cited by | United States of America | Applicant |
| US11720290B2 | Cited by | United States of America | Applicant |
| US12009996B2 | Cited by | United States of America | Applicant |
| US11347408B2 | Cited by | United States of America | Applicant |
| US8751699B1 | Cited by | United States of America | Search report |
| US7668744B2 | Cited by | United States of America | Applicant |
| US12008405B2 | Cited by | United States of America | Applicant |
| US2007106994A1 | Cited by | United States of America | Pre-grant |
| US8856793B2 | Cited by | United States of America | Search report |
| US11522811B2 | Cited by | United States of America | Applicant |
| US10108621B2 | Cited by | United States of America | Applicant |
| US2012110582A1 | Cited by | United States of America | Pre-grant |
| US11496415B2 | Cited by | United States of America | Applicant |
| US2008114507A1 | Cited by | United States of America | Pre-grant |
| US8832706B2 | Cited by | United States of America | Applicant |
| US8875150B2 | Cited by | United States of America | Applicant |
| US11537434B2 | Cited by | United States of America | Applicant |
| US2005192937A1 | Cited by | United States of America | Pre-grant |
| US9880876B2 | Cited by | United States of America | Applicant |
| US10963422B2 | Cited by | United States of America | Applicant |
| US2007282801A1 | Cited by | United States of America | Pre-grant |
| US2007156496A1 | Cited by | United States of America | Pre-grant |
| US11652706B2 | Cited by | United States of America | Applicant |
| US8060883B1 | Cited by | United States of America | Search report |
| US11861404B2 | Cited by | United States of America | Applicant |
| US8621477B2 | Cited by | United States of America | Search report |
| US5369570A | Cites | United States of America | Applicant |
| US5682530A | Cites | United States of America | Search report |
| US5701439A | Cites | United States of America | Applicant |
| US5889956A | Cites | United States of America | Search report |
| US5890134A | Cites | United States of America | Applicant |
| US6333936B1 | Cites | United States of America | Search report |
| US6351734B1 | Cites | United States of America | Search report |
| Leonard, David C. “Understanding and managing conflict in a technical communication department.” Technical Communication. Feb. 1993. | Non-patent | – | Search report |
| Matthews, Linda M. et al. “Goal selection in a stimulated managerial environment.” Group & Organization Management. Dec. 1994. | Non-patent | – | Search report |
| <i>Aircraft Maintenance Event Scheduler </i>(<i>AMES</i>)<i>—Products; Ω mega Airlines Software</i>; pp. 1-3; <http://www.omegaair.com/products.htm> (visited Aug. 27, 2001). | Non-patent | – | Third party observation |
| Philippe Marquis; <i>Maintenance scheduler; Maintenance scheduler software</i>; pp. 1-3; <http://perso.easynet.fr/˜philimar/mtschedu.htm> (visited Aug. 27, 2001). | Non-patent | – | Third party observation |
2 members in 1 office
Priority claims2
| Document | Office | Kind | Date |
|---|---|---|---|
| 96404501 | United States of America | A | |
| US20010964045 | – | – | – |
Members2
| Document | Office | Kind | |
|---|---|---|---|
| US2003061261A1 | United States of America | A1 | |
| US6952828B2This record | United States of America | B2 |
38 transactions on the USPTO file
Allowed without a rejection on record.
- Non-final rejections
- 0
- Final rejections
- 0
- RCEs
- 0
- Appeals
- 0
Over time
Point at a mark for the transactionTransactions
| Event | |
|---|---|
| Recordation of Patent Grant Mailed | |
| Patent Issue Date Used in PTA CalculationAllowed | |
| Issue Notification MailedAllowed | |
| Receipt into Pubs | |
| Dispatch to FDC | |
| Application Is Considered Ready for Issue | |
| Receipt into Pubs | |
| Workflow - File Sent to Contractor | |
| Issue Fee Payment Verified | |
| Issue Fee Payment Received | |
| Mail Examiner's Amendment | |
| Examiner's Amendment Communication | |
| Mail Notice of AllowanceAllowed | |
| IFW TSS Processing by Tech Center Complete | |
| Notice of Allowance Data Verification CompletedAllowed | |
| Case Docketed to Examiner in GAU | |
| Case Docketed to Examiner in GAU | |
| Case Docketed to Examiner in GAU | |
| Case Docketed to Examiner in GAU | |
| Case Docketed to Examiner in GAU | |
| Case Docketed to Examiner in GAU | |
| Case Docketed to Examiner in GAU | |
| Case Docketed to Examiner in GAU | |
| Case Docketed to Examiner in GAU | |
| Case Docketed to Examiner in GAU | |
| Application Dispatched from OIPE | |
| Application Is Now Complete | |
| Affidavit(s) (Rule 131 or 132) or Exhibit(s) Received | |
| Miscellaneous Incoming Letter | |
| Request for Foreign Priority (Priority Papers May Be Included) | |
| Information Disclosure Statement (IDS) Filed | |
| Information Disclosure Statement (IDS) Filed | |
| Information Disclosure Statement (IDS) Filed | |
| Information Disclosure Statement (IDS) Filed | |
| Notice Mailed--Application Incomplete--Filing Date Assigned | |
| Correspondence Address Change | |
| IFW Scan & PACR Auto Security Review | |
| Initial Exam Team nn |
6 legal events, as the office reported them to INPADOC
Over the term
Point at a mark for the eventEvents
| Event | Code | |
|---|---|---|
| Fee paymentFPAY | FPAY | |
| Fee paymentFPAY | FPAY | |
| Fee paymentFPAY | FPAY | |
| Information on status: patent grantGrantedPATENTED CASESTCF | STCF | |
| Fee payment procedurePAYOR NUMBER ASSIGNED (ORIGINAL EVENT CODE: ASPN); ENTITY STATUS OF PATENT OWNER: LARGE ENTITYFEPP | FEPP | |
| AssignmentAS | AS |
Numbers
- Publication
- 06952828
- Publication, DOCDB
- 6952828
- Publication, EPODOC
- US6952828
- Application
- 9964045
- Application, DOCDB
- 96404501
- Application, EPODOC
- US20010964045
Titles
- English
- System, method and computer program product for dynamic resource management
Patent term adjustment
- A delay
- +851 daysthe office missed an examination deadline
- Net adjustment
- 851 days
Classification
- CPC, 2
- G06Q10/06
- G06Q10/06312
- IPC, 1
- G06Q10 06
- USPC, 2
- 718104000
- 705007220