DETAILED ACTION
This office action is in response to amendment filed on 10/7/2025.
Claims 1, 4, 10, 13, 17 and 18 are amended.
Claims 2 and 8 are cancelled.
Claims 1, 3 – 7 and 9 – 21 are pending.
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 § 112
The following is a quotation of 35 U.S.C. 112(b):
(b) CONCLUSION.—The specification shall conclude with one or more claims particularly pointing out and distinctly claiming the subject matter which the inventor or a joint inventor regards as the invention.
The following is a quotation of 35 U.S.C. 112 (pre-AIA ), second paragraph:
The specification shall conclude with one or more claims particularly pointing out and distinctly claiming the subject matter which the applicant regards as his invention.
Claim 1 is rejected under 35 U.S.C. 112(b) or 35 U.S.C. 112 (pre-AIA ), second paragraph, as being indefinite for failing to particularly point out and distinctly claim the subject matter which the inventor or a joint inventor (or for applications subject to pre-AIA 35 U.S.C. 112, the applicant), regards as the invention.
Claim 1 recites the limitation "the performance module" in lines 12 – 13. There is insufficient antecedent basis for this limitation in the claim.
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, 3 – 7 and 9 – 21 is/are rejected under 35 U.S.C. 103 as being unpatentable over Ghag et al (US 20230039566, hereinafter Ghag), in view of Khare et al (US 20220188459, hereinafter Khare), and further in view of (Dalinina et al (US 20200357060, hereinafter Dalinina).
As per claim 1, Ghag discloses: A system comprising:
a remote call library configured to enable communications with a monitored system; (Ghag figure 2 and [0046]: automation engine 208.)
a repository configured to store one or more relationships between a plurality of components of the monitored system; (Ghag [0049]: “The auto discover engine 212 may be configured to execute auto discovery process continuously or periodically which will ensure that stored RPA metadata configuration are in sync with the environment of the RPA platform that is being managed. The configuration interface 214 may be configured to display attributes of all the RPA components and dependent components to the user.”)
and a performance measurement module, implemented by at least one processor, configured to measure a performance of the monitored system using one or more remote calls of the remote call library based on at least one relationship of the one or more relationships between the plurality of components. (Ghag [0008]: “proactive approach of Managing RPA Platforms by having an end-to-end visibility of the health of all RPA components and their dependencies, proactively detect anomalies in any monitoring parameter or logs and then take corrective automated actions to bring back any non-working, unhealthy RPA component or its dependencies into a working, healthy state. The system continuously monitors RPA platforms and its dependent ecosystem, diagnoses failure of RPA components and promptly execute the remediation action to resolve the issue and notify the respective team about the failure and remediation action taken against those failures… The disclosed technology comprises various aspects such as monitoring which comprises health dashboard for RPA components, automated anomaly detection, and alerts and notification; self-healing aspects such as remedial plans (also referred as remediation action plans), automated execution of remedial plans and script repository; and analytics aspects comprising bot performance dashboard.”; [0048]: “As a part of auto discovery process, attributes of all the RPA components in the RPA platform may be extracted. The access of all the RPA component to the RPA platform may be verified by way of web API or direct call to database”.)
Ghag did not explicitly disclose:
and encrypt at least one relationship of the one or more relationships between the plurality of components;
an application programming interface (API) module configured to enable communications with a monitoring system;
wherein the performance module is configured to determine the at least one relationship based on a communication received via the API module using a given remote call from the remote call library and decrypt the at least one relationship of the one or more relationships between the plurality of components.
However, Khare teaches:
an application programming interface (API) module configured to enable communications with a monitoring system; (Khare [0039]: “the data storage and processing capabilities of data monitoring system 106 may be provided as a service by the data monitoring system 106 to the entity systems 180, third party systems 160, or additional systems and servers not pictured, through the use of an application programming interface (“API”) designed to simplify the communication protocol for client-side requests for data or services from the data monitoring system 106.”)
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 Khare into that of Ghag in order to have an application programming interface (API) module configured to enable communications with a monitoring system. Khare [0039] has shown that using API for monitoring is a commonly known and employed technique in the field of monitoring, applicants have thus merely claimed the combination of known parts in the field to achieve predictable results of using API for monitoring purpose and is therefore rejected under 35 USC 103.
Dalinina teaches:
and encrypt at least one relationship of the one or more relationships between the plurality of components; wherein the performance module is configured to determine the at least one relationship based on a communication received via the API module using a given remote call from the remote call library and decrypt the at least one relationship of the one or more relationships between the plurality of components. (Dalinina [0125])
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 Dalinina into that of Ghag and Khare in order to encrypt at least one relationship of the one or more relationships between the plurality of components; wherein the performance module is configured to determine the at least one relationship based on a communication received via the API module using a given remote call from the remote call library and decrypt the at least one relationship of the one or more relationships between the plurality of components. Dalinina [0125] teaches doing so would improve the security when using third party, applicants have thus merely claimed the combination of known parts in the field to achieve predictable results of better security for monitoring purpose and is therefore rejected under 35 USC 103.
As per claim 3, the combination of Ghag, Khare and Dalinina further teach:
The system of claim 2, wherein the performance measurement module is configured to transmit a performance to the monitoring system via the API module. (Ghag [0056])
As per claim 4, the combination of Ghag, Khare and Dalinina further teach:
The system of claim 1, comprising: a maintenance module, implemented by the at least one processor, configured to perform at least one maintenance function based on a communication received via the API module. (Ghag [0066] – [0067])
As per claim 5, the combination of Ghag, Khare and Dalinina further teach:
The system of claim 4, wherein the monitored system is a first monitored system, and wherein the at least one maintenance function is configured to include one or more of: adding data to the repository, deleting data from the repository, or determining data stored to the repository. (Ghag [0051])
As per claim 6, the combination of Ghag, Khare and Dalinina further teach:
The system of claim 5, wherein the performance measurement module is configured to transmit data stored to the repository to the monitoring system via the API module. (Ghag [0066] – [0067])
As per claim 7, the combination of Ghag, Khare and Dalinina further teach:
The system of claim 6, wherein the plurality of components is a first plurality of components, and wherein the data includes one or more of a first component of the first plurality of components, the first plurality of components, the first monitored system, a second monitored system having a second plurality of components, a second component of the second plurality of components, or the second plurality of components. (Ghag [0048] – [0049])
As per claim 9, the combination of Ghag, Khare and Dalinina further teach:
The system of claim 1, wherein the plurality of components comprise one or more standard components, one or more middleware components, one or more computer application components, or a combination thereof. (Ghag [0036]: RBA components.)
As per claim 10, Ghag discloses: A method comprising:
identifying a number of monitored systems or system components; (Ghag [0048]: “the onboarding process may comprise steps such as auto discovery process and activate process. As a part of auto discovery process, attributes of all the RPA components in the RPA platform may be extracted. The access of all the RPA component to the RPA platform may be verified by way of web API or direct call to database”.)
determining one or more relationships of the monitored systems or system components based on a communication received using a given remote call from the remote call library; (Ghag [0049]: “The auto discovery process may extract the attributes (also referred as metadata configurations or metadata 216) for each of the discovered RPA components such as, but not limited to bot name, bot location, server IP address, database IP address, connection string of database, Control Tower IP address, bot runner, VM component details etc. which may be used for monitoring and remedial actions by the system in the disclosed technology. The extracted attributes may be stored in the RPA metadata configuration database 222… The configuration interface 214 may be configured to display attributes of all the RPA components and dependent components to the user. The user may add, modify, or delete any RPA components and/or configurations related to RPA components and the dependent components. Each RPA component and the dependent components may be identified and termed as ‘resources’. Each of the resources may have relationship (communicatively coupled) with other resources and which may be modelled using the configuration interface 214. Each of the resources may be monitored/observed on various parameters which are termed as ‘observables’ (also termed as ‘observable metrics’ or ‘observation metrics’).”)
determining a performance of the monitored systems or of the system components based on the one or more relationships; (Ghag [0064]: “In one or more embodiments, as a part of Remediation Action Plan, a root cause analysis may be performed by root cause identifier 268 to ascertain if the resource being monitored has raised an error or if there are any correlated errors identified from another resource which could be a potential root cause of the anomaly. It is to be observed that the log data of resources are also being monitored and log data being streamed into the log listener 226 are parsed, transformed, and sent to error classifier 270 to identify an error type based on the patterns identified during the training phase. A pattern may be identified by querying the dependency classification and error check API 250 which will verify if a log transaction extracted from log file/log data for a specific resource is a labelled error type by querying the error pattern extraction engine 242. The dependency classification and error check API 250 may also be configured to return details of potential root cause found in other dependent resources which may have been found to be highly correlated wherein such information is fetched by querying the error correlation engine 244. If an error type is identified, such information may be stored in the log and error database 272 as an error type for that particular resource.”)
and generating a report of the performance. (Ghag [0065]: “the analytics engine 210 may configured to receive data from resource environment baseline storage device 264, operation database 266 and root cause identifier 268 and may be configured to generate insights from the received data and display to the user through a display of a computing device either in the textual format or graphical format. The analytics engine 210 may be configured to notify user through a notification displayed at the computing device associated with the user when an anomaly is detected such as bots stopped running, bot running for long, VM is down, database not connecting, etc.”)
Ghag did not explicitly disclose:
an application programming interface (API) module configured to enable communications with a monitoring system;
encrypt and storing the one or more relationship in a repository;
decrypting, by the performance module, the one or more relationship stored in the repository in response to another remote call from the remote call library.
However, Khare teaches:
an application programming interface (API) module configured to enable communications with a monitoring system; (Khare [0039]: “the data storage and processing capabilities of data monitoring system 106 may be provided as a service by the data monitoring system 106 to the entity systems 180, third party systems 160, or additional systems and servers not pictured, through the use of an application programming interface (“API”) designed to simplify the communication protocol for client-side requests for data or services from the data monitoring system 106.”)
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 Khare into that of Ghag in order to have an application programming interface (API) module configured to enable communications with a monitoring system. Khare [0039] has shown that using API for monitoring is a commonly known and employed technique in the field of monitoring, applicants have thus merely claimed the combination of known parts in the field to achieve predictable results of using API for monitoring purpose and is therefore rejected under 35 USC 103.
Dalinina teaches:
encrypt and storing the one or more relationship in a repository; decrypting, by the performance module, the one or more relationship stored in the repository in response to another remote call from the remote call library. (Dalinina [0125])
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 Khare into that of Ghag in order to encrypt at least one relationship between the plurality of components; wherein the performance module is configured to determine the at least one relationship based on a communication received via the API module using a given remote call from the remote call library and decrypt the at least one relationship of the one or more relationships between the plurality of components. Dalinina [0125] teaches doing so would improve the security when using third party, applicants have thus merely claimed the combination of known parts in the field to achieve predictable results of better security for monitoring purpose and is therefore rejected under 35 USC 103.
As per claim 11, the combination of Ghag, Khare and Dalinina further teach:
The method of claim 10, wherein the one or more relationships describe a first set of dependencies between a middleware component and one or more standard components, a second set of dependencies between a computer application component and one or more middleware components, a third set of dependencies between the computer application component and one or more standard components, or a combination thereof. (Ghag [0048] – [0049])
As per claim 12, the combination of Ghag, Khare and Dalinina further teach:
The method of claim 11, further comprising: determining one or more measurements of each component of each monitored system of the number of monitored systems or of the system components; and determining the performance of each monitored system of the number of monitored systems or of the system components based on the one or more measurements. (Ghag [0064] – [0065])
As per claim 13, the combination of Ghag, Khare and Dalinina further teach:
The method of claim 12, further comprising: storing the one or more measurements of each component of each monitored system of the number of monitored systems or of the system components in the repository; and storing the performance of each monitored system of the number of monitored systems or of the system components in the repository. (Ghag [0064] – [0065])
As per claim 14, the combination of Ghag, Khare and Dalinina further teach:
The method of claim 13, further comprising encrypting the one or more measurements of each component of each monitored system of the number of monitored systems or of the system components and the performance of each monitored system of the number of monitored systems or of the system components prior to storing. (Dalinina [0125])
As per claim 15, the combination of Ghag, Khare and Dalinina further teach:
The method of claim 13, further comprising determining one or more baselines based on the stored one or more measurements of each component of each monitored system of the number of monitored systems or of the system components, the stored performance of each monitored system or of the system components, or a combination thereof. (Ghag [0064] – [0065])
As per claim 16, the combination of Ghag, Khare and Dalinina further teach:
The method of claim 15, wherein the one or more baselines comprises at least one of a first baseline of a first monitored system of the number of monitored systems, a second baseline of a computer application component of the first monitored system, or a third baseline of a middleware component of the first monitored system. (Ghag [0061])
As per claim 17, Ghag discloses: A non-transitory, computer-readable medium storing machine-readable instructions, which, when executed by a processor, cause the processor to:
identify a monitored system or system components; (Ghag [0048]: “the onboarding process may comprise steps such as auto discovery process and activate process. As a part of auto discovery process, attributes of all the RPA components in the RPA platform may be extracted. The access of all the RPA component to the RPA platform may be verified by way of web API or direct call to database”.)
determine at least one relationship between a plurality of components of the monitored system or system components based on a communication received using a given remote call from the remote call library;; (Ghag [0049]: “The auto discovery process may extract the attributes (also referred as metadata configurations or metadata 216) for each of the discovered RPA components such as, but not limited to bot name, bot location, server IP address, database IP address, connection string of database, Control Tower IP address, bot runner, VM component details etc. which may be used for monitoring and remedial actions by the system in the disclosed technology. The extracted attributes may be stored in the RPA metadata configuration database 222… The configuration interface 214 may be configured to display attributes of all the RPA components and dependent components to the user. The user may add, modify, or delete any RPA components and/or configurations related to RPA components and the dependent components. Each RPA component and the dependent components may be identified and termed as ‘resources’. Each of the resources may have relationship (communicatively coupled) with other resources and which may be modelled using the configuration interface 214. Each of the resources may be monitored/observed on various parameters which are termed as ‘observables’ (also termed as ‘observable metrics’ or ‘observation metrics’).”)
measure a performance of the monitored system or system components using one or more remote calls of a remote call library based on the at least one relationship; and transmit the performance. (Ghag [0059]: “the monitor module 254 may fetch the observable metrics configured for each resource from the RPA metadata configuration database 222. Since the health check or monitoring of RPA components are driven through configurations, the user/administrator may enable or disable the health check for specific RPA components centrally rather than enabling or disabling at individual script levels. To execute a specific observation health check based on which RPA platform needs to be monitored, the monitor module 254 will query the RPA metadata configuration database 222 to identify the list of RPA components that needs to be monitored and the associated observable metrics, and then identify the script which needs to be executed… Each health check executed by the monitor module 254 may generate a metric message containing the details of the observable metrics and the details of resources for which the observations have been made”; [0061]: API.)
Ghag did not explicitly disclose:
an application programming interface (API) module configured to enable communications with a monitoring system;
encrypt and store the one or more relationship between the plurality of components in a repository;
decrypt the at least one relationship.
However, Khare teaches:
an application programming interface (API) module configured to enable communications with a monitoring system; (Khare [0039]: “the data storage and processing capabilities of data monitoring system 106 may be provided as a service by the data monitoring system 106 to the entity systems 180, third party systems 160, or additional systems and servers not pictured, through the use of an application programming interface (“API”) designed to simplify the communication protocol for client-side requests for data or services from the data monitoring system 106.”)
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 Khare into that of Ghag in order to have an application programming interface (API) module configured to enable communications with a monitoring system. Khare [0039] has shown that using API for monitoring is a commonly known and employed technique in the field of monitoring, applicants have thus merely claimed the combination of known parts in the field to achieve predictable results of using API for monitoring purpose and is therefore rejected under 35 USC 103.
Dalinina teaches:
encrypt and store the one or more relationship between the plurality of components in a repository; decrypt the at least one relationship. (Dalinina [0125])
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 Khare into that of Ghag in order to encrypt at least one relationship of the one or more relationships between the plurality of components; wherein the performance module is configured to determine the at least one relationship based on a communication received via the API module using a given remote call from the remote call library and decrypt the at least one relationship of the one or more relationships between the plurality of components. Dalinina [0125] teaches doing so would improve the security when using third party, applicants have thus merely claimed the combination of known parts in the field to achieve predictable results of better security for monitoring purpose and is therefore rejected under 35 USC 103.
As per claim 18, the combination of Ghag, Khare and Dalinina further teach:
The non-transitory, computer-readable medium of claim 17, wherein the processor is operable to: encrypt the performance of the monitored system or system components; store the encrypted performance to a repository; retrieve the plurality of components stored to the repository; and delete data of the monitored system or system components stored to the repository, wherein the data comprises one or more encrypted performances and the plurality of components. (Dalinina [0125])
As per claim 19, the combination of Ghag, Khare and Dalinina further teach:
The non-transitory, computer-readable medium of claim 18, wherein the processor is operable to: determine one or more measurements of each component described by the at least one relationship to measure the performance of the monitored system or system components; encrypt the one or more measurements; and store the encrypted one or more measurements to the repository. (Ghag [0049] and Dalinina [0125])
As per claim 20, the combination of Ghag, Khare and Dalinina further teach:
The non-transitory, computer-readable medium of claim 19, wherein the processor is operable to: determine at least one baseline based on the one or more measurements; encrypt the at least one baseline; and store the encrypted at least one baseline to the repository. (Ghag [0061] and Dalinina [0125])
As per claim 21, the combination of Ghag, Khare and Dalinina further teach:
The system of claim 9, wherein the monitored system is a first monitored system having a first plurality of components, the system further comprising a second monitored system having a second plurality of components, wherein the repository is configured to store one or more relationships between the first and second monitored systems. (Ghag [0048] – [0049])
Response to Arguments
Applicant’s arguments with respect to claim(s) 1, 3 – 7 and 9 – 21 have been considered but are moot because the new ground of rejection does not rely on any reference applied in the prior rejection of record for any teaching or matter specifically challenged in the argument.
Conclusion
Applicant's amendment necessitated the new ground(s) of rejection presented in this Office action. Accordingly, THIS ACTION IS MADE FINAL. See MPEP § 706.07(a). Applicant is reminded of the extension of time policy as set forth in 37 CFR 1.136(a).
A shortened statutory period for reply to this final action is set to expire THREE MONTHS from the mailing date of this action. In the event a first reply is filed within TWO MONTHS of the mailing date of this final action and the advisory action is not mailed until after the end of the THREE-MONTH shortened statutory period, then the shortened statutory period will expire on the date the advisory action is mailed, and any nonprovisional extension fee (37 CFR 1.17(a)) pursuant to 37 CFR 1.136(a) will be calculated from the mailing date of the advisory action. In no event, however, will the statutory period for reply expire later than SIX MONTHS from the mailing date of this final action.
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