Browser Agent for Visual Completeness Detection

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing performance monitoring tools for web pages are inadequate in modern, dynamic, and asynchronous environments, as they fail to accurately determine when a web page is ready for user interaction due to neglecting browser-side in-place modifications and asynchronous updates.

Innovation Solution

A browser agent is injected into the web browser to monitor both static content rendering and dynamic, asynchronous updates, tracking resource loads and content modifications that affect the visible display area, determining the point when all visible content is rendered and ready for user interaction.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Measurement precision

If traditional performance monitoring tools use standardized browser notifications like the 'onload' event to determine page readiness, then the implementation is simple and compatible with existing systems, but the measurement precision is insufficient in modern dynamic and asynchronous environments where content may be modified after the onload event

Engineering Contradiction:
Improveaccuracy of perceived load timeVSAvoidcomplexity of monitoring system
Core Design Contradiction:
Measurement precisionVSDevice complexity

Solution Approach 1:

The patent segments the monitoring task into multiple specialized agents: a browser agent that monitors resource loading and DOM mutations, a performance monitor that tracks timing metrics, and a visual completeness detector that determines when visible content is ready. This segmentation allows each agent to focus on specific aspects of page rendering, improving measurement precision while distributing system complexity across modular components

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent introduces intermediary components that bridge traditional monitoring approaches with modern web dynamics. The browser agent acts as an intermediary between the browser's internal rendering processes and external performance monitoring tools, capturing DOM mutations and resource loading events that occur after traditional onload events. This intermediary layer enables accurate tracking of visual completeness without requiring fundamental changes to browser architecture

Inventive Principle:
Principle #24Intermediary (Mediator)

2Reliability

If monitoring tools only track static content rendering until the 'onload' event, then the monitoring process is fast and resource-efficient, but the reliability is insufficient because asynchronous updates and browser-side modifications may alter content after loading

Engineering Contradiction:
Improveaccuracy of page readiness detectionVSAvoidwait time for performance measurement
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The patent implements preliminary action by having the browser agent proactively monitor and record all resource loading events and DOM mutations from the moment the page begins loading, rather than waiting for traditional onload events. The agent continuously tracks the document object model (DOM) state and identifies when visible content becomes complete, providing reliable page readiness detection that accounts for asynchronous updates without requiring the user to wait for all possible content modifications

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The system implements feedback mechanisms where the browser agent continuously reports DOM mutation events and resource loading status back to the performance monitor. This real-time feedback loop allows the system to dynamically determine when visual completeness is achieved, improving reliability by accounting for post-load modifications while minimizing measured wait time by stopping monitoring once visible content is ready

Inventive Principle:
Principle #23Feedback

3Measurement precision

If the monitoring system tracks all resource loads and content modifications affecting the visible display area, then the measurement precision improves, but the device complexity and processing requirements increase significantly

Engineering Contradiction:
Improveaccuracy of visible content rendering timeVSAvoidcomplexity of monitoring architecture
Core Design Contradiction:
Measurement precisionVSDevice complexity

Solution Approach 1:

The patent applies local quality by focusing monitoring efforts specifically on content within the visible display area rather than tracking all page content uniformly. The visual completeness detector identifies which DOM elements are visible to the user and prioritizes tracking those elements' loading and modification events. This selective approach improves measurement precision for perceived load time while reducing the overall complexity by excluding invisible content from intensive monitoring

Inventive Principle:
Principle #3Local quality

Solution Approach 2:

The system implements partial action by monitoring only the subset of resources and DOM mutations that affect visible content, rather than tracking every possible page element. The browser agent selectively tracks resource loads and DOM mutations based on whether they impact the visible display area, providing sufficient precision for user-perceived performance without the excessive complexity of comprehensive full-page monitoring

Inventive Principle:
Principle #16Partial or excessive action

Data Source

PatentUS11182537B2Method and system for real-user capable detecting of the visual completeness of browser rendering processes
Publication Date: 2021.11.23 DYNATRACE LLC
  • US11182537B2 patent drawing
  • US11182537B2 patent drawing
  • US11182537B2 patent drawing

AI summary

A system and method for the real-user capable monitoring of the rendering process of dynamically updated web pages is presented. The proposed approach deploys a browser agent to content loaded and displayed by a web browser which monitors resource load activities caused by the processing of the content by the browser and in-place content modifications caused by the executions of scripts and XHR communication by the browser. Those resource load and content modification activities affecting the visible area of the browser are identified and a point in time is calculated at which the visualization of the content for the visible area is complete. Further performance monitoring data describing the performance of the rendering process depending on the percentage of finished portions of the visible area over time is calculated. In addition, data describing the rendering process in detail may be captured by the browser agent which may be used for a later playback of the rendering process.