Details
Claims 1-20 are pending.
Claims 1-20 are rejected.
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 Gwozdz et al (Pub. No.: US 2016/0378629 A1) in view of Eck et al (Pub. No.: US 2013/0013953 A1).
As per claim 1, Gwozdz discloses a method by a software agent device (Gwozdz, Fig 2B item 230, wherein the device running monitoring agent (for example monitored host 230) can be the software agent device) associated with a software agent (Gwozdz, Fig 2B item 210, wherein the monitor agent can be the software agent), comprising: - receiving, from a software platform device (Gwozdz, Fig 2B item 260/262/264, wherein the device running the dashboard/report/health-monitoring services can be the software platform device) associated with a software platform (Gwozdz, Fig 2B, wherein the platform associated the monitored host and/or performance monitor can be the software platform. As shown by Fig 2B, the dashboard/report/health-monitoring services are connected to the performance monitor which is connected to the monitored host and thus are associated with the software platform), a first request for information associated with operation of the software agent device (Gwozdz, paragraph 0035, wherein “The query service 256 provides information about data collected by the performance monitor 200 to client applications/services. Example clients include the dashboard service 260, the report service 262, and the health monitoring service 264. The dashboard service 260 provides an interactive, real-time view of the performance of the monitored host 230 and/or the operation of the performance monitor itself. The report service 262 provides snapshot reports of the performance of the monitored host 230”; Thus, information captured by the performance monitor (which is associated with the operations of the monitor agent 210) is provided to dashboard/report service (software platform device). Although Gwozdz does not explicitly describe “a first request”, the interaction between the dashboard/report service and the query service requires a query request to obtain the performance-related information which corresponds to the first request for information associated with operation of the software agent device) , wherein one or more tasks are delegated to the software agent by the software platform (Gwozdz, paragraph 0026, wherein “Each monitoring agent 210 may be an independent process or associated code module (e.g., linked library) that obtains data that reflects the performance of the associated computing system. This data may be obtained in various ways, including by instrumentation, sampling, event callbacks or the like”; Thus, the obtaining of performance-related data can be an example of the one or more tasks delegated to the software agent); - sending, to the software platform device and in response to the first request, the information associated with operation of the software agent device (Gwozdz, paragraph 0035, wherein “The query service 256 provides information about data collected by the performance monitor 200 to client applications/services. Example clients include the dashboard service 260, the report service 262, and the health monitoring service 264”; Thus, information captured by the performance monitor is provided (sent) to dashboard/report services (the software platform device)); - receiving, based at least in part on the information associated with operation of the software agent device, a second request for statistics corresponding to performance of the software agent (Gwozdz, paragraph 0035-0036, wherein “The query service 256 provides information about data collected by the performance monitor 200 to client applications/services. Example clients include the dashboard service 260, the report service 262, and the health monitoring service 264 … The health monitoring service 264 includes logic that can detect patterns, anomalies, and other conditions in the data that is collected by the performance monitor 200 and that reflect the health of the monitored host 230. For example, the health monitoring service 264 may evaluate user-specified rules or other expressions that specify a threshold operational response time (e.g., time to store or encrypt a document). When the operational response time exceeds the specified threshold, the health monitoring service 264 may transmit a notification, alert, or other message”; Thus, the health monitoring service obtains health-related information (statistics) corresponding to performance of the software agent. Although Gwozdz does not explicitly describe “a second request”, the interaction between the health-monitoring service and the query service requires a query request to obtain the health-related information which corresponds to the second request for statistics as claimed); - sending, to the software platform device and in response to the second request, the statistics corresponding to performance of the software agent device (Gwozdz, paragraph 0035-0036, wherein “The query service 256 provides (send) information about data collected by the performance monitor 200 to client applications/services. Example clients include the dashboard service 260, the report service 262, and the health monitoring service 264 … The health monitoring service 264 includes logic that can detect patterns, anomalies, and other conditions in the data that is collected by the performance monitor 200 and that reflect the health of the monitored host 230”; Thus, the health monitoring service (the software platform device) obtains (receive) health information (statistics) corresponding to performance of the software agent); and - receiving, from the software platform device and based at least in part on the statistics, (Gwozdz, paragraph 0035-0036, wherein “The health monitoring service 264 includes logic that can detect patterns, anomalies, and other conditions in the data that is collected by the performance monitor 200 and that reflect the health of the monitored host 230. For example, the health monitoring service 264 may evaluate user-specified rules or other expressions that specify a threshold operational response time (e.g., time to store or encrypt a document). When the operational response time exceeds the specified threshold, the health monitoring service 264 may transmit a notification, alert, or other message”;Thus, based on the health-related information, the health monitoring service (the software platform device) send a notification, alert, or other message). Although, Gwozdz discloses transmitting from the health monitoring service (the software platform device) a message based on the health information (statistics), Gwozdz does not explicitly disclose that the message is a recommendation. However, an analogous art Eck discloses receiving a recommendation (Eck, paragraph 0035, 0054, 0060, wherein “the health monitoring engine 124 may monitor an application's processor usage, memory latencies, network delays, and so on and recommend remedial actions needed to improve a performance criterion. For example, to measure the virtual disk I/O performance of an application 112, a performance counter measures the amount of time that read and write operations take to respond to the application 112. If the average response times are below a certain threshold, then the virtual disk I/O performance may be considered suboptimal or poor and remedial action may be recommended”).
Therefore, it would have it would have been obvious to one ordinary skill in the art before the effective filing date of the invention to modify Gwozdz in view of Eck such that a recommendation is sent as claimed because this would have provided a way to improve performance of the system by suggesting remedial actions. As such, the application is able to execute continuously without suffering interruptions or long delays for diagnosing and remedying a failure. In analyzing the performance parameters representing the application's operational condition, the performance of the application is improved (see Eck, paragraph 0022, 0035).
As per claim 2, claim 1 is incorporated and Eck further discloses wherein the recommendation includes: a request to adjust one of the one or more tasks delegated to the software agent device, a request to adjust one or more parameters associated with operation the software agent device or an environment of the software agent device, an indication of a workflow to perform, a request to review or modify operation of the software agent, or any combination thereof (Eck, paragraph 0065, wherein “For example, the remedial action may include restarting the guest partition, moving the guest partition to another virtualization platform on another system, allocate additional resources to the guest partition, release resources from other guest partitions in order to allocate additional resources to a guest partition, or reconfigure the allocation of resources for one or more of the guest partitions on the system. Based on the type of remedial action, the remedial action may require the service of the hypervisor 128, the host operating system 126, or other components on the virtualization platform 104”);
As per claim 3, claim 1 is incorporated and Gwozdz in view of Eck further discloses wherein the information associated with operation of the software agent device comprise one or more of a quantity of memory available to the software agent, a quantity of process CPU utilization, a quantity of system CPU utilization, a quantity of processors, a quantity of free space, or any combination thereof (Gwozdz, paragraph 0013, wherein “Performance-related data may include numeric data, such as counts that reflect various aspects of system performance, such as number of operations performed, time to perform one or more operations, average response time, or the like”), (Eck, paragraph 0059, wherein “A performance monitor log 308 stores performance data related to the operation of the components of the system, such as processor usage, processor latency, processor delay, memory usage, memory latency, memory delay, network usage, network latencies, network delays, I/O usage, I/O latencies, and I/O delays”)
As per claim 4, claim 1 is incorporated and Gwozdz further wherein the statistics corresponding to performance of the software agent comprise: a quantity of errors detected for each of a plurality of error codes, a quantity of successes and failures, a quantity of each of a plurality of events, a quantity of events that resulted in success, a quantity of events that resulted in a failure, a quantity of events that resulted in a time-out, or any combination thereof (Gwozdz, paragraph 0036, wherein “The health monitoring service 264 includes logic that can detect patterns, anomalies, and other conditions in the data that is collected by the performance monitor 200 and that reflect the health of the monitored host 230. For example, the health monitoring service 264 may evaluate user-specified rules or other expressions that specify a threshold operational response time (e.g., time to store or encrypt a document). When the operational response time exceeds the specified threshold, the health monitoring service 264 may transmit a notification, alert, or other message”);
As per claim 5, claim 1 is incorporated and Gwozdz further discloses wherein the recommendation is based at least in part on the statistics and on a plurality of rules (Gwozdz, paragraph 0036, wherein “The health monitoring service 264 includes logic that can detect patterns, anomalies, and other conditions in the data that is collected by the performance monitor 200 and that reflect the health of the monitored host 230. For example, the health monitoring service 264 may evaluate user-specified rules or other expressions that specify a threshold operational response time (e.g., time to store or encrypt a document). When the operational response time exceeds the specified threshold, the health monitoring service 264 may transmit a notification, alert, or other message”);
As per claim 6, claim 1 is incorporated and Gwozdz further discloses wherein performance of the software agent is associated with the software platform, one or more other software platforms, a server associated with the software agent, or any combination thereof (Gwozdz, paragraph 0013, wherein “Embodiments described herein provide enhanced computer- and network-based systems and methods for monitoring the performance of computing systems. Example embodiments provide a performance monitoring system that is configured to obtain performance-related data from multiple monitored computing systems”; paragraph 0025, wherein “In the illustrated example, the computing systems of the DTS 100 include front end systems 202, transaction manager systems 204, and storage systems 206. Each of the front end computing systems 202 includes a web server 203 that provides a Web-accessible user interface to the sender client device 50 and signer client device 51. Each of the transaction manager systems 204 includes a transaction service 205. The transaction service 205 is a server or other module that is configured to perform core functions of the DTS 100, including document management, user management, metadata management, transaction tracking, workflow, and the like”);
As per claim 7, claim 1 is incorporated and Gwozdz further discloses wherein the first request for the information associated with operation of the software agent is received periodically, aperiodically, or based on initiation by an administrator (Gwozdz, paragraph 0045-0046, wherein “FIG. 3B illustrates an example of tiered storage that uses three tiers that each have two partitions. The data in each tier is stored in one of partitions 1 and 2. Each tier has a corresponding time interval size. The time interval size of each tier N (N>1) encompasses multiple time intervals of the immediate lower tier N−1. In the example of FIG. 3B, tiers 1-3 respectively have time intervals of five minutes, one hour, and one day. During each interval, multiple time data items are stored. The number of data items stored is determined based on a sample length/period in relation to the time interval of a given tier. In the example of FIG. 3B, tiers 1-3 respectively have sample lengths of 15 seconds, five minutes, and one hour. Thus, during a given time interval, tier 1 stores 20 data items (five minute interval divided by a 15 second sample length); tier 2 stores 12 data items (one hour interval divided by 5 minute sample length); and tier 3 stores 24 data items (one day interval divided by one hour sample length. Tier 1 is used to store data items obtained from monitored computing systems. The data items thus represent the “lowest level” data, including actual counter values reflecting the number of operations or other performance-related aspects of the monitored computing system.”);
Claims 8-20 are rejected under the same rationale as claims 1-7;
Conclusion
Any inquiry concerning this communication or earlier communications from the examiner should be directed to HAMZA N ALGIBHAH whose telephone number is (571)270-7212. The examiner can normally be reached 7:30 am - 3:30 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, Wing Chan can be reached on (571) 272-7493. 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.
/HAMZA N ALGIBHAH/Primary Examiner, Art Unit 2441