DETAILED ACTION
Notice of Pre-AIA or AIA Status
The present application, filed on or after March 16, 2013, is being examined under the first inventor to file provisions of the AIA .
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 21-40 are rejected under 35 U.S.C. 101 because the claimed invention is directed to abstract idea without significantly more. The claim recites the abstract idea of evaluating information, including associating current and earlier application performance events, identifying an error based on the events, determining a user experience score and presenting the information relating to the score. These limitations falls within the “Metal Processes” grouping of abstract ideas involving evaluation and judgement. Accordingly, the claim recites an abstract idea.
This judicial exception is not integrated into a practical application because the additional limitations including the server, network machine generated application events, user specific data table and user interface provide a technological environment and source data for the abstract analysis, but the clam does not recite a particular improvement to the operation of the instrumented code, event generation, network communication or computer functionality. The claim uses computer components to collect, organize, analyze and display application performance information. The claimed improvements in accuracy, real time application quality assessment, reduced resource usage and power reduction relate to the quality of the information produced rather than to a improvement in computer functionality. The judicial exception is not integrated into a practical application.
The claims do not include additional elements that are sufficient to amount to significantly more than the judicial exception because server, computing devices, network, data storage and display components merely perform their ordinary computer functions for the claimed information analysis.
As to Claims 22-25, applicant fails to disclose any meaningful limitations beyond generally linking the use of the judicial exception to a particular technological environment to transform the judicial exception into patent-eligible subject matter. Accordingly, even in combination, these additional elements do not integrate the abstract idea into a practical application because they do not impose any meaningful limits on practicing the abstract idea.
As to claims 26-27, applicant discloses additional limitation for retrieving and storing data. This represents an insignificant extra-solution activity which does not provide integration of the judicial exception into practical application.
Claims 28-40 are rejected under the same reasoning as stated above. Although claims 28-34 disclose a computer readable media using generic computer components to perform the steps of the method disclosed in claims 20-27. Claims 35-40 disclose a system that performs the method steps of claims 21-27.
Allowable Subject Matter
The following is a statement of reasons for the indication of allowable subject matter:
Applicant’s independent claims disclose: receiving, by a server, via one or more network packets, a plurality of machine- generated application performance events from a plurality of computing devices based at least in part on execution of instrumented code by the plurality of computing devices, wherein execution of the instrumented code by a particular computing device of the plurality of computing devices causes the particular computing device to monitor execution of an instance of a computer application program on the computing device and generate at least one particular application performance event of the plurality of application performance events in response to the monitoring; determining, by the server, a first event type and a user identifier for the at least one particular application performance event; identifying, by the server, a particular data table corresponding to the user identifier from a plurality of data tables corresponding to a plurality of user identifiers, wherein the particular data table stores at least one earlier-in-time application performance event associated with the user identifier, wherein the at least one earlier-in-time application performance event is associated with a second event type that is different from the first event type, and the at least one earlier-in-time application performance event occurred earlier in time than the at least one particular application performance event; storing, by the server, the at least one particular application performance event in the particular data table; identifying, by the server, at least one type of error occurring in a particular version of the computer application program using the least one earlier-in-time application performance event and the at least one particular application performance event; determining in near real-time, by the server, a user experience score using the at least one type of error; and causing display, by the server, of information relating to the user experience score for the particular version of the computer application program.
Prior art fails to disclose identifying, by the server, a particular data table corresponding to the user identifier from a plurality of data tables corresponding to a plurality of user identifiers, wherein the particular data table stores at least one earlier-in-time application performance event associated with the user identifier, wherein the at least one earlier-in-time application performance event is associated with a second event type that is different from the first event type, and the at least one earlier-in-time application performance event occurred earlier in time than the at least one particular application performance event; storing, by the server, the at least one particular application performance event in the particular data table; identifying, by the server, at least one type of error occurring in a particular version of the computer application program using the least one earlier-in-time application performance event and the at least one particular application performance event; determining in near real-time, by the server, a user experience score using the at least one type of error. These limitations in combination with the claim as a whole is patentably distinct over the prior art of record.
Response to Arguments
Applicant's arguments filed 7/8/2026 have been fully considered but they are not persuasive.
Applicant states:
Claims Do Not Recite an Abstract Idea Initially, the pending claims should not be found to recite an abstract idea because they do not recite matter that falls within any of the three enumerated groupings of abstract ideas by the 2019 Revised Patent Subject Matter Eligibility Guidance: mathematical concepts, certain methods of organizing human activity, and mental processes. The Office Action takes the position that the pending claims, under their broadest reasonable interpretation, cover a mental process. See Office Action at p. 2. Applicant respectfully traverses.
More specifically, claim 21 requires a number of elements that are plainly technical in character and should not reasonably be interpreted as a mere mental process. For example, the elements of claim 21 include “receiving, by a server, via one or more network packets , a plurality of machine-generated application performance events from a plurality of computing devices based at least in part on execution of instrumented code by the plurality of computing devices , wherein execution of the instrumented code by a particular computing device of the plurality of computing devices causes the particular computing device to monitor execution of an instance of a computer application program on the computing device and generate at least one particular application performance event of the plurality of application performance events in response to the monitoring, wherein the plurality of the machine-generated application performance events comprise application launch events and application abnormal termination events; determining, by the server, a first event type and a user identifier for the at least one particular application performance event; identifying, by the server, a particular data table corresponding to the user identifier from a plurality of data tables corresponding to a plurality of user identifiers, wherein the particular data table stores at least one earlier-in-time application performance event comprising a second event type of a latest application launch event or a latest application abnormal termination event associated with the user identifier, wherein the at least one earlier-in-time application performance event is associated with the second event type that is different from the first event type, and the at least one earlier-in-time application performance event occurred earlier in time than the at least one particular application performance event; storing, by the server , the at least one particular application performance event in the particular data table; identifying, by the server, at least one type of error occurring in a particular version of the computer application program using the least one earlier-in-time application performance event and the at least one particular application performance event; determining in near real-time, by the server , a user experience score using the at least one type of error; and causing display, in a user interface tailored to application developers for real-time error diagnosis and release quality comparison, of information relating to the user experience score associated with the at least one type of error for the particular version of the computer application program and information relating to another user experience score associated with a different version of the computer application program or a different application program, providing verifiable metrics derived from events occurring in association with the computer application program to reduce computer resource inefficiencies associated with lower quality applications.” Even under their broadest reasonable interpretation, these elements and others should be found to require a particular type of query processing software, not a mere mental process.
Examiner respectfully disagrees. Claim 21 recites an abstract evaluation of information including associating current and earlier application events, identifying an error based on the events, determining a user experience score and presenting the resulting information. Mental processes concepts performed in the human mind include observation, evaluation, judgment and opinion (see MPEP § 2106.04(a)(2), subsection III). A claim may recite a mental process even though other limitations require computer implementation. Applicant’s argument that the claim requires a particular type of query processing software is not persuasive because the claim does not recite a particular query architecture or structure. The computer relate limitation provide the technological environment and data used to perform the evaluation.
Applicant states:
The proposed amendments further reinforce this conclusion. As amended, claim 21 does not merely recite generic “application performance events” or generalized data about application performance. Rather, claim 21 is directed to machine-generated application performance events generated based at least in part on execution of instrumented code, and further specifies that those machine-generated events comprise application launch events and application abnormal termination events. These events are not observations that can practically be performed in the human mind. Instead, they are generated by computing devices in response to monitoring execution of an instance of a computer application program. The claim therefore is not directed to a person mentally evaluating application quality, but instead to a particular computer-implemented monitoring architecture in which instrumented application code causes computing devices to generate specific technical event types that are transmitted to a server and correlated with earlier-in-time events of a different type.
This distinction is important because the Office Action characterizes the claims as merely “collecting, organizing, analyzing and presenting information.” However, the amended claim is more specifically directed to a technical mechanism for deriving a user experience score from a constrained set of machine-generated execution events, namely launch events and abnormal termination events, and from server-side identification of different event types associated with a user identifier. The claimed event generation, event-type determination, user-specific table selection, storage of different earlier-in-time event types, and near-real-time error identification using paired event information cannot reasonably be characterized as steps that a human could perform mentally, particularly where the events are generated by instrumented code during execution of distributed application instances on computing devices.
Examiner respectfully disagrees. Examiner agrees that machine generated and transmission of said events are not themselves a mental process. However, the claim still recites the abstract evaluation of information including associating current and earlier application events, determining an error based on those events, generating a user experience score and presenting the resulting information. A claim may recite a mental process even though other limitations require computer implementation.
The additional limitations identifying the events as application launch events and abnormal termination events further specify the content and source of information being analyzed, but do not recite a particular improvement to the operation of the instrumented code, event generation or computer functionality. Identifying user specific table and pairing event types specifies how the information is organized and evaluated rather than an improvement to the computing technology.
Applicant states:
The proposed amendments also more clearly identify the specific technical solution provided by the claims. Applicant has amended claim 21 to clarify that the plurality of machine-generated application performance events comprise application launch events and application abnormal termination events. In addition, the claimed server identifies a particular data table corresponding to a user identifier, where that table stores at least one earlier-in-time application performance event having a second event type of a latest application launch event or a latest application abnormal termination event, and then uses the earlier-in-time event and the particular event to identify a type of error occurring in a particular version of the computer application program. Thus, the claimed technique is not merely the display of an informational result. The claim recites a specific event-correlation mechanism for detecting errors based on a sequence or pairing of specific machine-generated execution events of different types.
This provides a technical solution to a technical problem arising in distributed application monitoring of how to detect application errors and determine a near-real-time user experience score using verifiable, machine-generated execution events collected from many computing devices, without relying on anecdotal user reports, manual testing, or broad collections of generic performance data. By specifying the relevant event set to application launch and abnormal termination events, and by correlating different event types in user-specific data tables, the claim provides a focused and technically constrained mechanism for identifying application errors and generating near-real-time quality metrics.
Examiner respectfully disagrees. Although the amended claim more specifically identifies the type and source of the information being analyzed, the claim still remains directed to collection, organization, correlation and evaluation of application performance information to identify an error and generate a score. The claim does not recite an improvement to how the instrumented code mointors appolication execution, how the launch or abnormal termination events are generated or tranmetted or how the server technically performs the correlation. The claim does specify the particular information selected for analysis and the result obtained from the analysis. To show that the involvement of a computer assists in improving the technology, the claims must recite the details regarding how a computer aids the method, the extent to which the computer aids the method, or the significance of a computer to the performance of the method. Merely adding generic computer components to perform the method is not sufficient. Thus, the claim must include more than mere instructions to perform the method on a generic component or machinery to qualify as an improvement to an existing technology. See MPEP § 2106.05(f).
Applicant states:
Further, Applicant submits that the pending claims should be found to reflect an improvement in computer applications and quality thereof, which supports eligibility under step 1 (the claims are directed to a bona fide technological improvement), under step 2 (these elements described above are significantly more than an abstract idea because they result in a bona fide technological improvement), and as a practical application (this technological improvement is evidence that the claims include an integrated practical application).
By way of background, the Specification describes “assessing the quality of computer applications is often difficult in a highly diverse, mobile environment where users can use many different types of devices and have many different choices of computer applications. As a result, many approaches of assessing the quality of computer applications require high costs, yet still produce only inaccurate, unreliable, repetitive, partial, anecdotal results.” Para. [0004]. As such, the technological solution relates to “comput[ing] and assess[ing] quality indicators of computer applications with a high degree of accuracy, reliability, completeness, etc., as compared with other approaches.” Para. [0017]. “Quality scores...are computed based on verifiable metrics derived from application events that occur with computer applications.... Techniques as described herein can be used to prevent errors and uncertainty caused by overactive users or dormant users from unduly influencing quality scores of computer applications or their releases.” Para. [0024]. The Specification further describes that the “quality indicators ...are based on numbers of unique users.... As a result, uncertainty, inaccuracy, unreliability, etc., in computing quality indicators over a wide range of possible data sets can be prevented or reduced as compared with other approaches.” Para. [0084].
Using the claimed technique should be found to constitute a bona fide technological improvement to of applications and quality associated therewith, and more specifically, a more efficient user interface and computing system. In this regard, claim 21 recites, among other things, “causing display, in a user interface tailored to application developers for real-time error diagnosis and release quality comparison, of information relating to the user experience score associated with the at least one type of error for the particular version of the computer application program and information relating to another user experience score associated with a different version of the computer application program or a different application program, providing verifiable metrics derived from events occurring in association with the computer application program to reduce computer resource inefficiencies associated with lower quality applications.”
Examiner respectfully disagrees. Although the specification describes advantages, the claim must reflect the asserted technological improvement. The alleged improvement remains directed to the accuracy, reliability, and completeness of the information =produced. The claim dose not recite a particular improvement to the operation of the instrumented code, event generation or computer functionality that produces the alleged benefits.
Applicant states:
Accordingly, generating and providing a user experience score associated with a type of error(s) for a particular version of a computer application program, as described in the claims, provides a technological improvement, as described in the Specification.
Further, the claims are directed to a practical application . For example, the claimed method provides a practical application by enabling real-time, automated monitoring and quantification of software application quality through the collection and analysis of machine generated performance events from computing devices. Unlike abstract ideas of mere data collection or analysis, this invention improves the technical field of software quality assurance by integrating instrumented code within applications to generate specific performance events, which are then processed by a server to identify errors, compute user experience scores, and provide information relating to user experience scores. This results in enhanced operational efficiency, reducing resource waste by focusing developer attention on critical issues affecting user satisfaction. The system’s ability to associate events with unique user identifiers, track error progression across application versions, and present quality scores in an intuitive user interface further demonstrates a tangible technological improvement beyond conventional data processing. Therefore, the claim recites a specific, practical solution to the technical problem of monitoring and improving software application reliability.
The claim also integrates any alleged abstract idea into a practical application because the claimed steps are applied to improve computer application monitoring and release-quality diagnosis in a concrete computing environment. The claim does not merely gather data and display a generic score. The claimed server receives machine-generated execution events caused by instrumented code, identifies a user-specific data table, preserves a latest earlier-in-time event of a different event type, and identifies an error in a particular application version using the relationship between the events. The resulting user interface is tailored to application developers for real-time error diagnosis and release quality comparison. Accordingly, the displayed information is not merely post-solution activity, it is the output of a claimed technical monitoring pipeline and is used in the specific technological context of diagnosing application errors and comparing release quality.
This technical focus is consistent with the Specification’s description that conventional approaches to assessing application quality in diverse mobile environments can be costly and still produce inaccurate, unreliable, repetitive, partial, or anecdotal results, while the disclosed techniques compute and assess quality indicators with improved accuracy, reliability, and completeness using verifiable application events.
Examiner respectfully disagrees. The claims recite receiving performance events, analyzing the events, identifying errors, computing a user experience score and presenting the results. These steps reflect collecting, organizing, analyzing and presenting information which the courts have held to be an abstract idea. The generic computing components is being used to perform the data analysis while the claims do not recite any specific improvement to the technology or computer functionality. Applicant’s statement of improved operational efficiency and reduced resource waste describe benefits of the information being produced rather than an improvement to the technology or computer functionality. The claim does not integrate the abstract idea into practical application because the additional computer related limitations merely provide the technological environment and data used to perform the claim analysis. The claim does not recite a particular technological mechanism to changes how the computer or application operates to achieve the asserted efficiency or resource reduction.
Applicant states:
In Core Wireless Licensing, the Federal Circuit addressed claims that were “directed to a particular manner of summarizing and presenting information in electronic devices.” Id. at 1362. More specifically, “[a]n application summary window display[ed] ‘a limited list of common functions and commonly accessed stored data which itself [could] be reached directly from the main menu listing some or all applications.’” Id. at 1359. A summary window was accessible by “first, launch[ing] a main view which shows various applications; then, launch[ing] the appropriate summary window for the application of interest.” Id. The Federal Circuit found “[t]hese limitations disclose a specific manner of displaying a limited set of information to the user, rather than using conventional user interface methods to display a generic index on a computer.” Id. at 1363. As such, the claims at issue were directed to “a specific improvement over prior systems, resulting in an improved user interface for electronic devices,” not an abstract idea. Id.
More specifically, an eligible improvement is one which “improves the efficiency of using the electronic device.” Id. In Core Wireless Licensing, the claims accomplished this improved user efficiency “by bringing together a limited list of common functions and commonly accessed stored data, which can be accessed directly from the main menu.” Id. (internal quotes omitted). The claimed technique presented the user with “the most relevant data or functions without actually opening the application up.” Id. (internal quotes omitted). This improved “[t]he speed of a user's navi gation . . . because it saves the user from navigating to the required application, opening it up, and then navigating within that application to enable the data of interest to be seen or a function of interest to be activated.” Id. (internal quotes omitted). Thus, the Federal Circuit has decreed that improving “the speed of a user’s navigation” indicates “an [eligible] improvement in the functioning of computers.” See id.
Like the claims that were found eligible in Core Wireless Licensing, Applicant’s pending claims should be found patent eligible. Independent claim 1, for example, recites “ causing display, in a user interface tailored to application developers for real-time error diagnosis and release quality comparison, of information relating to the user experience score associated with the at least one type of error for the particular version of the computer application program and information relating to another user experience score associated with a different version of the computer application program or a different application program, providing verifiable metrics derived from events occurring in association with the computer application program to reduce computer resource inefficiencies associated with lower quality applications.” More specifically, the pending claims offer various opportunities for enabling input via a user interface and efficiently providing relevant data thereby making it easier and simpler for a user to specify and view desired aspects such as user experience scores associated with at least one type of error for the particular version of the computer application program and information relating to another user experience score associated with a different version of the computer application program or a different application program. As described in the Specification, “[t]echniques as described herein can be used to compute and assess quality indicators of computer applications with a high degree of accuracy, reliability, completeness, etc., as compared with other approaches.” Application, Para. [0017].
Examiner respectfully disagrees. Applicant argues that the pending claims improve the user interface efficiency by presenting relevant information resulting in reducing user navigation, computational burden and improving efficiency. Core wireless is directed to a concrete interface structure and navigation mechanism, not merely presenting information. The claims recite displaying user experience scores and related to another user experience score, but do not recite any specific interface structure or layout that improves computer functionality. The claims merely present the results of data analysis to users, which constitutes an insignificant post solution activity. Applicant’s claim of reduced CPU, memory and power usage are benefits of presenting information and the claims do not recite the specific technical mechanism that provides these improvements. The 101 rejection is maintained.
Applicant states:
In addition to the efficiencies provided by the claimed interface, the pending claims should be found to reduce the computational burden imposed by conventional implementations. More specifically, the same features that enhance the ability to view information efficiently reduces the number of operations a computer user has to make and results in reducing the memory utilization, CPU cycles, number of operations that need to be performed by the computer, and power consumption. These benefits provide further support for finding that the claimed interface provides a bona fide technological improvement. As a result, the pending claims should be found patent eligible under Core Wireless Licensing.
Examiner respectfully disagrees. Improvements in computer efficiency may support eligibility when the claim itself reflects the technical features that produce the improvement, conclusory statement of reduced CPU, memory usage are not sufficient where the claim limitations do not recite the mechanism production the reduction.
Conclusion
The prior art made of record and not relied upon is considered pertinent to applicant's disclosure.
Page (US 9,477,573) disclose a method of monitoring the level of performance of a software application running on a network-attached computing device, comprises monitoring information exchange at least one station on the network; measuring at least two performance indicator metrics, such as delay, jitter, loss, response time, throughput, goodput, and object size; and deriving an indicator parameter from a non-linear combination of the indicator metrics. A transformation may be applied to each indicator metric to obtaining a corresponding derived value, and the derived values then additively combined, to obtain the said indicator parameter. The transformation has a first region in which the derived value depends relatively weakly on the corresponding metric, and a second region, in which the derived value depends relatively strongly on the corresponding metric. A score value may be entered by a user, indicative of the user's perception of the performance of the software application, and compared with the derived indicator parameter (Abstract).
Any inquiry concerning this communication or earlier communications from the examiner should be directed to CHARLES EHNE whose telephone number is (571)272-2471. The examiner can normally be reached 8:00-5:00 M-F.
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, Bryce Bonzo can be reached at 571-272-3655. 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 EHNE/ Primary Examiner, Art Unit 2113