Prosecution Insights
Last updated: May 29, 2026
Application No. 18/457,979

INTERACTIVE ANALYTICS SERVICE FOR ALLOCATION FAILURE DIAGNOSIS IN CLOUD COMPUTING ENVIRONMENT

Final Rejection §103
Filed
Aug 29, 2023
Examiner
BRUCKART, BENJAMIN R
Art Unit
2424
Tech Center
2400 — Computer Networks
Assignee
Microsoft Technology Licensing, LLC
OA Round
4 (Final)
52%
Grant Probability
Moderate
5-6
OA Rounds
2y 0m
Est. Remaining
85%
With Interview

Examiner Intelligence

Grants 52% of resolved cases
52%
Career Allowance Rate
84 granted / 162 resolved
-6.1% vs TC avg
Strong +33% interview lift
Without
With
+32.8%
Interview Lift
resolved cases with interview
Typical timeline
4y 9m
Avg Prosecution
5 currently pending
Career history
170
Total Applications
across all art units

Statute-Specific Performance

§101
2.8%
-37.2% vs TC avg
§103
87.9%
+47.9% vs TC avg
§102
4.9%
-35.1% vs TC avg
§112
0.2%
-39.8% vs TC avg
Black line = Tech Center average estimate • Based on career data from 162 resolved cases

Office Action

§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 . Detailed Action This office action is responsive to communication filed on 02/28/2025. Claims 1-20 are pending for examination. 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. The factual inquiries set forth in Graham v. John Deere Co., 383 U.S. 1, 148 USPQ 459 (1966), that are applied for establishing a background for determining obviousness under 35 U.S.C. 103 are summarized as follows: Determining the scope and contents of the prior art. Ascertaining the differences between the prior art and the claims at issue. Resolving the level of ordinary skill in the pertinent art. Considering objective evidence present in the application indicating obviousness or nonobviousness. Claims 1, 4-6, 9, 12-14, and 17 are rejected under 35 U.S.C. 103 as being unpatentable over Zhuang et al. (US20210248022A1) hereinafter Zhuang in view of Sondhi et al. (US20160179599A1) hereinafter Sondhi. As per claim 1. Zhuang disclose A system (100), comprising: a processor (110); and a memory (120) device that stores program code structured to cause by the processor to: (par0026, FIG. 1 illustrates information handling system 100… system 100 includes one or more processors 110 coupled to processor interface bus 112. Processor interface bus 112 connects processors 110 to Northbridge 115, which is also known as the Memory Controller Hub (MCH). Northbridge 115 connects to system memory 120 and provides a means for processor(s) 110 to access the system memory). receive a request for a resource allocation (par0035-0036, Client 300 sends instances requests 302 to service provisioner 304 executing in cloud 306). track an incident of resource allocation failure for the request, the incident comprising a first allocation failure occurring at a first time _period (par0035-0038, Client 300 sends instances requests 302 to service provisioner 304 executing in cloud 306…..When client 300 detects a provision request failure, client 300 sends fault analysis request 324 to service provisioner 304. In one embodiment, service provisioner 304 detects the provision request failure. Service provisioner 304 then sends fault analysis request 326 to fault analysis module 328 to begin the fault analysis process….Information capture module plugins 322 also capture authorization information from IAM framework 310, such as requester id, resource id, timestamp (time period), serving instance id, and status. In turn, information capture module plugins 322 generate event data based on the captured information and send the event data to provision events queue 334 where provision events queue 334 persists all of the provision events accordingly). determine a cause of the incident by: (par0034, using the provision chains to identify root causes of provision request failures). extracting activity information for the incident to identify a second allocation failure associated with the incident, the second allocation failure occurring at a second time period prior to the first time period, (Fig. 9, par0036-0038, 0049, Information capture module plugins 322 also capture authorization information from IAM framework 310, such as requester id, resource id, timestamp (time period), serving instance id, and status. In turn, information capture module plugins 322 generate event data based on the captured information and send the event data to provision events queue 334 where provision events queue 334 persists all of the provision events accordingly…Correlation engine 330 retrieves the provision event information from provision events queue 334 and generates provision chains 332 based pm a set pf correlation rules….Correlation and aggregation 630 generates links between each of the events that fulfill the correlation. Correlation and aggregation 630 aggregates each if the events that fulfill the same ‘Requester id & same Provisioner & same instance id’ into the same node and rewrites their status as: ‘start->completed->failed.’ In turn, correlation and aggregation 630 generates provision chain 332 that identifies isolation points of failure (see FIGS. 9, 10, and corresponding text for further details). evaluating, based on the retrieved resource information, whether the clusters are eligible for deployment to determine the cause of the incident, and (Fig. 9 (see status field if clusters are eligible), par0044-0045, 0058, Provision events queue 334 aggregates the event data into two sets of information, which are correlation and aggregation information (columns 520, 530, 540, 550, and 560) and provision properties (columns 570, 580, and 590)…. The provision properties information includes timestamp column 570 that includes timestamps of when provision events are generated. Status column 580 includes flags that indicate whether the provision starts or completes….FIG. 9 is an exemplary diagram depicting a detailed provision chain result). cause mitigation of the incident based on the cause of the incident. (par0058-0060, the approach discussed herein aggregates provision chain 900 into an easily viewable provision chain such as that shown in FIG. 10…..FIG. 10 is an exemplary diagram depicting a refined provision chain. Fault analysis module 328 aggregates all the provision events that fulfill the same “Requester ID, Provisioner, instance ID” and generates a simplified provision chain topology 1000. Topology 1000 includes service provisioner icon 1010, IAM icon 1020, kubernetes provisioner icon 1030, IAM icon 1040, VM1 provisioner icon 1050, storage provisioner icon 1060, and network provisioner icon 1070. In addition, topology 1000 includes links 905-940 that match links 905-940 shown in FIG. 9…..In the embodiment shown in FIG. 10, topology 1000 includes “!” within provisioner icons that correspond to isolation points of failure 950, 955, 960, and 965 shown in FIG. 9. Topology 1000 shows that the failure isolation points lie in a network provisioning from network provisioner 318 initiated by VM1 provisioner 314. As a result, a user focuses efforts on correcting the provisioning request failure instead of analyzing each provision event generated from the provision request). Zhuang does not explicitly disclose retrieving resource information of clusters related to first allocation failure and the second allocation failure. Sondhi however discloses retrieving resource information of clusters related to first allocation failure and the second allocation failure. (par0003, 0019, 0041, In some environments, a first entity may generate resource-allocation requests to obtain resources for products transmitted to a second entity or services rendered to the second entity. Frequently, the second entity fails to satisfy the request by failing to allocate the requested resources or allocating fewer resources than requested. The first entity may wait for a timeout event (e.g., an interval of time after transmitting the resource request) before indicating that the resource request failed. Yet, the first entity can do little more than generate a subsequent request with little likelihood that the second entity will satisfy the subsequent resource allocation request. When insufficient resources are allocated to the first entity, processing at the first entity may begin to slow or halt thereby preventing the first entity from operating appropriately….. In some instances, techniques are disclosed for using machine-learning models to improve resource allocation between first entities and second entities. The machine-learning model can be configured to receive, as input, a data set for each of the second entities. The data set can model a historical relationship between the first entity and the second entity (e.g., processing services provided by the first entity to the second entity, resource-allocation requests transmitted by the first entity and satisfied by the second entity, etc.). The machine-learning model can process the data set to generate an output resource-allocation specification that can be executed by the first entity to improve the allocation of resources by a second entity after the second entity failed to respond to an initial resource-allocation request or failed to allocate a threshold amount of resources. For instance, the resource-allocation specification can include a set of communication protocols that can be used to transmit alternate versions of the resource-allocation request to the second entity. The resource-allocation specification, once execute may, increase the likelihood that the second entity may allocate the requested resources and/or increase the an amount of resources allocated…..Communication system 165 may be configured to (for example) send emails, make robocalls, send faxes, prepare letters, send text messages, etc. Communication system 165 can retrieve contact information for a cluster by sending a query to contact management system 105. Communication system 165 can also report communications to resource request management system 125, such that resource database 130 can be appropriately updated. Resource request management system 125 may then store an indication as to which communications were transmitted in accordance with machine-learning outputs (instead of a static rule or manual selection). Therefore, it would have been obvious to one having ordinary skill in the art before the effective filing date of the claimed invention to provide the functionality of retrieving resource information of clusters related to first allocation failure and the second allocation failure, as taught by Sondhi, in the system of Zhuang, in order to determine whether the resource request was satisfied by the client device and an amount of resources allocated if the resource request was satisfied, see Sondhi, para. 0004. As per claim 4. Zhuang and Sondhi disclose the system of claim 1. Zhuang further disclose the program code further causing the processor to collect incident information; and determine the cause of the incident based at least on the incident information. (Fig. 9-10, par0036, 0038, 0049, During the provision request fulfillment process, information capture module plugins 322 capture information pertaining to the provisioning process and send the information to provision events queue 334 within performance monitor 340. In one embodiment, information capture module plugins 322 capture the provision information from each of provisioners 312 through 318, such as requester id, provisioner name, instance id, timestamp, serving instance id, and status; paragraph…..Correlation engine 330 retrieves the provision event information from provision events queue 334 and generates provision chains 332 based on a set of correlation rules; paragraph…..Correlation and aggregation 630 generates links between each of the events that fulfill the correlation. Correlation and aggregation 630 aggregates each if the events that fulfill the same ‘Requester id & same Provisioner & same instance id’ into the same node and rewrites their status as: ‘start->completed->failed.’ In turn, correlation and aggregation 630 generates provision chain 332 that identifies isolation points of failure (see FIGS. 9, 10, and corresponding text for further details); see also e.g. Figure 9 showing linked failure events 965, 960 and 955). As per claim 5. Zhuang and Sondhi disclose the system of claim 1. Zhuang further disclose wherein the program code is further structured to cause the processor to trigger determination of the cause of the incident responsive to detecting the first allocation failure. (par0037, when client 300 detects a provision request failure, client 300 sends fault analysis request 324 to service provisioner 304). As per claim 6. Zhuang and Sondhi disclose the system of claim 1. Zhuang further disclose wherein the program code is further structured to cause the processor to determine the cause of the incident by applying resource allocation rules for a resource allocation platform of the system. (par0054-0058, At step 820, the process identifies a next provisioner corresponding to the provision events (column 560 in FIG. 5) and, at step 830, the process checks if there are events that fulfill a correlation rule. For example, if the next provisioner is identified as IAM framework 310, only the type IAM framework 310 events are selected for the next check…..The process determines as to whether a correlation rule is fulfilled (decision 840). If a correlation rule is fulfilled, then decision 840 branches to the ‘yes’ branch which loops back to select the events that fulfill the correlation rule and generate links between the previous events and the selected events (step 850). Then, for each of the selected events, the process repeats the step to check the next link (step 820). This looping continues until there are no more events that fulfill a correlation rule). As per claim 9. Zhuang discloses A method comprising: (par0031, FIG. 2 provides an extension of the information handling system environment shown in FIG. 1 to illustrate that the methods described herein can be performed on a wide variety of information handling systems that operate in a networked environment). Zhuang and Sondhi disclose all the additional elements as discussed per claim 1 above. As per claim 12. Zhuang and Sondhi disclose teach all the elements as discussed per claim 4 above. As per claim 13. Zhuang and Sondhi disclose teach all the elements as discussed per claim 5 above. As per claim 14. Zhuang and Sondhi disclose teach all the elements as discussed per claim 6 above. As per claim 17. Zhuang disclose A computer-readable storage medium having program instructions recorded thereon that, when executed by a processor, implement a method comprising: (par0018, 0026, FIG. 1 illustrates information handling system 100… system 100 includes one or more processors 110 coupled to processor interface bus 112. Processor interface bus 112 connects processors 110 to Northbridge 115, which is also known as the Memory Controller Hub (MCH). Northbridge 115 connects to system memory 120 and provides a means for processor(s) 110 to access the system memory). Zhuang and Sondhi disclose all the additional elements as discussed per claim 1 above. Claims 2-3, 10-11 and 18 are rejected under 35 U.S.C. 103 as being unpatentable over Zhuang in view of Sondhi and further in view of Deshpande et al. (US20160179599A1) hereinafter Deshpande. As per claim 2. Zhuang and Sondhi disclose the system of claim 1. Zhuang further disclose wherein to cause mitigation of the incident, the program code further causes the processor to cause a recommended action to mitigate failure risks to be presented and implement mitigation to enable improved allocation success rates. (Fig. 10, par0059-0060, FIG. 10 is an exemplary diagram depicting a refined provision chain. Fault analysis module 328 aggregates all the provision events that fulfill the same “Requester ID, Provisioner, instance ID” and generates a simplified provision chain topology 1000…..As a result, a user focuses efforts on correcting the provisioning request failure instead of analyzing each provision event generated from the provision request). Zhuang and Sondhi do not explicitly disclose in a user interface that provides interactive visual analysis for users to understand. Deshpande however discloses in a user interface that provides interactive visual analysis for users to understand. (par0079-0081, 0139-0142, generated by the data processing framework 114, as well as a display 132 for presenting a user interface associated with the data processing framework 114. In various embodiments, the computing system 102 can include additional components, such as peripheral I/O devices, for example to allow a user to interact with the user interfaces generated by the data processing framework 114….. the user interface definition component 120 presents to a user a configurable arrangement with which the scalable data framework can be configured to receive input streams and arrange analyses of those input streams, thereby allowing a user to define various analyses to be performed on the input data streams). Therefore, it would have been obvious to one having ordinary skill in the art before the effective filing date of the claimed invention to provide the functionality of in a user interface that provides interactive visual analysis for users to understand, as taught by Deshpande, in the system of Zhuang and Sondhi, so once a fault is detected, more analysis is often required to determine which input variable is faulty, see Deshpande, para. 0009. As per claim 3. Zhuang and Sondhi disclose the system of claim 1. Zhuang further disclose to cause mitigation of the incident, the program code further causes the processor to cause information indicating a successful allocation scenario. (Fig. 9-10, par0058-0060, FIG. 9 is an exemplary diagram depicting a detailed provision chain result….the approach discussed herein aggregates provision chain 900 into an easily viewable provision chain such as that shown in FIG. 10….FIG. 10 is an exemplary diagram depicting a refined provision chain…..n the embodiment shown in FIG. 10, topology 1000 includes “!” within provisioner icons that correspond to isolation points). Zhuang and Sondhi does not explicitly disclose to be presented in a user interface. Deshpande however discloses to be presented in a user interface. (par0079-0081, 0139-0142, generated by the data processing framework 114, as well as a display 132 for presenting a user interface associated with the data processing framework 114. In various embodiments, the computing system 102 can include additional components, such as peripheral I/O devices, for example to allow a user to interact with the user interfaces generated by the data processing framework 114….. the user interface definition component 120 presents to a user a configurable arrangement with which the scalable data framework can be configured to receive input streams and arrange analyses of those input streams, thereby allowing a user to define various analyses to be performed on the input data streams). Therefore, it would have been obvious to one having ordinary skill in the art before the effective filing date of the claimed invention to provide the functionality of to be presented in a user interface, as taught by Deshpande, in the system of Zhuang and Sondhi, so once a fault is detected, more analysis is often required to determine which input variable is faulty, see Deshpande, para. 0009. As per claim 10. Zhuang, Sondhi and Deshpande disclose teach all the elements as discussed per claim 3 above. As per claim 11. Zhuang, Sondhi and Deshpande disclose teach all the elements as discussed per claim 3 above. As per claim 18. Zhuang, Sondhi and Deshpande disclose teach all the elements as discussed per claim 3 above. Claims 7-8, 15-16 and 19-20 are rejected under 35 U.S.C. 103 as being unpatentable over Zhuang in view of Sondhi, and further in view of Zhou et al. (WO2020206699A1) hereinafter Zhou. As per claim 7. Zhuang and Sondhi disclose the system of claim 6. Zhuang and Sondhi do not explicitly disclose wherein the resource allocation rules comprise resource allocation platform domain knowledge that simulates a resource allocation process of the resource allocation platform. Zhou however disclose wherein the resource allocation rules comprise resource allocation platform domain knowledge that simulates a resource allocation process of the resource allocation platform. (par0052, the feature engineering manager 204 can provide any number of capacity feature signals 306 as input to the failure prediction model 206. The failure prediction model 206 may determine a prediction of one or more allocation failures based on the capacity feature signals 306). Therefore, it would have been obvious to one having ordinary skill in the art before the effective filing date of the claimed invention to provide the functionality of wherein the resource allocation rules comprise resource allocation platform domain knowledge that simulates a resource allocation process of the resource allocation platform, as taught by Zhou, in the system of Zhuang and Sondhi, in order to take actions to prevent the predicted allocation failures, see Zhou, Abstract. As per claim 8. Zhuang and Sondhi disclose the system of claim 1. Zhuang and Sondhi do not explicitly disclose wherein the program code is further structured to cause the processor determine the cause of the incident by: determining resources in a region associated with the incident; determining constraints associated with the incident comprising at least one of a request constraint, a requesting entity constraint, a capacity constraint, or a resource platform constraint; determining resource allocation rules associated with a resource allocation platform of the system at the time of the request; and determining which resources were or were not eligible for allocation for the request, based on the resource allocation failure, the resources, the constraints associated with the incident, and the resource allocation rules associated with the resource allocation platform. Zhou however disclose wherein the program code is further structured to cause the processor determine the cause of the incident by: determining resources in a region associated with the incident; determining constraints associated with the incident comprising at least one of a request constraint, a requesting entity constraint, a capacity constraint, or a resource platform constraint; determining resource allocation rules associated with a resource allocation platform of the system at the time of the request; and determining which resources were or were not eligible for allocation for the request, based on the resource allocation failure, the resources, the constraints associated with the incident, and the resource allocation rules associated with the resource allocation platform. (par0051-0057, the feature engineering manager 204 can generate capacity feature signals 306 indicating hundreds of distinct features of one or multiple node clusters of the cloud computing system 102 corresponding to different regions and resource types….. the feature engineering manager 204 can provide any number of capacity feature signals 306 as input to the failure prediction model 206. The failure prediction model 206 may determine a prediction of one or more allocation 15 failures based on the capacity feature signals 306…. the failure prediction model 206 may be fine-tuned or trained to generate a variety of outputs based on different parameters or constraints to accommodate different purposes. Additional detail in connection with a structure and framework of the failure prediction model 206 will be discussed below in connection with FIG. 4…..Moreover, where allocation failures are predicted to occur as a result of a unique cluster policy associated with a required number of healthy empty nodes, the mitigation engine 208 may apply different mitigation actions than where allocation failures are predicted to occur because a total node capacity is predicted to be insufficient.). Therefore, it would have been obvious to one having ordinary skill in the art before the effective filing date of the claimed invention to provide the functionality of wherein the program code is further structured to cause the processor determine the cause of the incident by: determining resources in a region associated with the incident; determining constraints associated with the incident comprising at least one of a request constraint, a requesting entity constraint, a capacity constraint, or a resource platform constraint; determining resource allocation rules associated with a resource allocation platform of the system at the time of the request; and determining which resources were or were not eligible for allocation for the request, based on the resource allocation failure, the resources, the constraints associated with the incident, and the resource allocation rules associated with the resource allocation platform, as taught by Zhou, in the system of Zhuang and Sondhi, in order to take actions to prevent the predicted allocation failures, see Zhou, Abstract. As per claim 15. Zhuang, Sondhi and Zhou disclose teach all the elements as discussed per claim 7 above. As per claim 16. Zhuang, Sondhi and Zhou disclose teach all the elements as discussed per claim 8 above. As per claim 19. Zhuang, Sondhi and Zhou disclose teach all the elements as discussed per the combination of claims 6-7 above. As per claim 20. Zhuang, Sondhi and Zhou disclose teach all the elements as discussed per claim 8 above. Relevant Prior Art The prior art made of record and not relied upon is considered pertinent are - • Ahmed et al. (US20080155100A1) – Related art in the area of a resource manager for managing the sharing of resources among multiple workloads in a distributed computing environment. • Li et al. (US20110231696A1) – Related art in the area of methods and systems for cluster resource management in virtualized computing environments. Conclusion Any inquiry concerning this communication or earlier communications from the examiner should be directed to MONISHWAR MOHAN whose telephone number is (571)272-2907. The examiner can normally be reached Monday - Thursday 7:00 am - 5:00 pm. 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, William Trost can be reached on (571) 272-7872. 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. /M.M./Examiner, Art Unit 2442 /WILLIAM G TROST IV/Supervisory Patent Examiner, Art Unit 2442
Read full office action

Prosecution Timeline

Show 1 earlier event
May 07, 2024
Non-Final Rejection mailed — §103
Aug 12, 2024
Response Filed
Dec 02, 2024
Final Rejection mailed — §103
Feb 28, 2025
Request for Continued Examination
Mar 07, 2025
Response after Non-Final Action
May 08, 2025
Non-Final Rejection mailed — §103
Sep 16, 2025
Response Filed
Apr 10, 2026
Final Rejection mailed — §103 (current)

Precedent Cases

Applications granted by this same examiner with similar technology

Patent 12610110
REMOTE APPLICATION CONTROLLER
4y 8m to grant Granted Apr 21, 2026
Patent 12561447
CONTINUOUS VULNERABILITY ASSESSMENT SYSTEM
2y 0m to grant Granted Feb 24, 2026
Patent 12547705
SYSTEM/SUBSYSTEM ANOMALY DETECTION VIA SIMULATING END-TO-END DATA PROPAGATION
2y 0m to grant Granted Feb 10, 2026
Patent 12549499
SYSTEM AND METHOD FOR GENERATING A CHAT RESPONSE ON SALES DEALS USING A LARGE LANGUAGE MODEL
1y 9m to grant Granted Feb 10, 2026
Patent 12477162
ESTIMATING OTT PLAYER QoE METRICS FROM CDN LOGS USING AI AND MACHINE LEARNING
4y 11m to grant Granted Nov 18, 2025
Study what changed to get past this examiner. Based on 5 most recent grants.

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

5-6
Expected OA Rounds
52%
Grant Probability
85%
With Interview (+32.8%)
4y 9m (~2y 0m remaining)
Median Time to Grant
High
PTA Risk
Based on 162 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