DETAILED ACTION
This office action is in response to application file on 3/8/2024.
Claims 1 – 20 are pending.
Priority is claimed to provisional application 63/489735 (filed on 3/10/2023).
Notice of Pre-AIA or AIA Status
The present application, filed on or after March 16, 2013, is being examined under the first inventor to file provisions of the AIA .
Claim Rejections - 35 USC § 103
The following is a quotation of 35 U.S.C. 103 which forms the basis for all obviousness rejections set forth in this Office action:
A patent for a claimed invention may not be obtained, notwithstanding that the claimed invention is not identically disclosed as set forth in section 102, if the differences between the claimed invention and the prior art are such that the claimed invention as a whole would have been obvious before the effective filing date of the claimed invention to a person having ordinary skill in the art to which the claimed invention pertains. Patentability shall not be negated by the manner in which the invention was made.
Claim(s) 1, 2, 9 – 12, 19 and 20 is/are rejected under 35 U.S.C. 103 as being unpatentable over Dushok (US 20180157535), in view of Chau et al (US 20190317850, hereinafter Chau), and further in view of Raman et al (US 20170109214, hereinafter Raman).
As per claim 1, Dushok discloses: A method of tracking state data on a computer, the method comprising:
initializing a pending set, wherein the pending set comprises a set of changed watchable data; (Dushok [0048]: “sending a request at 3003 to the Schedule Database 200 to retrieve task profiles scheduled to be executed at a near future time period e.g., at T.sub.1.”)
iteratively determining whether the pending set is empty, and based on a determination that the pending set is not empty: removing an item from the set of changed watchable data; (Dushok [0049]: “the STS_SLB daemon process can determine at 3005 whether or not one or more scheduled tasks are ready for their execution at time T.sub.1. For example, upon a received response for the request at 3003, the STS_SLB component can determine at 3005 if there are one or more pending scheduled tasks for their execution at time T.sub.1. For example, a conditional statement can be executed at 3005 to determine if there any pending tasks scheduled to be executed at T.sub.1 and/or between T.sub.0 and T.sub.1.”)
determining whether the removed item is a watch object; wherein, based on a determination that the removed item is a watch object, retrieving a previously computed value of the watch object, computing a new value of the watch object, comparing the previously computed value of the watch object with the new value; (Dushok [0049]: “when there are pending tasks, the STS_SLB component can generate a new task execution order for the pending task or alternatively use an execution order determined at a previous iteration of the daemon process as shown at 3006. For example, in some instances, when a monitored TCD has not shown any performance changes and a previous execution order has been determined on a previous iteration for the pending scheduled tasks the previously determined execution order can be reused as shown at 3007.”)
Dushok did not explicitly disclose:
initializing an action set;
and based on a determination that the computed value of the watch object has changed or based on the determination that the removed item is not a watch object the method further comprises: adding new dependent items which depend on the removed item to the pending set, removing any dependency links to the new dependent items, removing any watch objects with no dependencies from the pending set, adding all actions to the action set that are triggered when the removed item changes;
and performing each action in the action set.
However, Chau teaches:
initializing an action set; (Chau [0043]: “Manager system 110 running AI action selection process 115 can include manager system 110 using decision data structure that cognitively maps error classifier identifiers. One or more actions that are specified in such a decision data structure can include, e.g. actions to install a patch on a particular software program running on one or more resource of resources 2602A-2602Z. One or more action can also include activation of a logging profile for logging data of one or more resource of resources 2602A-2602Z. An action specified in a decision data structure can also include other actions, e.g. system resets, system reboots, reconfigurations, and the like. Actions can further include notifications, e.g. to an enterprise administrator associated to administrator client computer device 120 and/or to a support administrator associated to service support administrator client computer device 170.”)
and based on a determination that the computed value of the watch object has changed or based on the determination that the removed item is not a watch object the method further comprises: adding all actions to the action set that are triggered when the removed item changes; and performing each action in the action set. (Chau [0048]: “At block 330 manager system can perform determining one or more action based on the error classifier, wherein the determining includes using a decision data structure that cognitively maps, for first through Nth error classifiers, an error classifier to at least one action associated to the error classifier. At block 340 manager system 110 can perform the one or more action in response to the determining, wherein the one or more action is an action for correction of the error condition indicated by the error screen indicating an error condition of one or more resource of a plurality of resources of a services system.”)
It would have been obvious for one of ordinary skill in the art before the effective filing date of the claimed invention to incorporate the teaching of Chau into Dushok in order to initializing an action set; and based on a determination that the computed value of the watch object has changed or based on the determination that the removed item is not a watch object the method further comprises: adding new dependent items which depend on the removed item to the pending set, removing any dependency links to the new dependent items, removing any watch objects with no dependencies from the pending set, adding all actions to the action set that are triggered when the removed item changes; and performing each action in the action set. Dushok teaches a scheduling system for scheduling task, One of ordinary skill in the art can easily see that the scheduling system of Dushok can easily be adapted to be used for monitoring and maintenance tasks without deviating from the overall concept of Dushok and is therefore rejected under 35 UCS 103.
Raman teaches:
the method further comprises: adding new dependent items which depend on the removed item to the pending set (Raman [0002]), removing any dependency links to the new dependent items (Raman [0063]), removing any watch objects with no dependencies from the pending set, (Raman [0066])
It would have been obvious for one of ordinary skill in the art before the effective filing date of the claimed invention to incorporate the teaching of Raman into Dushok and Chau in order to adding new dependent items which depend on the removed item to the pending set, removing any dependency links to the new dependent items, removing any watch objects with no dependencies from the pending set. Raman has shown that the claimed limitations are merely commonly known steps for parallel task scheduling system, applicants have merely claimed the combination of known parts in the field to achieve predictable results of dependency based task scheduling and is therefore rejected under 35 UCS 103.
As per claim 2, the combination of Dushok, Chau and Raman further teach:
The method of claim 1, the method further comprising: assigning a priority order for each item in the pending set; wherein the removing an item from the pending set is based upon the priority order of each item in the pending set. (Dushok [0077])
As per claim 9, the combination of Dushok, Chau and Raman further teach:
The method of claim 1, wherein the removing any watch objects with no dependencies from the pending set further comprises removing watch objects whose only dependencies are other watch objects with no dependencies. (Raman [0066])
As per claim 10, the combination of Dushok, Chau and Raman further teach:
The method of claim 5, wherein the dependency link is stored in addressable memory. (Raman [0031])
As per claim 11, it is the device variant of claim 1 and is therefore rejected under the same rationale. (Dushok figures 10 and 11)
As per claim 12, it is the device variant of claim 2 and is therefore rejected under the same rationale.
As per claim 19, it is the device variant of claim 9 and is therefore rejected under the same rationale.
As per claim 20, it is the device variant of claim 10 and is therefore rejected under the same rationale.
Claim(s) 3, 4, 13 and 14 is/are rejected under 35 U.S.C. 103 as being unpatentable over Dushok, Chau and Raman, and further in view of Beckford (USPAT 9135581).
As per claim 3, the combination of Dushok, Chau and Raman did not teach:
The method of claim 2, wherein the assigning the priority order is based on a computed evaluation cost for the item.
However, Beckford teaches:
The method of claim 2, wherein the assigning the priority order is based on a computed evaluation cost for the item. (Beckford col 2, lines 35 – 48.)
It would have been obvious for one of ordinary skill in the art before the effective filing date of the claimed invention to incorporate the teaching of Beckford into Dushok, Chau and Raman in order to assign the priority order is based a computed evaluation cost for the item. Dushok is silent in how the priority of the tasks are calculated while Beckford has shown that the claimed limitations are merely commonly known steps for calculating priority, applicants have merely claimed the combination of known parts in the field to achieve predictable results of calculating and ranking priority levels based on cost of items and is therefore rejected under 35 UCS 103.
As per claim 4, the combination of Dushok, Chau and Raman did not teach:
The method of claim 2, wherein the assigned priority order for each item is determined by: selecting an item; estimating an evaluation cost for the selected item; determining a priority value for each item which the selected item depends on; and creating a priority value for the selected item based on the sum of the evaluation cost of the selected item and the greatest priority value of the items which the selected item depends on.
However, Beckford teaches:
The method of claim 2, wherein the assigned priority order for each item is determined by: selecting an item; estimating an evaluation cost for the selected item; determining a priority value for each item which the selected item depends on; and creating a priority value for the selected item based on the sum of the evaluation cost of the selected item and the greatest priority value of the items which the selected item depends on. (Beckford col 2, lines 35 – 48; and col 10, lines 44 – 58.)
It would have been obvious for one of ordinary skill in the art before the effective filing date of the claimed invention to incorporate the teaching of Beckford into Dushok, Chau and Raman in order to have the assigned priority order for each item is determined by: selecting an item; estimating an evaluation cost for the selected item; determining a priority value for each item which the selected item depends on; and creating a priority value for the selected item based on the sum of the evaluation cost of the selected item and the greatest priority value of the items which the selected item depends on. Dushok is silent in how the priority of the tasks are calculated while Beckford has shown that the claimed limitations are merely commonly known steps for calculating priority, applicants have merely claimed the combination of known parts in the field to achieve predictable results of calculating and ranking priority levels and is therefore rejected under 35 UCS 103.
As per claim 13, it is the device variant of claim 3 and is therefore rejected under the same rationale.
As per claim 14, it is the device variant of claim 4 and is therefore rejected under the same rationale.
Claim(s) 5, 6, 15 and 16 is/are rejected under 35 U.S.C. 103 as being unpatentable over Dushok, Chau and Raman, and further in view of Arajujo JR et al (US 20110035802, hereinafter Arajujo).
As per claim 5, the combination of Dushok, Chau and Raman did not teach:
The method of claim 2, the method further comprising: creating a dependency link between a dependency and a dependent; determining whether the priority order of the dependent is less than or equal to the priority order of the dependency; and upon a determination that the priority order of the dependent is less than or equal to the dependency, setting the priority order of the dependent to be greater than the priority order of the dependency.
However, Arujujo teaches:
The method of claim 2, the method further comprising: creating a dependency link between a dependency and a dependent; determining whether the priority order of the dependent is less than or equal to the priority order of the dependency; and upon a determination that the priority order of the dependent is less than or equal to the dependency, setting the priority order of the dependent to be greater than the priority order of the dependency. (Arujujo [0017])
It would have been obvious for one of ordinary skill in the art before the effective filing date of the claimed invention to incorporate the teaching of Arujujo into Dushok, Chau and Raman in order to create a dependency link between a dependency and a dependent; determining whether the priority order of the dependent is less than or equal to the priority order of the dependency; and upon a determination that the priority order of the dependent is less than or equal to the dependency, setting the priority order of the dependent to be greater than the priority order of the dependency. Arujujo has shown that the concept of the boosting priority level of dependent task to that of parent is commonly known and used in the field to task scheduling to ensure the timeliness of the parent task being completed, applicants have merely claimed the combination of known parts in the field to achieve predictable results of calculating and ranking priority levels and is therefore rejected under 35 UCS 103.
As per claim 6, the combination of Dushok, Chau, Raman and Arujujo further teach:
The method of claim 5, the method further comprising: evaluating the priority order of each subsequent dependent which depends on the dependent; and adjusting the priority order of a subsequent dependent upon a determination that the subsequent dependent has a priority order that is less than or equal to the dependent. (Arujujo [0017])
As per claim 15, it is the device variant of claim 5 and is therefore rejected under the same rationale.
As per claim 16, it is the device variant of claim 6 and is therefore rejected under the same rationale.
Claim(s) 7, 8, 17 and 18 is/are rejected under 35 U.S.C. 103 as being unpatentable over Dushok, Chau and Raman, and further in view of Jaehde et al (US 20110022882, hereinafter Jaehde).
As per claim 7, the combination of Dushok, Chau and Raman did not teach:
The method of claim 1, the method further comprising: determining an affected count of an item, wherein the affected count reflects an impact of a change in architecture of a watch graph which includes the item.
However, Jaehde teaches:
The method of claim 1, the method further comprising: determining an affected count of an item, wherein the affected count reflects an impact of a change in architecture of a watch graph which includes the item. (Jaehde [0060])
It would have been obvious for one of ordinary skill in the art before the effective filing date of the claimed invention to incorporate the teaching of Jaehde into Dushok, Chau and Raman in order to determine an affected count of an item, wherein the affected count reflects an impact of a change in architecture of a watch graph which includes the item. Dushok teaches a scheduling system for scheduling task, one of ordinary skill in the art can easily see that the scheduling system of Dushok can easily be adapted to be used for monitoring and maintenance tasks without deviating from the overall concept of Dushok and is therefore rejected under 35 UCS 103.
As per claim 8, the combination of Dushok, Chau, Raman and Jaehde further teach:
The method of claim 7, the method further comprising: determining that an item with an affected count of 0 has a dependency whose value has changed, and in response to the determination that the dependency has changed, associating a flag with the item. (Jaehde [0060] – [0061])
As per claim 17, it is the device variant of claim 7 and is therefore rejected under the same rationale.
As per claim 18, it is the device variant of claim 8 and is therefore rejected under the same rationale.
Conclusion
The prior art made of record and not relied upon is considered pertinent to applicant's disclosure.
Banerjee et al (US 20210096921) teaches “A first command is fetched for execution on a GPU. Dependency information for the first command, which indicates a number of parent commands that the first command depends on, is determined. The first command is inserted into an execution graph based on the dependency information. The execution graph defines an order of execution for plural commands including the first command. The number of parent commands are configured to be executed on the GPU before executing the first command. A wait count for the first command, which indicates the number of parent commands of the first command, is determined based on the execution graph. The first command is inserted into cache memory in response to determining that the wait count for the first command is zero or that each of the number of parent commands the first command depends on has already been inserted into the cache memory.”;
Xing et al (US 20140282562) teaches “to execute at least one thread desiring to enqueue at least one new node to the queue, enqueue the at least one new node to the queue, a first state being observed based on information in the tail identifying a predecessor node when the at least one new node is enqueued, observe a second state based on the predecessor node, determine if the predecessor node has changed based on comparing the first state to the second state, and set ordering in the queue based on the determination.”;
Plancarte et al (US 20100162245) teaches “dynamically creates runtime tasks for batch job execution and to optimize parallelism. The task creation can be based on the amount of processing power available locally or across batch servers. The work can be allocated across multiple threads in multiple batch server instances as there are available. A master task splits the items to be processed into smaller parts and creates a runtime task for each. The batch server picks up and executes as many runtime tasks as the server is configured to handle. The runtime tasks can be run in parallel to maximize hardware utilization. Scalability is provided by splitting runtime task execution across available batch server instances, and also across machines. During runtime task creation, all dependency and batch group information is propagated from the master task to all runtime tasks. Dependencies and batch group configuration are honored by the batch engine.”.
Any inquiry concerning this communication or earlier communications from the examiner should be directed to CHARLES M SWIFT whose telephone number is (571)270-7756. The examiner can normally be reached Monday - Friday: 9:30 AM - 7PM.
Examiner interviews are available via telephone, in-person, and video conferencing using a USPTO supplied web-based collaboration tool. To schedule an interview, applicant is encouraged to use the USPTO Automated Interview Request (AIR) at http://www.uspto.gov/interviewpractice.
If attempts to reach the examiner by telephone are unsuccessful, the examiner’s supervisor, April Blair can be reached at 5712701014. The fax phone number for the organization where this application or proceeding is assigned is 571-273-8300.
Information regarding the status of published or unpublished applications may be obtained from Patent Center. Unpublished application information in Patent Center is available to registered users. To file and manage patent submissions in Patent Center, visit: https://patentcenter.uspto.gov. Visit https://www.uspto.gov/patents/apply/patent-center for more information about Patent Center and https://www.uspto.gov/patents/docx for information about filing in DOCX format. For additional questions, contact the Electronic Business Center (EBC) at 866-217-9197 (toll-free). If you would like assistance from a USPTO Customer Service Representative, call 800-786-9199 (IN USA OR CANADA) or 571-272-1000.
/CHARLES M SWIFT/Primary Examiner, Art Unit 2196