Client-Side API Classification for User Experience Analysis
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Current client-side monitoring tools for analyzing user experience are time-consuming and involve complex processing, as they collect and analyze all data related to an application, making it difficult to determine which data affects user experience and which parts of the application are associated with it.
Innovation Solution
Instrumenting the application on a client device to monitor a set of threads separate from the UI thread, classify APIs based on their relation to user actions, and tag them accordingly, then send this information to a server for further analysis, allowing for more efficient data processing and identification of APIs affecting user experience.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Measurement precision
If all application data is collected and analyzed on the server, then comprehensive user experience analysis is achieved, but processing time and system complexity increase significantly
Solution Approach 1:
The patent segments the data processing task by introducing API classifiers that run on the client device to pre-categorize API calls before transmission. This divides the原本 monolithic server-side analysis into smaller, manageable segments: client-side classification and server-side aggregated analysis, reducing overall system complexity while maintaining comprehensive monitoring capabilities.
Solution Approach 2:
The patent implements preliminary classification of APIs on the client device before data is sent to the server. By pre-tagging API calls with their functional categories and user experience impact levels, the system performs necessary data processing in advance, reducing the burden on server-side analysis and simplifying the overall processing pipeline.
2Loss of information
If all application data is collected and analyzed on the server, then complete data coverage is achieved, but analysis time increases
Solution Approach 1:
The patent segments data transmission by sending only classified and prioritized API information to the server, rather than raw complete data. This segmentation allows comprehensive data coverage to be maintained through selective sampling while significantly reducing the volume of data requiring server-side analysis time.
Solution Approach 2:
The system performs preliminary filtering and classification of API data on the client device, identifying and tagging only the most relevant API calls related to user experience before transmission. This preliminary action ensures complete coverage of important events while minimizing unnecessary data transfer and analysis time.
3Measurement precision
If detailed API monitoring is implemented, then precise user experience identification is achieved, but data processing complexity increases
Solution Approach 1:
The patent implements self-service through automated API classifiers that autonomously categorize API calls based on their functional characteristics and user experience impact. These classifiers operate independently on the client device, performing detailed monitoring and precise identification without requiring complex centralized processing, thereby maintaining accuracy while reducing overall system complexity.
4Loss of information
If comprehensive data collection is performed, then complete analysis coverage is achieved, but processing efficiency decreases
Solution Approach 1:
The patent extracts and isolates only the essential API information related to user experience from the complete application data stream. By taking out and focusing on specific high-impact API calls rather than processing all data uniformly, the system maintains complete analysis coverage of relevant events while dramatically improving processing efficiency through selective data handling.
Data Source
AI summary
Example embodiments relate to classifying application protocol interfaces (APIs) in terms of their relation to user experience. Example embodiments may determine that a user action occurred and monitor a first thread separate from a user interface (UI) thread of the computing device. The first thread may process a first API in response to the occurrence of the user action. A determination may be made as to whether the first API being processed on the first thread is related to the user action. Responsive to the first API being related to the user action, a determination may be made as to whether the first API causes the first thread to update the UI thread of the computing device. Responsive to the UI thread being updated, the first API may be tagged as affecting user experience.


