Keyboard Accessibility Failure Detection via Navigation Graph Comparison

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current methods for detecting keyboard accessibility failures (KAFs) in web applications are inadequate, as they rely on manual efforts, are time-consuming, costly, and prone to errors, and existing tools fail to accurately identify and localize issues due to the complexity of modern web UIs and dynamic behaviors.

Innovation Solution

A system and method that combines static and dynamic analysis models to automatically detect and localize KAFs by building navigational models representing keyboard-based navigation flows, allowing for precise identification of inaccessible functionalities and keyboard traps through graph-based properties, outperforming state-of-the-art approaches.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If manual testing approaches are used to identify keyboard accessibility failures, then developers can detect accessibility issues, but the process becomes time-consuming, costly, and error-prone

Engineering Contradiction:
Improveaccuracy of KAF detectionVSAvoidtesting time
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The system performs self-testing by automatically navigating web applications using keyboard interactions and detecting accessibility failures without requiring manual developer intervention. The automated testing engine executes keyboard navigation sequences, captures UI states, and identifies KAFs independently, eliminating the need for human testers to manually inspect each accessibility issue.

Inventive Principle:
Principle #25Self-service

Solution Approach 2:

The patent replaces manual mechanical testing processes with an automated computational system. Instead of developers manually navigating and inspecting UI elements, the system uses automated keyboard simulation, DOM parsing, and machine learning models to detect accessibility failures, substituting human effort with algorithmic processing.

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

2Device complexity

If static analysis on HTML source code is performed, then the analysis process is simple, but it fails to capture the dynamic DOM and keyboard interaction behaviors

Engineering Contradiction:
Improveanalysis complexityVSAvoiddetection accuracy
Core Design Contradiction:
Device complexityVSMeasurement precision

Solution Approach 1:

The system transitions from static HTML analysis to dynamic DOM analysis by actually rendering the web application and capturing the live Document Object Model during keyboard navigation. This allows the system to detect accessibility issues that only manifest during runtime, such as dynamically created elements and JavaScript-controlled UI behaviors that are invisible in static source code.

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The system performs preliminary rendering of the web application in a headless browser environment before conducting accessibility analysis. This preliminary action ensures that all dynamic content is loaded and the DOM is fully constructed, providing an accurate representation of the actual user interface that keyboard users will encounter.

Inventive Principle:
Principle #10Preliminary action

3Reliability

If scenario-based testing is used to check keyboard accessibility, then specific accessibility requirements can be verified, but developers must manually generate test cases for each page

Engineering Contradiction:
Improveaccessibility verification accuracyVSAvoidtesting efficiency
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The system automatically generates and executes test cases without requiring manual developer input. The automated testing engine derives navigation sequences from the application's UI structure and keyboard interaction patterns, creating comprehensive test scenarios that cover various accessibility requirements without human intervention.

Inventive Principle:
Principle #25Self-service

Solution Approach 2:

The system implements a universal testing framework that can automatically adapt to different web application types and accessibility requirements. The same core engine handles diverse scenarios including form navigation, menu interaction, modal dialogs, and custom widgets, eliminating the need for separate manual test case generation for each page or application type.

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

4Measurement precision

If visual inspection methods are employed for accessibility testing, then developers can identify UI issues, but the process requires manual effort and is prone to human error

Engineering Contradiction:
Improveissue identification accuracyVSAvoidtesting effort
Core Design Contradiction:
Measurement precisionVSEase of operation

Solution Approach 1:

The system replaces manual visual inspection with automated computational analysis. The testing engine programmatically navigates the UI using keyboard inputs, captures screen states and DOM structures, and automatically compares actual behavior against accessibility requirements, eliminating human visual inspection while improving consistency and accuracy.

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

Solution Approach 2:

The system implements automated feedback loops where each keyboard interaction is monitored and the resulting UI state is immediately analyzed for accessibility compliance. This real-time feedback mechanism continuously validates accessibility requirements during navigation, providing immediate detection of KAFs without requiring separate manual review stages.

Inventive Principle:
Principle #23Feedback

Data Source

PatentUS11886648B2Detecting keyboard accessibility issues in web applications
Publication Date: 2024.01.30 UNIV OF SOUTHERN CALIFORNIA
  • US11886648B2 patent drawing
  • US11886648B2 patent drawing
  • US11886648B2 patent drawing

AI summary

A method for detecting and/or localizing keyboard accessibility failures (KAFs) in a web page is disclosed. A web page is rendered in a browser on a display portion of a computing system. A keyboard navigation flow graph based on based on keyboard-based navigation of a user with the web page. A second point-click navigation flow graph based on mouse-based navigation of the user with the web page. One or more KAFs are determined based on a comparison of the first graphical model with the second graphical model.