Trailing Tag Message System for Application Responsiveness Measurement

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current methods for measuring application responsiveness are either inaccurate and unreliable, as they indirectly gauge system performance through resource usage, or cumbersome and expensive, as they require application-specific knowledge to measure response times.

Innovation Solution

A system and method that measures the time elapsed between inserting a trailing tag message into a message queue and its processing by a default message handler, allowing for system-wide responsiveness measurement without requiring application-specific knowledge.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Measurement precision

If application-specific measurement methods are used to directly measure response time, then measurement precision is improved, but device complexity and implementation cost increase

Engineering Contradiction:
Improveresponse time measurement accuracyVSAvoidmeasurement system complexity
Core Design Contradiction:
Measurement precisionVSDevice complexity

Solution Approach 1:

The patent implements a universal message injection mechanism that works across all Windows applications without requiring application-specific modifications. The trailing tag message technique uses a standardized approach where a test message is injected into the application's message queue, and the time to process this message is measured. This universal method eliminates the need for separate measurement systems for each application, thereby reducing overall system complexity while maintaining measurement precision.

Inventive Principle:
Principle #6Universality (Multi-functionality)

Solution Approach 2:

The patent introduces an intermediary measurement mechanism that operates at the message queue level rather than requiring direct integration into application logic. By injecting trailing tag messages into the existing message queue and measuring processing time through a standardized handler, the system achieves accurate measurements without complicating the application-specific code paths.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Ease of operation

If indirect resource usage measurement is used to gauge system performance, then ease of operation is improved, but measurement precision deteriorates

Engineering Contradiction:
Improvemeasurement implementation easeVSAvoidresponsiveness measurement accuracy
Core Design Contradiction:
Ease of operationVSMeasurement precision

Solution Approach 1:

The patent replaces indirect resource-based measurement (CPU usage, memory usage) with direct timing measurement of message processing. Instead of inferring responsiveness from resource consumption metrics, the system directly measures the time elapsed between message injection and processing completion using timestamp comparison. This substitution provides actual responsiveness data rather than proxy indicators.

Inventive Principle:
Principle #28Mechanics substitution (Replace mechanical system)

3Reliability

If comprehensive system-wide measurement is implemented, then reliability is improved, but device complexity increases

Engineering Contradiction:
Improvesystem-wide measurement reliabilityVSAvoidmeasurement system complexity
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The patent segments the measurement approach into two distinct components: (1) a universal message injection mechanism that can be applied to any application, and (2) a standardized trailing tag message handling function that processes measurements consistently across all applications. This segmentation allows system-wide measurement reliability without requiring a monolithic complex measurement system, as each component remains simple and reusable.

Inventive Principle:
Principle #1Segmentation

Data Source

PatentUS8856804B2Performance indicator for measuring responsiveness of user interface applications to user input
Publication Date: 2014.10.07 MICROSOFT TECHNOLOGY LICENSING LLC
  • US8856804B2 patent drawing
  • US8856804B2 patent drawing
  • US8856804B2 patent drawing

AI summary

A method for measuring application responsiveness measures the time elapsed between receiving and processing a trailing tag message inserted into the application's message queue. The method receives a message, generates a trailing tag message associated with the message, and inserts the trailing tag message into the application's message queue. The trailing tag message includes a timestamp indicating when the trailing tag message was queued. A default message handler calculates the time elapsed between when the trailing tag message was queued and when the trailing tag message was processed. The elapsed time may then be used to calculated system responsiveness.