DETAILED ACTION
The present application, filed on or after March 16, 2013, is being examined under the first inventor to file provisions of the AIA .
This action is Final
This Action is in response to the amendments filed on 12/15/2025.
Claims 1-20 are pending and have been considered.
Claims 1, 2, 12, 20 have been amended.
Claims 1- 20 are rejected under 35 U.S.C. 101 as being directed to non-statutory subject matter, a judicial exception, an abstract idea, without significantly more. The amendments and arguments have been considered but have not been found persuasive.
In view of the amendments, the rejections of the independent claims under 35 U.S.C. 103 as being unpatentable over of Papaefstathiou et al US 20060025981 A1, in view of Prikryl Z US 20220335186 A1 has been withdrawn. As a consequence of the withdrawal of the rejection on the independent claims, under 35 USC 103, the rejection on the dependent claims has also been withdrawn.
A new ground of rejection under 35 U.S.C. 103 has been made and properly made final in view of the amendments. Claims 1-3, 6,10,12-14, 17, 19, 20 are rejected under 35 U.S.C. 103 as being unpatentable over of Papaefstathiou et al US 20060025981 A1, in view of Prikryl Z US 20220335186 A1 in further view of in further view of Oshiro, Performance Evaluation for Distributed Systems, Nippon Steel Technical Report 76, March 1998
Claims 4, 5,9, 11, 15, 16 are rejected under 35 U.S.C. 103 as being unpatentable over of Papaefstathiou et al US 20060025981 A1, hereinafter PAP in view of Prikryl Z US 20220335186 A1, hereinafter PRI, in further view of Oshiro, Performance Evaluation for Distributed Systems, Nippon Steel Technical Report 76, March 1998 in further view of Ehlers J Self-Adaptive Performance Monitoring for Component-Based Software Systems, Dissertation, Kiel, 2011, hereinafter EHL
Claims 7, 18 are rejected under 35 U.S.C. 103 as being unpatentable over of Papaefstathiou et al US 20060025981 A1, in view of Prikryl Z US 20220335186 A1, , in further view of Oshiro, Performance Evaluation for Distributed Systems, Nippon Steel Technical Report 76, March 1998 in further view of Vandriessche et al US 20190004920 A1
Claim 8 rejected under 35 U.S.C. 103 as being unpatentable over of Papaefstathiou et al US 20060025981 A1, hereinafter PAP in view of Prikryl Z US 20220335186 A1, hereinafter PRI in further view of Oshiro, Performance Evaluation for Distributed Systems, Nippon Steel Technical Report 76, March 1998 in further view of Vandriessche et al US 20190004920 A1, hereinafter VAN, in further view of Ehlers J Self-Adaptive Performance Monitoring for Component-Based Software Systems, Dissertation, Kiel, 2011, hereinafter EHL
Response to Amendments/Arguments
The Examiner thanks the Applicant for the Amendments and Arguments filed on 12/15/2025 which have been considered and which help clarifying the claimed invention and advance prosecution.
Main amendments are to the independent claims, 1, 12 and 20 and to dependent claim 2. An amendment changing the word ‘processor’ to ‘device’ has also been made in some claims, without introducing a substantially new limitation.
The arguments regarding the 101 rejection have been considered but have not been found persuasive. The amendments do not overcome the 35 USC 101 rejection, which is maintained.
The Examiner is aware and follows the referred August 2025 Memorandum and the MPEP 2106.04(a) guidance. However, Examiner’s interpretation is different than that of the Applicant.
To start with the Examiner, following the Alice/Mayo test, interprets that the some limitations of the claim, thus the claim, recites an abstract idea, not only involves an abstract idea. When more than a single limitation recites an abstract idea, the MPEP guidance as referred to is to in the Office Action is to consider the limitations together as a single abstract idea for further analysis. The Applicant disagrees, although it is unclear if Applicant disagrees with considering the limitations together and formulating a single abstract idea, or with which specific abstract idea is considered the claim to be directed to, which in the NF Office Action was indicated as ‘Defining a performance model based on software model and configured workload and hardware models’. In any case, the Examiner maintains the interpretation, with the change in view of the amendments, that the abstract idea is ‘Generating a performance model based on software model and configured workload and hardware models’. The added limitations refine concepts in the abstract idea but do not change the interpretation that the main steps are abstract ideas.
Applicant argues that the specific steps, identified as reciting abstract idea, cannot be performed in the mind. In view of MPEP 2106.04(a)(2) III Mental processes :”The courts consider a mental process (thinking) that "can be performed in the human mind, or by a human using a pen and paper" to be an abstract idea. CyberSource Corp. v. Retail Decisions, Inc., 654 F.3d 1366, 1372, 99 USPQ2d 1690, 1695 (Fed. Cir. 2011). As the Federal Circuit explained, "methods which can be performed mentally, or which are the equivalent of human mental work” and “Nor do the courts distinguish between claims that recite mental processes performed by humans and claims that recite mental processes performed on a computer. As the Federal Circuit has explained, "[c]ourts have examined claims that required the use of a computer and still found that the underlying, patent-ineligible invention could be performed via pen and paper or in a person’s mind." Versata Dev. Group v. SAP Am., Inc., 793 F.3d 1306, 1335, 115 USPQ2d 1681, 1702 (Fed. Cir. 2015). See also Intellectual Ventures I LLC v. Symantec Corp., 838 F.3d 1307, 1318, 120 USPQ2d 1353, 1360 (Fed. Cir. 2016) (‘‘[W]ith the exception of generic computer-implemented steps, there is nothing in the claims themselves that foreclose them from being performed by a human, mentally or with pen and paper.’’); Mortgage Grader, Inc. v. First Choice Loan Servs. Inc., 811 F.3d 1314, 1324, 117 USPQ2d 1693, 1699 (Fed. Cir. 2016) (holding that computer-implemented method for "anonymous loan shopping" was an abstract idea because it could be "performed by humans without a computer"). Mental processes recited in claims that require computers are explained further below with respect to point C”
§ 2106.05(f): “Similarly, "claiming the improved speed or efficiency inherent with applying the abstract idea on a computer" does not integrate a judicial exception into a practical application or provide an inventive concept” and see MPEP § 2106.05(a)(I): “ii. Accelerating a process of analyzing audit log data when the increased speed comes solely from the capabilities of a general-purpose computer… iii. Mere automation of manual processes, such as using a generic computer to process an application for financing a purchase…” As seen in MPEP § 2106.05(a)(I) and § 2106.05(f)(2), the court found that accelerating a process when the increased speed solely comes from the capabilities of a general-purpose computer is not sufficient to show an improvement in computer-functionality and it amounts to a mere invocation of computers or machinery as a tool to perform an existing process (see FairWarning IP, LLC v. Iatric Sys., 839 F.3d 1089, 1095, 120 USPQ2d 1293, 1296 (Fed. Cir. 2016)).
The claims in the current applicant, though performed by computer, at higher speed, describes a process as above. To clarify further on some examples where this would not be practically performed in the mind – say if the data would come from sensors or internet at high speed and be processed in real time – and these method elements were recited in the claim, not merely in the specification.
The arguments continue with Applicant’s interpretation that the claims integrate into a practical applicant and provide significantly more and cite the paragraphs [0019]-[0020]
Examiner believes that parts of the Specification, including for example [0091] [0125] [0126] likely provide support for such integration and significantly more, if claims were differently drafted, however, the claims, as currently amended do not include such elements.
The claims as currently drafter continue to be directed to an abstract idea without significantly more. The Examiner believes that the Specification has support for amendments that could make the claims eligible under 101, but, again, the claims as drafted do not reflect these aspects.
Specification
The title of the invention has a misspelled word, ‘simiulate’. A new title is required that is clearly indicative of the invention to which the claims are directed.
The following title is suggested: SYSTEM, DEVICE, AND METHOD FOR CONTINUOUS MODELLING TO SIMULATE TEST RESULTS.
Claim Rejections - 35 USC § 101
35 U.S.C. 101 reads as follows:
Whoever invents or discovers any new and useful process, machine, manufacture, or composition of matter, or any new and useful improvement thereof, may obtain a patent therefor, subject to the conditions and requirements of this title.
Claims 1-20 are rejected under 35 U.S.C. 101 as being directed to non-statutory subject matter, a judicial exception (abstract idea, mental process) without significantly more.
(S1) Prima facie, claims 1-20 are each directed to a statutory category of invention: process (claims 12-19 directed to a method), machine (claims 1-11 directed to a device) and manufacture (claim 20 directed to a non-transitory computer readable medium).
(S2A1) Claims are analyzed under the Alice/Mayo framework to determine if directed to an ineligible judicial exception. Recitation of judicial exceptions are highlighted in bold font. Paraphrasing (in italics) is used to simplify referencing. Claims with similar limitations (even though not verbatim identical) and sharing the same rationale under Alice/Mayo steps S1 and S2, are grouped, as follows. The analysis is performed on a representative claim of the group; an additional analysis is performed if any claims in the group have additional limitations.
Claim 1, representative for claims 12, 20, recites
a device for simulating application performance prior to performance testing, the device comprising: a processor; and a memory coupled to the processor, the memory storing computer executable instructions that when executed by the processor cause the device to: (preamble, intended use, recites processing on a generic computer)
obtain results of a preliminary simulation of an application in a development environment; (additional element, data gathering)
process the obtained results from the preliminary simulation, with a profiling tool, and generate a software model based on an output of the profiling tool; (The limitation recites processing additional elements, generic computer implementation of data analysis, an extra-solution activity. The claim also recites generation of a software model which has the characteristics of a mental process – though in combination with the first part of the limitation one can consider the entire limitation as additional elements.
generate a plurality of workload models and a plurality of hardware models to account for a plurality of desired scenarios; (This is a process that involves evaluations, making judgements and decisions. For example one can consider the desired scenario to be providing customers with an ability to access online media services, and make certain assumptions and chose workload models and parameters, such as a model that provides video to a number of customers simultaneously, based on the number of estimated subscribers on a channel, and for the hardware model deciding which server capacity, fiber/line capacity, routers, power etc to be used to access the resources and distribute to customers, thus, for example, the generation would involve choosing from a set of models, choosing/specifying parameter set, choosing modalities of upgrade and fault-recovery – all of which can be performed in the mind or using pen and paper, thus being mental processes (see MPEP 2106.04(a)(2) III). This is in BRI and also in view of the specification that consistently
generate a plurality of performance models using the software model, the plurality of workload models, and the plurality of hardware models, wherein the software model is fixed compared to the workload models and the hardware models, and wherein the plurality of performance models are generated automatically upon detection of a new build of the application being added to an application inventory; and (This is a process that involves evaluations, making judgements and decisions. For example one can consider the definition of a performance model to be specifying a quality expression in which weighted terms include the traffic as number of customers accessing the service in a chosen unit of time, the maximum latency, maximum number of failures to provide service etc. Such model definition can, and has been in the past, performed in the mind or using pen and paper. This is a mental process (see MPEP 2106.04(a)(2) III) . The wherein clauses only refine concepts in the abstract idea, have no active method step, and do not change the
prior to testing the application, automatically use the plurality of performance models to simulate performance of the application in the plurality of desired scenarios (additional element, an insignificant activity, mere field of use/technological environment (see MPEP § 2106.05(h)).
Thus, the limitations of claims 1, 12, 20 recite mental processes. In broadest reasonable interpretation and in view of the application specification as well as the guidance from MPEP 2106.04 II. B, the limitations are considered together as a single abstract idea for further analysis, which in broadest reasonable interpretation is as a process aimed at: “Generating a performance model based on software model and configured workload and hardware models” .
This is a combination that, under its broadest reasonable interpretation covers performance of limitations expressing observation, evaluation, judgement and decision-making. Nothing in the claim elements precludes the steps from being practically performed mentally or manually by a human. This is an abstract idea, a Mental Process (MPEP § 2106.04(a)(2), subsection III) ).
In view of MPEP 2106.04(a)(2) III Mental processes :”The courts consider a mental process (thinking) that "can be performed in the human mind, or by a human using a pen and paper" to be an abstract idea. CyberSource Corp. v. Retail Decisions, Inc., 654 F.3d 1366, 1372, 99 USPQ2d 1690, 1695 (Fed. Cir. 2011). As the Federal Circuit explained, "methods which can be performed mentally, or which are the equivalent of human mental work” and “Nor do the courts distinguish between claims that recite mental processes performed by humans and claims that recite mental processes performed on a computer. As the Federal Circuit has explained, "[c]ourts have examined claims that required the use of a computer and still found that the underlying, patent-ineligible invention could be performed via pen and paper or in a person’s mind." Versata Dev. Group v. SAP Am., Inc., 793 F.3d 1306, 1335, 115 USPQ2d 1681, 1702 (Fed. Cir. 2015). See also Intellectual Ventures I LLC v. Symantec Corp., 838 F.3d 1307, 1318, 120 USPQ2d 1353, 1360 (Fed. Cir. 2016) (‘‘[W]ith the exception of generic computer-implemented steps, there is nothing in the claims themselves that foreclose them from being performed by a human, mentally or with pen and paper.’’); Mortgage Grader, Inc. v. First Choice Loan Servs. Inc., 811 F.3d 1314, 1324, 117 USPQ2d 1693, 1699 (Fed. Cir. 2016) (holding that computer-implemented method for "anonymous loan shopping" was an abstract idea because it could be "performed by humans without a computer"). Mental processes recited in claims that require computers are explained further below with respect to point C”
Accordingly, claims 1, 12, 20 recite an abstract idea.
(S2A2) The additional claim elements are generic computing elements (0), generic data gathering (a), and computer implementation of data analysis, an extra-solution activity (b) and mere field of use/technological environment ( e). The additional elements, taken individually or in combination, fail to integrate the recited judicial exception into a practical application when evaluated using the considerations in MPEP §§ 2106.04(d), 2106.05(a)-(c), (e)-(h) because these do not impose any meaningful limits on practicing the abstract idea., nor do they effect an improvement to any technology or technical field. According, the claim as a whole does not integrate the abstract idea into a practical application, and thus the claim remains directed to a judicial exception.
§ 2106.05(f): “Similarly, "claiming the improved speed or efficiency inherent with applying the abstract idea on a computer" does not integrate a judicial exception into a practical application or provide an inventive concept” and see MPEP § 2106.05(a)(I): “ii. Accelerating a process of analyzing audit log data when the increased speed comes solely from the capabilities of a general-purpose computer… iii. Mere automation of manual processes, such as using a generic computer to process an application for financing a purchase…” As seen in MPEP § 2106.05(a)(I) and § 2106.05(f)(2), the court found that accelerating a process when the increased speed solely comes from the capabilities of a general-purpose computer is not sufficient to show an improvement in computer-functionality and it amounts to a mere invocation of computers or machinery as a tool to perform an existing process (see FairWarning IP, LLC v. Iatric Sys., 839 F.3d 1089, 1095, 120 USPQ2d 1293, 1296 (Fed. Cir. 2016)).
Thus, Claims 1, 12, 20 do not include additional elements, which individually or in combination amount to significantly more than the judicial exception. As analyzed in step S2A2 the additional elements recite acquiring data, data analysis, and field of use elements. When considered individually, these claim elements are similar to those the courts have found not enough to qualify as “significantly more” than the judicial exception; these additional elements, including data gathering, data manipulation, recited at high level of generality were found by the courts to be Well-Understood, Routine and Conventional (see MPEP § 2106.05(d)(ll)).
When considered as a whole, with additional elements in an ordered combination, the additional elements only elaborate on the identified abstract idea, and do not practically or significantly alter how the identified abstract idea would be performed. Moreover, as noted above, there is nothing about the computing environment or the additional steps that is significant or meaningful to the underlying judicial exception because the identified abstract idea, ‘generate a performance model based on software model and configured workload and hardware models’, could have been reasonably performed when provided with the relevant data and/or information. There is no inventive concept beyond the judicial exception, and thus the claim as a whole does not amount to significantly more than the judicial exception itself.
Therefore, it is concluded that claims 1, 2, 20 are ineligible.
Claims 2, 13 continue to recite the abstract idea of claim 1, and further recite - wherein computer executable instructions cause the device to:
simultaneously simulate performance of the application using each of plurality of performance models.
The simulation of performance can in principle performed in the mind or the use of tools. The simultaneous simulation is subject to interpretation, depending on the practicality of performing mentally the simultaneous simulation. In here given that multi-processor computers able to perform simultaneous processing on each processor or core being common for decades, this will be interpreted as a an additional element of generic computing on a conventional computer, which the courts found to be WURC. The claim elements do not effect a transformation of an article, improve the functioning of a computer or other technology, or meaningful limit the judicial exception. Accordingly this additional limitation does not integrate the abstract idea into a practical application, nor does it add an inventive step.
Therefore, claims 2, 1 are directed to an abstract idea without significantly more, and are ineligible under 35 USC 101.
Claims 3, 14, similar to claims 2, 13, continue to recite the abstract idea of claim 1, and further recite-
wherein computer executable instructions cause the device to:
format the obtained results prior to generating the performance model.
The additional elements recite an insignificant extra-solution activity, of generic data processing by a computer. This does not practically or significantly alter how the identified abstract idea would be performed and do not provide more than a general link to a technological environment. It does not change the nature of the identified abstract idea from a judicial exception into eligible subject matter, because it does not represent significantly more (see MPEP 2106.07).
Therefore, claims 3, 14 are directed to an abstract idea without significantly more and are ineligible under 35 USC 101.
Claims 7, 18 continue to recite the abstract idea of claim 1, and further recite - wherein computer executable instructions cause the device to:
initiate the preliminary simulation in response to determining the application requires simulation.
The claim recites a mental process, which can be interpreted as initiating an action based on making a determination, or decision following an evaluation of a situation. The claim does not recite additional elements, thus there is nothing to provide integration into a practical application or significantly more. Therefore, claims 7, 18 are directed to an abstract idea without significantly more and are ineligible under 35 USC 101.
Claim 8 follows the same reasoning as claim 7 - the determination whether important applications are impacted by the application is a process that can be performed in the mind, and there are no additional elements recited. Claim 8 is ineligible under 35 USC 101.
Claim 9 continues to recite the abstract idea of claim 1, and further recites - wherein computer executable instructions cause the device to:
transmit results of the application simulation to a dashboard.
Transmitting the results of a simulation to a dashboard is simply ‘apply it’, an outcome of the simulation. The additional elements fail to integrate the abstract idea into a practical application or to provide significantly more. Claim 9 is ineligible under 35 USC 101.
Claim 10 (representative for claim 19) continue to recite the abstract idea of claim 1 (respectively 12, as for claim 19), and further recites - wherein computer executable instructions cause the device to:
assign one or more resources in response to the results of the application simulation.
Assigning resources in response to results of a simulation is an abstract idea. It can be performed in the mind, so it is a mental process, for example deciding to allocate more memory to a word processing application when a determination is made that lack of memory slows down application response. The execution on a processor is merely a recitation of generic computing components and functions being used as a tool to implement the judicial exception (see MPEP § 2106.05(f)). There is nothing else recited that can integrate the abstract idea into a practical application or to provide significantly more.
Claim 10 is ineligible under 35 USC 101.
Claims 4-6,11,15-17 further recite:
(4,15) wherein the profiling tool comprises a third-party software profiling tool.
(5,16) wherein each workload model at least in part represents an expected peak and average workload of the desired scenario.
(6,17) wherein the profiling tool models the application at least in part by code profiling.
(11) wherein the development environment comprises a scaled down development environment.
These further elements in the dependent claims do not perform any claimed method steps. They describe the nature, structure and/or content of other claim elements –profiling tool, workload model, development environment)– and as such, cannot change the nature of the identified abstract idea (“Generate a performance model based on software model and configured workload and hardware models”), from a judicial exception into eligible subject matter, because they do not represent significantly more (see MPEP 2106.07). The nature, form or structure of the other claim elements themselves do not practically or significantly alter how the identified abstract idea would be performed and do not provide more than a general link to a technological environment.
When the dependent claims are considered as a whole, as an ordered combination, the claim elements noted above appear to merely apply the abstract concept to a technical environment in a very general sense. The most significant elements, which form the abstract concept, are set forth in the independent claims. The fact that the computing devices and the dependent claims are facilitating the abstract concept is not enough to confer statutory subject matter eligibility, since their individual and combined significance do not transform the identified abstract concept at the core of the claimed invention into eligible subject matter. Therefore, it is concluded that the additional elements recited above, considered individually, or as a as a whole, as an ordered combination, do not amount to significantly more (see MPEP 2106.07(a)II). Thus claims 4-6,11,15-17 are found ineligible.
In sum, Claims 1-20 are rejected under 35 USC 101 as being directed to non-statutory subject matter.
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(a) are summarized as follows:
i. Determining the scope and contents of the prior art.
ii. Ascertaining the differences between the prior art and the claims at issue.
iii. Resolving the level of ordinary skill in the pertinent art.
iv. Considering objective evidence present in the application indicating obviousness or nonobviousness.
Claims that share substantially similar limitations (even though not verbatim) are grouped and analyzed together; the analysis is done on the claim with most comprehensive limitations.
Claims 1-3, 6,10,12-14, 17, 19, 20 are rejected under 35 U.S.C. 103 as being unpatentable over of Papaefstathiou et al US 20060025981 A1, hereinafter PAP in view of Prikryl Z US 20220335186 A1, hereinafter PRI in further view of Oshiro, Performance Evaluation for Distributed Systems, Nippon Steel Technical Report 76, March 1998
Regarding Claim 1, 12, 20, PAP discloses a device for simulating application performance prior to performance testing, the device comprising:
a processor; and a memory coupled to the processor, the memory storing computer executable instructions that when executed by the processor cause the device to: { Fig. 6; [0058] FIG. 6 shows an exemplary computer device 600 for implementing the described systems and methods. In its most basic configuration, computing device 600 typically includes at least one central processing unit (CPU) 605 and memory 610.; Communication device 640;}
configure a plurality of workload models and a plurality of hardware models to account for a plurality of desired scenarios; {
pap[0020] The described system may also be used for executing a what-if analysis. Using the baseline models, a user may predict the performance of the infrastructure with one or more changes to the configurations. Examples of what-if scenarios include an increase in workload, changes to hardware and/or software configuration parameters, or the like.}
generate a plurality of performance models using the software model, the plurality of workload models, and the plurality of hardware models, { PAP[0019] The automated performance model configuration system described below enables performance modeling to be efficiently and accurately executed. This system allows users to quickly and cost-effectively perform various types of analysis. For example, the described system may be used to execute a performance analysis for a current infrastructure, which includes both hardware and software components. [0031] Automated model configuration module 100 may provide any type of models for inputting to simulation module 130. In one embodiment, automated model configuration generates models for infrastructure 110 relating to physical topology, logical topology, workload, transaction workflows, and action costs. ; [0038] Simulation module 130 is configured to simulate actions performed by infrastructure 110 using models generated and configured by automated model configuration module 100. [0044] See Fig. 2; Physical topology module 201 is configured to model the physical topology of an infrastructure. [0045] The retrieved data typically contains the information for construction a model of the infrastructure, such as a list of servers and the hardware components that they contain, and the physical topology of the network (e.g. the interconnections between servers).; [0046] Logical topology modeling module 202 is configured to map software components; [0047] Workload modeling module 203 is configured to derive the values of parameters from the user workload.
}
PNG
media_image1.png
818
607
media_image1.png
Greyscale
wherein the plurality of performance models are generated automatically upon detection of a new build of the application being added to an application inventory; { PAP: [0002] This application is related to U.S. patent application Ser. No. 09/632,521, titled "A PERFORMANCE TECHNOLOGY INFRASTRUCTURE FOR MODELING THE PERFORMANCE OF COMPUTER SYSTEMS", the content of which is hereby incorporated by reference. Application 09/632521, 2000-08-04 Document ID US 6996517 B1 [Abstract] The performance technology infrastructure also includes a hardware model interface facilitating designation of a particular computing environment (e.g., hardware configuration and/or network/multiprocessing load). A disclosed hardware model comprises a specification of delays associated with particular resource uses. A disclosed hardware specification further specifies a hardware configuration describing actual resource elements (e.g., hardware devices) and their interconnections in the system of interest. The performance technology infrastructure further comprises an evaluation engine for performing a system performance analysis in accordance with a specified workload and hardware model incorporated via the workload specification and hardware model interfaces.; (16) The evaluation engine allows combining different workload specification and hardware model technologies into a single performance analysis model.(35) the performance technology infrastructure disclosed herein is designed to facilitate users changing the model and system configuration designation before or during an evaluation of a system model. This feature is intended to support system models that are evaluated during execution of an application to guide a performance related task. During the evaluation of the model, system characteristics may change (e.g., network background load changes). A monitoring sensor can forward the status change to the system model and update the model configuration DOM object.} automated generation upon detection of a new build is interpreted as update of the model configuration and implicitly the performance evaluation (changing during an evaluation) based on monitoring sensor.
automatically use the plurality of performance models to simulate performance of the application in the plurality of desired scenarios{ PAP [0021] The system then uses the configured models to execute a simulation and produces reports for the future capacity of the system. The system may raise an alarm if the capacity of the system will not be sufficient for the next reporting period.[0042] An IT Professional can use the system to automatically configure a model representing the current state of the system, simulate the expected performance, and determine if the problem is due to capacity issues or to some other cause. Claim 28. A system comprising: means for retrieving data associated with an infrastructure from a management application configured to monitor the infrastructure; means for identifying a model of the infrastructure; means for automatically configuring the model using the data; and means for executing an event-based simulation using the model. Claim 29. The system as recited in claim 28, further comprising: means for performing at least one of a bottleneck analysis, a what-if analysis, operational troubleshooting, or automated-capacity reporting.}
PAP does not disclose, however PRI discloses:
obtain results of a preliminary simulation of an application in a development environment; { [0037] The executable file 122 is provided to the simulator, the profiler, and/or the debugger 116 that enable simulation of the executable file 122. The simulator duplicates, i.e., simulates the functions of the single processor model 104 so that the simulated behavior closely resembles the behavior of the single processor model 104. The profiler monitors and analyses the different functions of the processor during the executable file execution}
process the obtained results from the preliminary simulation, with a profiling tool, and generate a software model based on an output of the profiling tool; {[0037] The executable file 122 is provided to the simulator, the profiler, and/or the debugger 116 that enable simulation of the executable file 122. The simulator duplicates, i.e., simulates the functions of the single processor model 104 so that the simulated behavior closely resembles the behavior of the single processor model 104. The profiler monitors and analyses the different functions of the processor during the executable file execution, and is able to output summary of the events observed, stream of recorded events, and any other output known to a person of ordinary skills in the art. By means of an example, such an output may comprise information like: list of executed instructions, pipeline statistics, and other output information known to a person of ordinary skills in the art. [0039] After simulation, debugging, or profiling, the produced output information results and debugger results are reviewed by the user vis-à-vis the known expected results, and the user decides whether changes to processor specifications 102 need to be made. When changes to processor specifications 102 and/or the design parameters 106 are needed, the changes are then used to change the single processor model 104} In broadest reasonable interpretation process results interpreted as profiled monitors and analysis and producing output results. Using output tool to generate software model interpreted as the review by user who decides changes to processor specifications and design parameters.
In addition, it would have been obvious to one of ordinary skill in the art, before the effective filing date of the invention, to combine the teachings of PAP with PRI. One would have been motivated to do so, in order to obtain the advantage of obtaining an evaluation of the simulated model in order to improve it in the aspects found lacking. PAP [0004] This application is related to U.S. patent application Ser No. 10/053,731…the content of which is hereby incorporated by reference. In there “[Abstract] The simulator includes an evaluation engine that determines the amount of resource used during each simulation interval of the simulation and records the resource usage in a resource contention timeline, which can be displayed to a user. The amount of resource used during a simulation is also used to adjust the event duration calculations of the hardware models associated with each event.” Both PAP and PRI are in the same art, and implemented through well-known computer technologies in the same or similar context, combining their features as outlined above using such well-known computer technologies (i.e., conventional software/hardware configurations), would be reasonable, according to one of ordinary skill in the art. Since the elements disclosed by PAP and PRI would function in the same manner in combination as they do in their separate embodiments, the results of the combination would be predictable.
Accordingly, the claimed subject matter would have been obvious over PAP in view of PRI.
PAP/PRI do not teach however OSH teaches
wherein the software model is fixed compared to the workload models and the hardware models, and { [p64 left col 2/3) A performance evaluation model is a modeled target system that takes into consideration the purpose and necessary costs for evaluation. It consists of a hardware model including a system constructing computer, disks, and networks; a software model including application programs, middleware structure, and database structure; and a load (workload) applied to the target system; [p68 left col] Fig. 5 shows the case where the database server and two WS are connected to the network to execute”p68 left col bottom and right col top] System performance was repeatedly evaluated by testings in which parameters were changed for the database model and workload model. } hardware model interpreted as the database model for the database server.
In addition, it would have been obvious to one of ordinary skill in the art, before the effective filing date of the invention, to combine the teachings of PAP, PRI with OSH. One would have been motivated to do so, in order to obtain the advantage of obtaining of evaluating the performance of software on various configurations of hardware and loads, which is the essence of a software model – e.g. ‘code’ e.g. code of a browser/app that works on various phones/hardware under different conditions of use (multiple applications in parallel ). Accordingly, the claimed subject matter would have been obvious over PAP in view of PRI in further view of OSH.
Regarding claims 2, 13, PAP/PRI/OSH disclose the limitation of independent claim 1. This includes the simulation of performance of the application using performance models. PAP also recites multiple processors, though not being explicit about parallel processing/simultaneous simulations, however PRI further teaches simultaneous simulations:
simultaneously simulate performance of the application using each of plurality of performance models continuously update the performance model. {[0069] Therefore, by means of an example a person having ordinary skill in the art will understand, that the flow chart is not exhaustive because certain steps may be added or be unnecessary and/or may be carried out in parallel based on a particular implementation.} simultaneous simulate interpreted as in parallel.
In addition, it would have been obvious to one of ordinary skill in the art, before the effective filing date of the invention, to combine the teachings of PAP/PRI/OSH with further teaching of PRI. One would have been motivated to do so, in order to obtain the advantage a speed advantage through the parallel/simultaneous evaluation, especially since PAP does teach the use of multiple processors. PAP/PRI/OSH are in the same art, and implemented through well-known computer technologies in the same or similar context, combining their features as outlined above using such well-known computer technologies (i.e., conventional software/hardware configurations), would be reasonable, according to one of ordinary skill in the art. Since the elements disclosed by PAP/PRI and further elements of PRI would function in the same manner in combination as they do in their separate embodiments, the results of the combination would be predictable.
Accordingly, the claimed subject matter would have been obvious over PAP in view of PRI in further view of OSH.
Regarding claims 3, 14 PAP/PRI/OSH disclose the limitation of independent claim 1. PAP further teaches:
format the obtained results prior to generating the performance model. {[0033] Automated model configuration module 100 may use a hierarchical Extensible Markup Language (XML) format to encode hardware information, representing servers as containers for the devices that the servers physically contain. [0045] The retrieved data typically contains the information for construction a model of the infrastructure, such as a list of servers and the hardware components that they contain, and the physical topology of the network (e.g. the interconnections between servers). Physical topology module 201 may also be configured to convert the retrieved data to a format for creating models that are usable in a simulation. For example, the retrieved data may be converted to an XML format. [0046] which in turn can be used to declare the application component to which a performance model of Exchange corresponds. Logical topology modeling module 202 may be configured to convert data of the underlying format to a format that is usable for simulation models}
Regarding claim 10, 19, PAP/PRI/OSH disclose the limitation of independent claim 1. PAP further discloses
assign one or more resources in response to the results of the application simulation. {[0020] The described system may also be used for executing a what-if analysis. Using the baseline models, a user may predict the performance of the infrastructure with one or more changes to the configurations. Examples of what-if scenarios include an increase in workload, changes to hardware and/or software configuration parameters, or the like. [0021] The system then uses the configured models to execute a simulation and produces reports for the future capacity of the system. The system may raise an alarm if the capacity of the system will not be sufficient for the next reporting period. [0040] …Frequent capacity reporting allows an IT professional to proactively manage an infrastructure, such as anticipating and correcting performance problems before they occur.} to assign one or more resources in response to the results of the application simulation is interpreted in BRI as proactively managing the infrastructure to correct performance problems before they occur as a result of report from simulation.
Regarding claims 6, 17, PAP/PRI/OSH disclose the limitation of independent claim. PRI further discloses
wherein the profiling tool models the application at least in part by code profiling. {[0005] The results of the simulation/profiling may indicate a need to change/optimize the basic instruction set and/or a need to change the processor specifications. [0011] et another problem is code repetition, arising from the fact that some portions of the code, e.g., constants, instruction encoding, and other portions known to a person of ordinary skill in the art must occur in the IA model as well as in the CA model.} code profiling interpreted as profiling of software, referred to by code and instructions.
In addition, it would have been obvious to one of ordinary skill in the art, before the effective filing date of the invention, to combine the teachings of PAP with PRI. One would have been motivated to do so, in order to obtain the advantage of obtaining an evaluation of the simulated model in order to improve it in the aspects found lacking – in this case the simulation relating to a computation/ coding Both PAP and PRI are in the same art, and implemented through well-known computer technologies in the same or similar context, combining their features as outlined above using such well-known computer technologies (i.e., conventional software/hardware configurations), would be reasonable, according to one of ordinary skill in the art. Since the elements disclosed by PAP and PRI would function in the same manner in combination as they do in their separate embodiments, the results of the combination would be predictable.
Accordingly, the claimed subject matter would have been obvious over PAP in view of PRI in further view of OSH.
Claims 4, 5,9, 11, 15, 16 are rejected under 35 U.S.C. 103 as being unpatentable over of Papaefstathiou et al US 20060025981 A1, hereinafter PAP in view of Prikryl Z US 20220335186 A1, hereinafter PRI, in further view of Oshiro, Performance Evaluation for Distributed Systems, Nippon Steel Technical Report 76, March 1998 in further view of Ehlers J Self-Adaptive Performance Monitoring for Component-Based Software Systems, Dissertation, Kiel, 2011, hereinafter EHL
Regarding claims 4, 15, PAP/PRI/OSH disclose the limitation of independent claim 1. PAP/PRI/OSH does not disclose, however EHL further discloses
wherein the profiling tool comprises a third-party software profiling tool. { [p.54 botttom] For Java applications being executed in a JVM, the recently most common profiler tools include Eclipse Test & Performance Tools Platform (TPTP)14 NetBeans Profiler15, JProbe16, and JProfiler17. While the first two ones are open source plugins for the respective integrated development environment (IDE), the last ones are commercial products.}
In addition, it would have been obvious to one of ordinary skill in the art, before the effective filing date of the invention, to combine the teachings of PAP/PRI/OSH with EHL. One would have been motivated to do so, in order to obtain the advantage of flexibility of a software profiling tool validated by being in use for many customers, thus with validated performance. Both PAP/PRI/OSH and EHL are in the same art, and implemented through well-known computer technologies in the same or similar context, combining their features as outlined above using such well-known computer technologies (i.e., conventional software/hardware configurations), would be reasonable, according to one of ordinary skill in the art. Since the elements disclosed by PAP/PRI/OSH and EHL would function in the same manner in combination as they do in their separate embodiments, the results of the combination would be predictable.
Accordingly, the claimed subject matter would have been obvious over PAP in view of PRI in further view of OSH in further view of EHL.
Regarding claims 5, 16, PAP/PRI/OSH disclose the limitation of independent claim 1. PAP/PRI/OSH does not disclose, however EHL further discloses
wherein each workload model at least in part represents an expected peak and average workload of the desired scenario. {[p.183 Section 5.3.2.] The Kieker Analysis component is designed to be run on a dedicated server hosted in a local network connected to the servers of the monitored software system to ensure high data transfer rates…. As this exposes the monitored system to more and more workload, Kieker has to process a continuously increasing number of records/s. Applying Kieker’s dynamic analysis capabilities (see Chapter 4), this leads to a CCT containing 73 different operations observed in 257 total calling contexts with averages of 5 operations/class and 35 operation executions/request (trace). [p.2] The systems have to serve up to thousands of requests/s in parallel. Further, they are exposed to intensity-varying workload that is difficult to forecast and challenges the system’s design concerning performance. Performance requirements claim dependable responsiveness and throughput numbers regardless of workload peaks.}
In addition, it would have been obvious to one of ordinary skill in the art, before the effective filing date of the invention, to combine the teachings of PAP/PRI/OSH with EHL. One would have been motivated to do so, in order to obtain the advantage of being able to handle the worse case scenario (peaks) and also to optimally allocate resources for an average number of workload events. Both PAP/PRI/OSH and EHL are in the same art, and implemented through well-known computer technologies in the same or similar context, combining their features as outlined above using such well-known computer technologies (i.e., conventional software/hardware configurations), would be reasonable, according to one of ordinary skill in the art. Since the elements disclosed by PAP/PRI/OSH and EHL would function in the same manner in combination as they do in their separate embodiments, the results of the combination would be predictable.
Accordingly, the claimed subject matter would have been obvious over PAP in view of PRI in further view of OSH in further view of EHL.
Regarding claim 9, PAP/PRI/OSH disclose the limitation of independent claim 1. PAP/PRI/OSH does not disclose, however EHL further discloses - wherein computer executable instructions cause the device to:
transmit results of the application simulation to a dashboard. {[p.88, below Figure 3.3] For each operation, monitoring is either activated or deactivated. In the displayed system state, only operations serving as part of a component’s provided interface are activated. Monitoring of all component-internal operations is deactivated. This is an appropriate initial configuration for the monitoring rules. At runtime, the monitoring coverage can be intensified to inspect the interior control flow of a component in case it does not behave as expected; [p91 top] Visualizations that display the analysis results are usually a sink of the data stream.} transmitted results of simulation to dashboard is interpreted as the monitored operation on the display.
In addition, it would have been obvious to one of ordinary skill in the art, before the effective filing date of the invention, to combine the teachings of PAP/PRI/OSH with EHL. One would have been motivated to do so, in order to obtain the advantage of being able to provide a human application architect and developer with a visual understanding of the simulation results – which would help with modeling and optimal allocation of resources. Both PAP/PRI/OSH and EHL are in the same art, and implemented through well-known computer technologies in the same or similar context, combining their features as outlined above using such well-known computer technologies (i.e., conventional software/hardware configurations), would be reasonable, according to one of ordinary skill in the art. Since the elements disclosed by PAP/PRI/OSH and EHL would function in the same manner in combination as they do in their separate embodiments, the results of the combination would be predictable.
Accordingly, the claimed subject matter would have been obvious over PAP in view of PRI in further view of OSH in further view of EHL.
Regarding claim 11, PAP/PRI/OSH disclose the limitation of independent claim 1. PAP/PRI/OSH does not disclose, however EHL further discloses
wherein the development environment comprises a scaled down development environment. { [vii] A requirement for the robust operation of software services are means for effective monitoring and analysis of software runtime behavior. In contrast to profiling for construction activities, monitoring of operational services should only impose a small performance overhead to its runtime performance. Even when a monitoring framework, such as Kieker, only imposes a small overhead per probe, a full instrumentation will not be acceptable for monitoring an operational, industrial-scale system.} In broadest reasonable interpretation scaled down development environment is interpreted as the only acceptable monitoring framework that is lesser than a full scale, industrial-scale system.
In addition, it would have been obvious to one of ordinary skill in the art, before the effective filing date of the invention, to combine the teachings of PAP/PRI/OSH with EHL. One would have been motivated to do so, in order to obtain the advantage of addressing even large, industrial-scale (even continental or inter-continental scales) in useful time and with incomplete knowledge, since perfect knowledge of large scale systems is unrealistic. Both PAP/PRI/OSH and EHL are in the same art, and implemented through well-known computer technologies in the same or similar context, combining their features as outlined above using such well-known computer technologies (i.e., conventional software/hardware configurations), would be reasonable, according to one of ordinary skill in the art. Since the elements disclosed by PAP/PRI/OSH and EHL would function in the same manner in combination as they do in their separate embodiments, the results of the combination would be predictable.
Claims 7, 18 are rejected under 35 U.S.C. 103 as being unpatentable over of Papaefstathiou et al US 20060025981 A1, in view of Prikryl Z US 20220335186 A1, , in further view of Oshiro, Performance Evaluation for Distributed Systems, Nippon Steel Technical Report 76, March 1998 in further view of Vandriessche et al US 20190004920 A1
Regarding claims 7, 18, PAP/PRI/OSH disclose the limitation of independent claim 1. PAP/PRI/OSH does not disclose, however VAN further discloses
wherein computer executable instructions cause the device to:
initiate the preliminary simulation in response to determining the application requires simulation. {[0032] For example, the computing device 100 may start simulation of a program in the online training mode as described above in connection with block 302. When the error model 222 reaches a certain accuracy threshold, the computing device 100 may switch simulation of the same program to the online error correction mode as described above in connection with block 318. If accuracy of the error model 222 drops below the threshold, the computing device 100 may switch back to the online training mode, and so on.}
In addition, it would have been obvious to one of ordinary skill in the art, before the effective filing date of the invention, to combine the teachings of PAP/PRI/OSH with VAN. One would have been motivated to do so, in order to obtain the advantage of alternating between simulation and execution of to address training/operational phases. Both PAP/PRI/OSH and VAN are in the same art, and implemented through well-known computer technologies in the same or similar context, combining their features as outlined above using such well-known computer technologies (i.e., conventional software/hardware configurations), would be reasonable, according to one of ordinary skill in the art. Since the elements disclosed by PAP/PRI/OSH and VAN would function in the same manner in combination as they do in their separate embodiments, the results of the combination would be predictable.
Claim 8 rejected under 35 U.S.C. 103 as being unpatentable over of Papaefstathiou et al US 20060025981 A1, hereinafter PAP in view of Prikryl Z US 20220335186 A1, hereinafter PRI in further view of Oshiro, Performance Evaluation for Distributed Systems, Nippon Steel Technical Report 76, March 1998 in further view of Vandriessche et al US 20190004920 A1, hereinafter VAN, in further view of Ehlers J Self-Adaptive Performance Monitoring for Component-Based Software Systems, Dissertation, Kiel, 2011, hereinafter EHL
Regarding claims 8, PAP/PRI//OSH/VAN disclose the limitation of independent claim 7. PAP/PRI/OSH/VAN does not explicitly disclose, however EHL further discloses
wherein computer executable instructions cause the device to determine whether the application requires simulation by: determining whether important applications are impacted by the application. {[p.37 Evaluate performance model] Performance models are solved analytical or by simulation. If even in the worst-case scenario the performance objectives are achieved (and assumed that the model has been successfully validated meanwhile, see next action), it can be concluded that most likely no performance problems will occur. Otherwise, the analysis results indicate which objectives are possibly not met, and which capacity bottlenecks are the reason for that. The envisioned architecture can be modified. This includes further capacity allocation, as well as alternatives in deployment, component interaction, or realization. Best- and worst-case estimations help to identify components that have a major impact on the system performance if their resource requirements increase.} Important interpreted as having a major impact. Thus determining whether ‘important applications are impacted by the application’ is interpreted as identified components have a major impact on system performance.
In addition, it would have been obvious to one of ordinary skill in the art, before the effective filing date of the invention, to combine the teachings of PAP/PRI/OSH/VAN with EHL. One would have been motivated to do so, in order to obtain the advantage of evaluating the impact of most important situations which may occur, to ensure that most important situations are satisfactorily served. Both PAP/PRI/OSH/VAN and EHL are in the same art, and implemented through well-known computer technologies in the same or similar context, combining their features as outlined above using such well-known computer technologies (i.e., conventional software/hardware configurations), would be reasonable, according to one of ordinary skill in the art. Since the elements disclosed by PAP/PRI/OSH/VAN and EHL would function in the same manner in combination as they do in their separate embodiments, the results of the combination would be predictable.
Prior art made of record
The prior art made of record and not relied upon is considered pertinent to applicant's disclosure.
Brebner et al Automatic Performance Modelling from Application Performance Management (APM) Data: An Experience Report, ICPE'16: ACM/SPEC International Conference on Performance Engineering March 12 - 16, 2016, Netherlands DOI: http://dx.doi.org/10.1145/2851553.2851560
“[p60 left col 1/3 We demonstrated that we can build models automatically for a variety of application types and from several APM tools.; [p60 right col, bottom: Some of these approaches will also be applicable for use in DevOps when there is a continuous stream of APM data available. Models could be built periodically, incrementally or even continuously. Full or incremental or continuous model building, or partial updates to models, could be triggered by changes to components in the monitored environment (e.g. transaction types, services or servers coming or going) and once significant differences between model predictions and APM measurements are detected. Models could be quickly rebuilt once a potential problem is detected using the most recent data only, and then used to compare with previous model results”
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.
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 ADRIAN STOICA whose telephone number is (571) 272-3428. The examiner can normally be reached Monday to Friday, 9 a.m. -5 p.m. PT.
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, Ryan Pitaro can be reached on (571) 272-4071. 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.
/A.S./Examiner, Art Unit 2188
/RYAN F PITARO/Supervisory Patent Examiner, Art Unit 2188