Prosecution Insights
Last updated: April 19, 2026
Application No. 18/584,498

ADVANCED IDENTITY ONBOARDING

Non-Final OA §103
Filed
Feb 22, 2024
Examiner
NGUYEN, PHILLIP H
Art Unit
2191
Tech Center
2100 — Computer Architecture & Software
Assignee
Pwc Product Sales LLC
OA Round
1 (Non-Final)
90%
Grant Probability
Favorable
1-2
OA Rounds
2y 10m
To Grant
99%
With Interview

Examiner Intelligence

Grants 90% — above average
90%
Career Allow Rate
533 granted / 589 resolved
+35.5% vs TC avg
Moderate +12% lift
Without
With
+11.7%
Interview Lift
resolved cases with interview
Typical timeline
2y 10m
Avg Prosecution
16 currently pending
Career history
605
Total Applications
across all art units

Statute-Specific Performance

§101
15.4%
-24.6% vs TC avg
§103
38.3%
-1.7% vs TC avg
§102
30.9%
-9.1% vs TC avg
§112
10.7%
-29.3% vs TC avg
Black line = Tech Center average estimate • Based on career data from 589 resolved cases

Office Action

§103
DETAILED ACTION 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 . This Office Action is in response to the filing date of 2/22/2024. Claims 1-24 are pending and have been considered below. 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-5, 7, 8, 10-24 are rejected under 35 U.S.C. 103 as being unpatentable over U.S. Pub. No. 20210034347 to Robbins in view of U.S. Pub. No. 20190102162 Pitre et al. Per claims 1, 11, and 12, Robbins teaches a method for updating application capabilities, the method comprising: ingesting data, by a central system, from a plurality of data sources, the plurality of data sources comprising a configuration management database (CMDB), an IAM platform, and responses to a questionnaire (see at least paragraph [0032] “The engine 102 may use any means to obtain appropriate data/information for the purposes of installation of functionalities/components. The engine 102 may also obtain data from various third-party sources…”); identifying, by the central system, one or more deployed application capabilities associated with one or more applications based on the ingested data from the IAM platform and/or the CMDB (see at least paragraph [0035] “…a search of the repository 106 may be conducted and the repository may generate a list of available functionalities/components for installation on the user device 104. The list may be supplied to the engine 102…”); identifying, by the central system, one or more target capabilities based on the ingested data from the questionnaire (see at least paragraphs [0034 -0035] “The software application 108 may be configured to generate various updates to its functionalities/components and supply them to the system 100 for the implementation/installation on user devices 104…once the application 108 generates a functionality/component, the application may supply it to the engine 102…”); identifying, by the central system, a capability gap by comparing the one or more deployed application capabilities to the one or more target capabilities, wherein the capability gap represents a target capability of the one or more target capabilities not included in the one or more deployed application capabilities (see at least paragraph [0035] “…the engine 102 may perform a comparison of the supplied functionalities/components with any versions of functionalities/components that may have been previously cached by the engine 102. In some implementations, the comparison may determine that one or more versions of the functionalities/components that may have been installed on one or more user devices 104 received modifications and/or is outdated and, thus, may require an appropriate update. Additionally, the engine 102 may determine that one or more functionalities/components that are included in the received list may need to be installed on one or more user devices 104. The engine 102 may then send a request to the repository 106 to obtain missing functionalities/components”); automatically selecting, by the central system, one or more applications to update based on the identified capability gap (see at least paragraph [0038] “once the engine 102 receives the functionalities/components from the repository 106, the engine 102 may be configured to store/cache the functionalities/components. The engine 102 may also be configured to determine which user devices 104 may need to be updated with the received functionalities/components…”); and automatically updating, by the central system, the one or more selected applications by deploying the one or more target capabilities not included in the one or more deployed application capabilities to the one or more selected applications via the IAM platform (see at least paragraph [0038] “once the engine 102 receives the functionalities/components from the repository 106, the engine 102 may be configured to store/cache the functionalities/components. The engine 102 may also be configured to determine which user devices 104 may need to be updated with the received functionalities/components and proceed with instantiation of the received functionalities/components on user devices…”). Robbins does not explicitly teach a system for updating application capabilities across identity and access management (IAM) platforms. Pitre teaches an analogous art relates to updating application across identity and access management (IAM), comprises: updating application across identity and access management (IAM) platforms (see at least paragraph [0294] “FIG. 19 is a flow diagram 1900 of functionality for tenant application update management in a multi-tenant cloud-based IAM system in accordance with an embodiment”). It would have been obvious for a person of an ordinary skilled in the art as of the effective filing date of the claimed invention to modify the teaching of Robbins to incorporate the teaching of Pitre to control access to applications via identity and access management (IAM). One would have been motivated to combine Pitre’s approach with Robbins’s teaching in order to provide secure access to applications on a system or device regardless of from what device type or by what user type the applications are accessed (see at least paragraphs [0003 - 0004]). Per claim 2, Robbins further teaches: storing, by the central system, data associated with the identified capability gap, the selected one or more applications to update based on the identified capability gap, and the one or more updated applications in a database (see at least paragraph [0033] “…the database 106 may store a plurality of functionalities/components that may be accessed by the engine 102. The database 106 may receive various updates to the functionalities/components and store them for later installation on user devices 104. The updates may include new functionalities/components, updates to existing functionalities/components, deletions of functionalities/components, and/or any other functionalities/component…”). Per claim 3, Pitre further teaches: displaying, by the central system, a graphical user interface comprising a first visualization representing one or more of: the selected one or more applications and the identified capability gap the capability gap (see at least paragraph [0259] “IDCS administration console to display to customer's administrators an indication that new/updated behavior is available. The customer's administrator may then use the IDCS administration console to update each existing application to enable the new/updated behavior”). Per claim 4, Robbins further teaches: detecting, via the graphical user interface, a user input comprising an instruction to update the identified capability gap; and wherein automatically updating the one or more selected applications is performed in response to receiving the user input (see at least paragraph [0031] “…the user device 104 may generate an instruction/command to the engine 102 to process the request and/or extract data/functionalities/components from one or more the database 106 for installation on the user device 104”; see paragraph [0063] “one or more client computers having a graphical user interface or a Web browser through which a user can interact with an implementation of the subject matter described herein, or any combination of such back-end, middleware, or front-end components”). Per claim 5, Robbins further teaches: updating, by the central system, the graphical user interface to display a second visualization representing the one or more updated applications (see at least paragraph [0025] “…the current subject matter can provide a computing system and/or framework along with corresponding processes for automating deployment of computing components that may be related to an operation of one or more internal and/or external software applications installed on one or more user computing devices. The components may include computing functionalities, software applications, graphical user interface components, operating components…”). Per claim 7, Robbins further teaches wherein updating the one or more applications by deploying the one or more target capabilities not included in the one or more deployed application capabilities comprises: selecting IAM capabilities for each selected application; creating a data object to be uploaded into a selected IAM system; and transmitting the data object into the selected IAM system (see at least paragraph [0038] “The engine 102 may also be configured to determine which user device 104 may need to be updated with the received functionalities/components and proceed with instantiation of the received functionalities/components on user devices 104”). Per claim 8, Robbins further teaches wherein identifying the capability gap by comparing the one or more deployed application capabilities to the one or more target capabilities comprises: applying one or more rules from a rule set, wherein the one or more rules from the rule set are configured to cause the central system to select a first target capability; compare the first target capability to each deployed application capability; and in accordance with determining the first target capability is not associated with a corresponding deployed application capability, identifying the capability gap (see at least paragraph [0036] “…the comparison may determine that one or more versions (i.e. rules) of the functionalities/components that may have been installed on one or more user devices 104 received modifications and/or is outdated and, thus, may require an appropriate update. Additionally, the engine 102 may determine that one or more functionalities/components that are included in the received list may need to be installed on one or more user devices 104. The engine 102 may then send a request to the repository 106 to obtain missing functionalities/components”). Per claim 10, Robbins further teaches: identifying, by the central system, data ingested from the CMDB associated with the one or more updated applications (see at least paragraphs [0046-0050] “…the repository 106 may supply the requested list of functionalities/components to the engine 102. The repository 106 may include a list of applets, which may include an applet name, a version, a hash code, a binary code, and/or any other information…”); and transmitting, by the central system to the CMDB, a data object comprising updated data associated with the one or more updated applications (see at least paragraph [0050] “If the functionality/component contained in the supplied list has not been previously cached by the engine 102, the engine 102 may generated a request to the repository 106 provide the engine 102 with the functionality/component. The repository 106 may be configured to generate that functionality/component's binary file and provide it to the engine 102, which may, in turn, cache it and use the cached version during iterating process discussed above”). Per claim 14, Robbins further teaches: wherein the first data source is a configuration management database (CMDB) (see at least FIG. 1 “Repository/Database 106”). Per claim 15, Pitre further teaches: wherein the first data source is the IAM platform (see at least paragraph [0004] “ One embodiment is a system manages tenant application updates in a multi-tenant cloud-based identity and access management (IAM) system by defining one or more application templates…”). Per claim 16, Robbins further teaches: wherein the second data source is a questionnaire generated by the central system (see at least paragraph [0035] “…the engine 102 may be configured to query the repository 106 to determine whether the received functionality/component is the most up-to-date functionality/component”). Per claims 13, 17 and 21, Robbins teaches a system for updating application capabilities, the system comprising one or more processors and a memory, the memory storing one or more computer instructions which when executed by the one or more processors, cause the system to: receive data at a central system from a plurality of data sources (see at least paragraph [0032] “The engine 102 may use any means to obtain appropriate data/information for the purposes of installation of functionalities/components. The engine 102 may also obtain data from various third party sources…”); identify one or more deployed application capabilities based on data from a first data source of the plurality of data sources (see at least paragraph [0035] “…a search of the repository 106 may be conducted and the repository may generate a list of available functionalities/components for installation on the user device 104. The list may be supplied to the engine 102…”); identify one or more target application capabilities from a second data source of the plurality of data sources (see at least paragraphs [0034 -0035] “The software application 108 may be configured to generate various updates to its functionalities/components and supply them to the system 100 for the implementation/installation on user devices 104…once the application 108 generates a functionality/component, the application may supply it to the engine 102…”); compare the one or more deployed application capabilities to the one or more target application capabilities to identify a capability gap, wherein the capability gap represents a target capability of the one or more target capabilities not included in the one or more deployed application capabilities (see at least paragraph [0035] “…the engine 102 may perform a comparison of the supplied functionalities/components with any versions of functionalities/components that may have been previously cached by the engine 102. In some implementations, the comparison may determine that one or more versions of the functionalities/components that may have been installed on one or more user devices 104 received modifications and/or is outdated and, thus, may require an appropriate update. Additionally, the engine 102 may determine that one or more functionalities/components that are included in the received list may need to be installed on one or more user devices 104. The engine 102 may then send a request to the repository 106 to obtain missing functionalities/components”); automatically select, by the central system, one or more applications to update based on the identified capability gap (see at least paragraph [0038] “once the engine 102 receives the functionalities/components from the repository 106, the engine 102 may be configured to store/cache the functionalities/components. The engine 102 may also be configured to determine which user devices 104 may need to be updated with the received functionalities/components…”); and automatically update, by the central system, the one or more selected applications by deploying the one or more target capabilities not included in the one or more deployed application capabilities to the one or more selected applications via an IAM platform (see at least paragraph [0038] “once the engine 102 receives the functionalities/components from the repository 106, the engine 102 may be configured to store/cache the functionalities/components. The engine 102 may also be configured to determine which user devices 104 may need to be updated with the received functionalities/components and proceed with instantiation of the received functionalities/components on user devices…”). Robbins does not explicitly teach a system for updating application capabilities across identity and access management (IAM) platforms. Pitre teaches an analogous art relates to updating application across identity and access management (IAM), comprises: updating application across identity and access management (IAM) platforms (see at least paragraph [0294] “FIG. 19 is a flow diagram 1900 of functionality for tenant application update management in a multi-tenant cloud-based IAM system in accordance with an embodiment”). It would have been obvious for a person of an ordinary skilled in the art as of the effective filing date of the claimed invention to modify the teaching of Robbins to incorporate the teaching of Pitre to control access to applications via identity and access management (IAM). One would have been motivated to combine Pitre’s approach with Robbins’s teaching in order to provide secure access to applications on a system or device regardless of from what device type or by what user type the applications are accessed (see at least paragraphs [0003 - 0004]). Per claims 18 and 22, Robbins teaches: wherein the first data source is a configuration management database (CMDB) (see at least FIG. 1 “Repository/Database 106”). Per claim 19 and 23, Pitre further teaches: wherein the first data source is the IAM platform (see at least paragraph [0004] “One embodiment is a system manages tenant application updates in a multi-tenant cloud-based identity and access management (IAM) system by defining one or more application templates…”). Per claim 20 and 24, Robbins further teaches: wherein the second data source is a questionnaire generated by the central system (see at least paragraph [0035] “…the engine 102 may be configured to query the repository 106 to determine whether the received functionality/component is the most up-to-date functionality/component”). Claims 6 and 9 are rejected under 35 U.S.C. 103 as being unpatentable over U.S. Pub. No. 20210034347 to Robbins in view of U.S. Pub. No. 20190102162 Pitre et al. and in further view of U.S. Pub. No. 20190394258 to Park. Per claim 6, neither Robbins nor Pitre teaches: normalizing, by the central system, the ingested data from the plurality of data sources to conform to a common data format. However, Park teaches an analogous art relates to updating software application, comprises: normalizing data from a plurality of data sources to conform to a common data format (see at least paragraph [0065] “Adapters are configured to understand the input and output stream protocol, and are responsible for converting the event data into a normalized form that can be queried by an application processor…”). It would have been obvious for a person of an ordinary skilled in the art as of the effective filing date of the claimed invention to modify the teachings of Robbins and Pitre to incorporate the teaching of Park to normalize data. One would have been motivated to normalize data to conform to a common format in order to optimize performance on data, to optimize data integrity, interoperability, etc. Claims 6 and 9 are rejected under 35 U.S.C. 103 as being unpatentable over U.S. Pub. No. 20210034347 to Robbins in view of U.S. Pub. No. 20190102162 Pitre et al. and in further view of U.S. Pub. No. 20150235270 to Partida. Per claim 9, Robbins further teaches (“one or more client computers having a graphical user interface or a Web browser through which a user can interact with an implementation of the subject matter described herein, or any combination of such back-end, middleware, or front-end components…” see paragraph [0063] “…the repository 106 may request appropriate credentials (e.g., authentication) from the user device 104. The user device 104 may then supply its credentials via the API 112 to the repository 106…” see at least paragraph [0045]). However, neither Robbins nor Pitre teaches wherein the questionnaire is generated by: receiving, by the central system at a first user interface, a first set of user inputs indicating a selection of one or more questions from a question bank stored in a database of the central system; generating, by the central system, based on the first set of user inputs, a second user interface comprising the selected one or more questions; receiving, by the central system at the second user interface, a second set of user inputs, the second set of user inputs comprising responses to the selected one or more questions; generating, by the central system based on the second set of user inputs, a third user interface; receiving, by the central system at a third user interface, a third set of user inputs, the third set of user inputs for configuring a data object based on the second set of user inputs; and generating, by the central system based on the third set of user inputs, a configured data object. Partida teaches an analogous art relates to upgrading software, comprises: receiving a first set of user inputs indicating a selection of one or more questions from a question bank stored in a database of the central system; generating based on the first set of user inputs, a second user interface comprising the selected one or more questions; receiving, a second set of user inputs, the second set of user inputs comprising responses to the selected one or more questions; generating a third user interface; receiving a third set of user inputs, the third set of user inputs for configuring a data object based on the second set of user inputs; and generating, by the central system based on the third set of user inputs, a configured data object (see at least FIG2A-3B). It would have been obvious for a person of an ordinary skilled in the art as of the effective filing date of the claimed invention to modify the teachings Robbins and Pitre to provide and obtain data from the user via a series of user interface screens. One would have been motivated to do so in order to obtain data from the user and to assess the data for software installation/updating purposes. Conclusion The prior art made of record and not relied upon is considered pertinent to applicant's disclosure: US20150222604 relates to updating software via identity and access management. US20200344268 relates to updating application’s functionality. US20200073782 relate to identifying and updating software application capabilities. Any inquiry concerning this communication or earlier communications from the examiner should be directed to PHILLIP H NGUYEN whose telephone number is (571)270-1070. The examiner can normally be reached Monday-Friday 9:00AM-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, Wei Zhen can be reached at (571) 272-3708. 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. /PHILLIP H NGUYEN/Primary Examiner, Art Unit 2191
Read full office action

Prosecution Timeline

Feb 22, 2024
Application Filed
Nov 21, 2025
Non-Final Rejection — §103
Mar 18, 2026
Examiner Interview Summary
Mar 18, 2026
Applicant Interview (Telephonic)

Precedent Cases

Applications granted by this same examiner with similar technology

Patent 12602206
SYSTEMS AND METHODS FOR CODE GENERATION
2y 5m to grant Granted Apr 14, 2026
Patent 12572353
SYSTEM AND METHOD FOR GENERATING A MODERNIZATION SEQUENCE FOR APPLICATION MODERNIZATION
2y 5m to grant Granted Mar 10, 2026
Patent 12554470
INTEGRATED DEVELOPMENT SYSTEM AND METHOD, FOR USER INTERFACE PLATFORM, HAVING SOURCE COMPILER
2y 5m to grant Granted Feb 17, 2026
Patent 12554469
PROGRAM CREATION DEVICE
2y 5m to grant Granted Feb 17, 2026
Patent 12547387
DETECTING CODE ANOMALIES IN SOURCE CODE USING MACHINE LEARNING TECHNIQUES
2y 5m to grant Granted Feb 10, 2026
Study what changed to get past this examiner. Based on 5 most recent grants.

AI Strategy Recommendation

Get an AI-powered prosecution strategy using examiner precedents, rejection analysis, and claim mapping.
Powered by AI — typically takes 5-10 seconds

Prosecution Projections

1-2
Expected OA Rounds
90%
Grant Probability
99%
With Interview (+11.7%)
2y 10m
Median Time to Grant
Low
PTA Risk
Based on 589 resolved cases by this examiner. Grant probability derived from career allow 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