The challenge
Accessibility issues in a mature application rarely come from one missing attribute. They emerge from the interaction between routing, custom controls, modal dialogs, framework components, focus order and dynamic content.
The work required improving accessibility across existing application workflows without changing the underlying business behavior.
Key problem areas
Representative issues included:
- controls that could not be reached reliably with Tab and Shift+Tab;
- icon-only actions without an accessible name;
- radio or checkbox flows that trapped keyboard navigation;
- visible labels that were not programmatically associated with inputs;
- dialogs where focus did not recover correctly after close;
- dynamic routed content where focus could remain on an inactive element;
- disabled controls whose semantic state did not match their visual state.
Engineering approach
The remediation focused on reusable patterns rather than one-off fixes.
Examples included:
- ensuring actionable icons are real focusable controls;
- pairing visible labels with form fields;
- using
aria-labeloraria-labelledbyonly where native labeling was insufficient; - synchronizing disabled and
aria-disabledstate; - restoring focus after navigation and modal transitions;
- checking the active application/router region when focus fell outside meaningful content;
- testing keyboard order against the actual rendered UI rather than DOM assumptions.
Why this matters in enterprise software
Enterprise applications often contain dense forms, lookup dialogs, tables, mobile-oriented components and conditional sections. Accessibility work has to coexist with that complexity.
The goal is not to add ARIA everywhere. It is to make interaction semantics predictable for keyboard and assistive-technology users.
What this work demonstrates
- accessibility remediation in an existing application;
- keyboard-first testing;
- focus lifecycle design;
- accessible naming strategy;
- framework-aware semantic fixes;
- translating audit findings into reusable engineering patterns.
Client-identifying details and assessor-specific material have been intentionally omitted.