Prosecution Insights
Last updated: October 02, 2026
Application No. 18/617,760

MESSAGE RETRY OPTIMIZATION USING SELF-LEARNING

Non-Final OA §101§103
Filed
Mar 27, 2024
Examiner
NWUHA, SAMUEL OBINNA NNAJI
Art Unit
Tech Center
Assignee
International Business Machines Corporation
OA Round
1 (Non-Final)
Grant Probability
Favorable
1-2
OA Rounds

Examiner Intelligence

Grants only 0% of cases
0%
Career Allowance Rate
0 granted / 0 resolved
-60.0% vs TC avg
Minimal +0% lift
Without
With
+0.0%
Interview Lift
resolved cases with interview
Typical timeline
Avg Prosecution
9 currently pending
Career history
5
Total Applications
across all art units
This examiner has no resolved cases yet (career too new); statute-level performance unavailable. The Grant Probability card shows Tech Center averages instead.

Office Action

§101 §103
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 . Examiner Notes Examiner cites particular columns and line numbers in the references as applied to the claims below for convenience of the applicant. Although the specified citations are representative of the teachings in the art and are applied to the specific limitations within the individual claim, other passages and figures may apply as well. It is respectfully requested that, in preparing responses, the applicant fully consider the references cited in their entirety as potentially teaching all or part of the claimed invention, as well as the context of the passage as taught by the prior art or disclosed by the examiner. Claim Rejections - 35 USC § 101 35 U.S.C. 101 reads as follows: Whoever invents or discovers any new and useful process, machine, manufacture, or composition of matter, or any new and useful improvement thereof, may obtain a patent therefor, subject to the conditions and requirements of this title. Claims [1-20] rejected under 35 U.S.C. 101 because the claimed invention is directed to an mental process without significantly more. Step 1: Claim 1 is directed to “A computer-implemented method, comprising:” a method, and is therefore directed to a process, which is one of the statutory categories. Step 2A Prong One: Claim 1 recites the limitation: learning dependency relationships between types of messages […]. generating a dependency graph associated with a first type of message wherein the dependency graph includes respective ones of the dependency relationships associated with the first type of message. All of which can be performed in the human mind through observation, evaluation, judgement, and opinion, with the aid of pen and paper, and therefore reciting a mental process. Accordingly, claim 1 recited a judicial exception (i.e. an abstract idea). Step 2A Prong Two: The additional elements recited in claim 1 include: A computer-implemented method…a distributed computing system…Message oriented middleware Claim 1 fails to recite specific improvement to how middleware routes, queues, or processes messages, and no measurable technical improvement. (MPEP 2106.05(a)). Additionally, limitation iii is invoked generically, performing only its well-known routing and storing function (MPEP 2106.05(b)). Limitation ii confines the abstract idea and merely limits it to a particular technological field (MPEP 2106.05(h)). Step 2B: The additional elements; “A computer-implemented method…a distributed computing system…message oriented middleware”, simply arranges this generic conventional middleware to perform the abstract idea in its ordinary, expected manner: receiving messages and routing them, without any unconventional technical arrangement that would make it an inventive concept. Therefore, the additional elements, when considered individually and in combination, fail to add an inventive concept to the claim. Consequently, claim 1 does not amount to significantly more than the recited judicial exceptions and the claim is not eligible. Claim 2 is dependent on claim 1, and therefore inherits the same judicial exception recited in claim 1. Further, claim 2 recites, wherein the dependency relationships included in the dependency graph comprise relationships in which processing the message of the first type of message is dependent upon receipt of one or more additional messages in the distributed computing system, which can be performed in the human mind through observation, evaluation, judgement, and opinion, with the aid of pen, paper, or a computer, and therefore reciting a mental process Claim 3 is dependent on claim 1, and therefore inherits the same judicial exception recited in claim 1. Further, claim 3 recites, wherein the learning comprises generating an artificial intelligence model based on message arrival logs and message error logs in the distributed computing system which can be performed in the human mind through observation, evaluation, judgement, and opinion, with the aid of pen, paper, or a computer, and therefore reciting a mental process Claim 4 is dependent on claim 1, and therefore inherits the same judicial exception recited in claim 1. Further, claim 4 recites, updating the artificial intelligence model based on a successful retry attempt to process the message of the first type of message or an unsuccessful retry attempt to process the message of the first type of message which can be performed in the human mind through observation, evaluation, judgement, and opinion, with the aid of pen, paper, or a computer, and therefore reciting a mental process Claim 5 is dependent on claim 1, and therefore inherits the same judicial exception recited in claim 1. Further, claim 5 recites identifying an unsuccessful attempt to process a first historic message of the first type of message by an application in the distributed computing system; identifying a successful retry attempt to process the first historic message by the application in the distributed computing system; and in response to determining a second historic message of a second type of message arrived in the distributed computing system after the unsuccessful attempt and prior to the successful retry attempt, creating a dependency relationship between the first type of message and the second type of message which can be performed in the human mind through observation, evaluation, judgement, and opinion, with the aid of pen, paper, or a computer, and therefore reciting a mental process. Claim 6 is dependent on claim 1, and therefore inherits the same judicial exception recited in claim 1. Further, claim 6 recites, wherein the dependency graph comprises a directed graph in which nodes on the directed graph are representative of messages in an event stream and edges connecting the nodes are representative of dependencies between the messages which can be performed in the human mind through observation, evaluation, judgement, and opinion, with the aid of pen, paper, or a computer, and therefore reciting a mental process Claim 7 is dependent on claim 1, and therefore inherits the same judicial exception recited in claim 1. Further, claim 7 recites, wherein the learning, the generating, and the delaying are performed by an application in the distributed computing system which can be performed in the human mind through observation, evaluation, judgement, and opinion, with the aid of pen, paper, or a computer, and therefore reciting a mental process Claim 8 is dependent on claim 1, and therefore inherits the same judicial exception recited in claim 1. Further, claim 8 recites wherein the learning, the generating, and the delaying are performed by the message-oriented middleware which can be performed in the human mind through observation, evaluation, judgement, and opinion, with the aid of pen, paper, or a computer, and therefore reciting a mental process Claim 9 is dependent on claim 1, and therefore inherits the same judicial exception recited in claim 1. Further, claim 9 recites wherein the learning, the generating, and the delaying are performed by a computing node that is separate from the message-oriented middleware and applications in the distributed computing system which can be performed in the human mind through observation, evaluation, judgement, and opinion, with the aid of pen, paper, or a computer, and therefore reciting a mental process Claim 10 is dependent on claim 1, and therefore inherits the same judicial exception recited in claim 1. Further, claim 10 recites while holding the message of the first type of message in a queue, determining whether all the dependency relationships included in the dependency graph are satisfied which can be performed in the human mind through observation, evaluation, judgement, and opinion, with the aid of pen, paper, or a computer, and therefore reciting a mental process. Claims 11-15, though pointing towards a manufacture, are rejected for the same reasons mentioned in claims 1-10. Claims 16-19, though pointing towards a machine, are rejected for the same reasons mentioned in claims 1-10. 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. Claims 1-20 are rejected under 35 U.S.C. 103 as being unpatentable over Katzer (US 7673302 B1), in view of Kabbinale et al. (US 11860721 B2), Regarding claim 1, Katzer teaches A computer-implemented method, comprising, “A method for processing multiple potentially related requests comprising:…” (Claim 17). Here, showing a method claim that recites queue-management steps, performed on a general-purpose computer. learning dependency relationships between types of messages in a distributed computing system that utilizes message-oriented middleware , “Two computer applications 20 and 30 send requests to a queuing system 10… Requests are sent by the queuing system 10 to a processor 100” Katzer further explains “When two or more requests are related to the same customer, one request can have a dependency on another request.” And that “Any requests with a common attribute that might require that the processing of one request be taken into consideration when the other request is being processed can be considered related to each other.” delaying an automated retry of processing a message of the first type of message until all the dependency relationships included in the dependency graph are satisfied, “A request in the retry queue 50 can be referred to as a failed request. A failed request will remain in the retry queue 50 until a request related to it is processed. An attempt can then be made to process the failed request.” However, Katzer fails to explain generating a dependency graph associated with a first type of message, wherein the dependency graph includes respective ones of the dependency relationships associated with the first type of message, as it doesn’t teach it. Kabbinale et al. picks up this teaching, by stating “the monitoring system may generate prioritized error scores by identifying the most critical software products using a service dependency graph that displays interactions between different software products through knowledge graphs. In a knowledge graph, each software product may be depicted as a node and directed edges may depict interactions and interlinks between the different software products. “ A person of ordinary skill in the art having Katzer’s queue tracked dependency relationships available, would’ve been motivated to show those same relationships using Kabbinale et al.’s known directed graph data structure, because a graph representation was a known, conventional way of organizing dependency data in this field and would predictable allow Katzer’s system to evaluate multiple dependency relationships fort a given message type more efficiently than by traversing separate queues. Thus, making this an application of a known technique, to a known system, to yield a predicable result. Regarding claim 2, Katner teaches wherein the dependency relationships included in the dependency graph comprise relationships in which processing the message of the first type of message is dependent upon receipt of one or more additional messages in the distributed computing system, by detailing, “When two or more requests are related to the same customer, one request can have a dependency on another request. That is, a particular request might be processed successfully only if another particular request is successfully processed first.”. Regarding claim 3, Kabbinale teaches wherein the learning comprises generating an artificial intelligence model based on message arrival logs and message error logs in the distributed computing system by teaching “the monitoring system may train a machine learning model, with the historical software data and the historical error severity scores, to generate a trained machine learning model” and further teaching that the historical software data used for training includes, among other things “log failures or errors associated with the software products”, together with the events/logs identifying arrivals. Regarding claim 4, Kabbinale teaches further comprising updating the artificial intelligence model based on a successful retry attempt to process the message of the first type of message or an unsuccessful retry attempt to process the message of the first type of message by teaching within its claims, implementing a feedback loop to train the machine learning model” and “receiving, by the device, feedback via the feedback loop; and retraining, by the device and based on the feedback, the trained machine learning model.”. It also discloses, “The monitoring system may continuously evaluate the predictions made by the machine learning model and may implement a feedback loop to train the machine learning model until machine learning model makes accurate predictions”. Regarding claim 5, Katzer teaches, wherein the learning comprises: identifying an unsuccessful attempt to process a first historic message of the first type of message by an application in the distributed computing system; identifying a successful retry attempt to process the first historic message by the application in the distributed computing system; and in response to determining a second historic message of a second type of message arrived in the distributed computing system after the unsuccessful attempt and prior to the successful retry attempt, creating a dependency relationship between the first type of message and the second type of message by teaching that “ A failed request will remain in the retry queue 50 until a request related to it is processed. An attempt can then be made to process the failed request… When a related request is processed successfully, the request in the retry queue 50 can be sent to either the in-process queue 70 or the related request queue 60 for processing. If the request that was in the retry queue 50 processes successfully, it can be assumed that the related request was the prerequisite.”. It is understood by the examiner that this is disclosing, in sequence, the intervening second, related message, and the successful retry attempt with the resulting creation of the dependency relationship. Regarding claim 6, Kabbinale teaches, wherein the dependency graph comprises a directed graph in which nodes on the directed graph are representative of messages in an event stream and edges connecting the nodes are representative of dependencies between the messages by teaching “In a knowledge graph, each software product may be depicted as a node and directed edges may depict interactions and interlinks between the different software products.”. Additionally, claim 20 similarly recites “generat[ing] knowledge graph for the software products.” Regarding claim 7, Katzer teaches, wherein the learning, the generating, and the delaying are performed by an application in the distributed computing system by teaching within claim 1, that the pending request queue, in-process queue, related request queue, retry queue, and adapter are each recited as “stored on a computer readable storage medium.”. Katzer further confirms that these are software components (by stating “Two computer applications 20 and 30 send requests to a queuing system 10”) executed within the distributed system, consistent with implementation as an application performing the learning, tracking, and delay functions. This idea is supported by Kabbinale et al explaining that implementing such functionality as a software application is a known architectural choice, as its entire disclosed system is implemented as “monitoring system 301”, a software application executing on a device with its own processor and memory, separate from the underlying software products it monitors. Regarding claim 8, Katzer teaches, wherein the learning, the generating, and the delaying are performed by the message-oriented middleware by teaching “Two computer applications 20 and 30 send requests to a queuing system 10…Requests are sent by the queuing system 10 to a processor 100” It is understood by the examiner that Katzer’s middleware-layer queuing system is what performs the relatedness determination, related-request tracking, and retry-delay functions. Regarding claim 9, Kabbinale teaches, wherein the learning, the generating, and the delaying are performed by a computing node that is separate from the message-oriented middleware and applications in the distributed computing system by teaching “the monitoring system 301 may include one or more devices that are not part of the cloud computing system 302, such as device 400 of FIG. 4, which may include a standalone server or another type of computing device.” Kabbinale further explains “The monitoring system may be utilized across any cloud provider, on-premise environment, or multi-cloud environments, with zero dependency on any tools and/or services.” i.e., a computing node/device that is separate from both the monitored software products and any particular messaging tool. Regarding claim 10, Katzer teaches, further comprising receiving the message of the first type of message from an application in the distributed computing system with an indication of an error by teaching “If an error occurs in the processing of a request, the request is sent to a retry queue in box 290” Katzer further teaches, “the processor 100 will send the request back to the adapter 80, which then sends the request to the retry queue 50”. wherein the delaying comprises: while holding the message of the first type of message in a queue, determining whether all the dependency relationships included in the dependency graph are satisfied by teaching “In box 300, a determination is made whether a request in the retry queue is related to a request that has completed processing. In box 310, if a request in the retry queue is not related to a request that has completed processing, the request in the retry queue is left in the retry queue.” and in response to determining all the dependency relationships included in the dependency graph are satisfied, sending the message of the first type of message back to the application in the distributed computing system for the retry of processing the message of the first type of message by teaching “In box 320, if a request in the retry queue is related to a request that has completed processing, the request in the retry queue is compared to the requests in the in-process queue. In box 330, if the request in the retry queue is not related to a request in the in-process queue, the request in the retry queue is sent to the in-process queue. (i.e., sent back into the processing flow for the retry). Claims 11-15 recite substantially the same limitations as those recited in claims 1-10, respectively, applied to the method of claim 11. Thus, for the same reasons presented with respect to claims 1-10, claims 11-15 are directed to an abstract idea without significantly more and are not eligible. Claims 16-20 recite substantially the same limitations as those recited in claims 1-10, respectively, applied to the method of claim 16. Thus, for the same reasons presented with respect to claims 1-10, claims 16-20 are directed to an abstract idea without significantly more and are not eligible. Conclusion Any inquiry concerning this communication or earlier communications from the examiner should be directed to SAMUEL NWUHA whose telephone number is (571)272-9367. The examiner can normally be reached Monday-Friday; 7:30 am - 5:00pm. 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, Kevin Young can be reached at (571) 270-3180. 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. /SAMUEL OBINNA NNAJI NWUHA/ Examiner, Art Unit 2194 /KEVIN L YOUNG/ Supervisory Patent Examiner, Art Unit 2194
Read full office action

Prosecution Timeline

Mar 27, 2024
Application Filed
Sep 04, 2026
Non-Final Rejection mailed — §101, §103 (current)

Strategy Recommendation AI-generated — please review before filing

Get a prosecution strategy drawn from examiner precedents, rejection analysis, and claim mapping.
Typically takes 5-10 seconds — AI-generated, attorney review required before filing

Prosecution Projections

1-2
Expected OA Rounds
Grant Probability
Low
PTA Risk
Based on 0 resolved cases by this examiner. Grant probability derived from career allowance rate.

Sign in with your work email

Enter your email to receive a magic link. No password needed.

Personal email addresses (Gmail, Yahoo, etc.) are not accepted.

Free tier: 3 strategy analyses per month