Programming for Usability in Nonvisual User Interfaces
Gerhard Weber · 1998 · Proceedings of the Third International ACM Conference on Assistive Technologies (Assets '98) · doi:10.1145/274497.274507
Summary
This short paper from Harz University addresses a fundamental problem in accessible software development: sighted developers working in visual programming environments must create interfaces that are usable nonvisually, but standard software engineering methods provide no tools to bridge this gap. Weber introduces two key concepts for analysing the relationship between visual and nonvisual interfaces: static coherence (a mapping between all visual objects and their nonvisual equivalents that allows users to identify objects in both modalities) and dynamic coherence (a mapping that defines, for each step in visual interaction, corresponding nonvisual interaction steps). An accessible user interface, Weber argues, must be both statically and dynamically coherent with its nonvisual counterpart — but accessibility alone is not sufficient; the interface must also be usable, which can only be confirmed through evaluation with real users. The paper presents EVA (Evaluate Coherence), a semi-automatic tool that uses Microsoft Active Accessibility (MSAA) to build a model of an application's user interface and then applies rules to detect accessibility problems. For example, EVA checks whether every input widget has a keyboard access method and whether all widgets are reachable via keyboard navigation. It also identifies label-widget association problems — a specific issue in Windows and X Window System where no programmatic information indicates which label corresponds to which form control, forcing screen readers to rely on spatial layout assumptions.
Key findings
EVA demonstrated that accessibility APIs like MSAA, originally designed to support screen readers, could also serve as the foundation for automated accessibility evaluation tools — a significant insight. The tool could detect missing keyboard shortcuts, suggest alternatives based on the textual descriptions of widgets, and graphically visualise layout problems where labels and their corresponding controls were mismatched. Weber identified that static coherence could be checked through automated inspection, but dynamic coherence required actual nonvisual interaction testing. The paper also distinguished between two approaches to nonvisual interfaces: screen readers (which maintain one-to-one synchronisation between visual and nonvisual modalities) and nonvisual toolkits (which create more independent nonvisual interfaces with longer-term dynamic coherence). Existing accessibility guidelines for Windows and Motif were noted as incomplete — they did not cover web hyperlinks or newer UI patterns like notebook tabs with vertical text. ISO 9241 parts 10 and 11 addressed dialog structure and usability but did not address accessibility at all.
Relevance
This paper anticipated by many years the modern approach to automated accessibility testing. The concept of using accessibility APIs as a data source for evaluation tools is now the foundation of automated testing frameworks like axe-core, Accessibility Insights, and WAVE. The static/dynamic coherence framework provides a useful conceptual vocabulary: static coherence maps roughly to what modern WCAG conformance testing checks (programmatic name, role, state of controls), while dynamic coherence corresponds to the interaction testing that automated tools still struggle with and that often requires manual testing. The label-widget association problem Weber identified remains one of the most common accessibility defects found in web and desktop applications today. For developers, the paper's core message is still relevant: accessibility is a necessary but not sufficient condition for usability, and tools that visualise nonvisual interface problems for sighted developers can lower the barrier to creating accessible software.
Tags: accessibility API · screen readers · software engineering · nonvisual interface · usability · accessibility testing · MSAA
Standards referenced: ISO 9241