Accessibility
Accessibility Conformance Report
How Holarch 1.15.1 meets the Web Content Accessibility Guidelines (WCAG) 2.1 at Level A and AA, criterion by criterion.
About this report
Product: a model-based systems engineering (MBSEModel-Based Systems Engineering Systems engineering that keeps requirements, behavior, structure and tests in one connected model instead of separate documents.) tool built on the Lifecycle Modeling Language: a database of entities and relationships, diagrams, documents, traceability matrices, whiteboards, charts, project management, simulation and AI assistance.
Scope: the web user interface in current versions of Safari, Chrome, Firefox and Edge. Exported files (Word, HTML, PDF, CSV) are covered only where noted. This website, holarch.app, is not in scope. WCAG 2.2 is not covered, and Level AAA is not evaluated.
Evaluation methods
- Code review of the application shell, shared controls, views and style sheets against WCAG 2.1 Level A and AA, with contrast computed from the light and dark theme colours.
- Automated in-page checks in Safari over about 72 screens of a demo project, in light and dark theme, for names, labels, keyboard focusability, contrast, text alternatives, headings, landmarks and duplicate ids. The most recent full automated walk covered the screens of version 1.9.1. Screens added later (multi-selection in tables, AI actions on several selected items, change requests, document markings, deliverable setup) were reviewed in the code and by keyboard tests, not by the automated walk.
- Automated keyboard tests in Safari for menus, item pickers, dialogs, narrow-window panels, documents and rich text, the database, every diagram type, whiteboards, project management views, presentations, functional analysis, the traceability matrix, charts and multi-selection.
- Scripted VoiceOver checks on macOS Safari, on versions 1.14.1 and 1.15.0: landmarks and headings, the skip link, page changes, the command palette, menus, the Create Entity dialog, delete confirmation, description editing, the database table, the traceability matrix, dashboard charts, save status and sign-in. These are scripted checks by the vendor, not a study with screen-reader users. Not heard with VoiceOver: the diagram canvas, whiteboard tools, the form-controls rotor, the notification after a delete, and the changes made in version 1.15.1 (reviewed in the code).
- Not done: NVDA, JAWS or Narrator on Windows; iOS or Android screen readers; voice control; manual testing at 320 CSS px width or 400 % zoom (narrow layouts were tested by emulating the width); a text-spacing override tool.
How to read this report
Each criterion has one of four conformance levels:
- Supports
- The functionality of the product has at least one method that meets the criterion without known defects or meets with equivalent facilitation.
- Partially Supports
- Some functionality of the product does not meet the criterion.
- Does Not Support
- The majority of product functionality does not meet the criterion.
- Not Applicable
- The criterion is not relevant to the product.
The remarks list what was checked and any known gaps. Level A: 19 criteria Support, 9 Partially Support, 2 are Not Applicable. Level AA: 11 Support, 8 Partially Support, 1 is Not Applicable. No criterion is rated Does Not Support.
Level A
| Criteria | Conformance level | Remarks and explanations |
|---|---|---|
| 1.1.1 Non-text Content | Supports |
Notes:
|
| 1.2.1 Audio-only and Video-only (Prerecorded) | Not Applicable | No audio-only or video-only content. Tutorial videos have narration and captions (see 1.2.2). |
| 1.2.2 Captions (Prerecorded) | Supports | In-app tutorial and feature videos have English caption tracks. |
| 1.2.3 Audio Description or Media Alternative (Prerecorded) | Partially Supports | Videos are narrated screen recordings with captions, and each feature has a written Help topic. There is no separate audio description, and it has not been checked that every on-screen action is spoken. |
| 1.3.1 Info and Relationships | Partially Supports | Supports:
Gap: headings skip a level on the entity page and in some dashboard content, and document sections are not exposed as headings in the document body. |
| 1.3.2 Meaningful Sequence | Supports | Reading order matches the visual order. Menus, pop-ups and dialogs take focus when they open. |
| 1.3.3 Sensory Characteristics | Supports | Instructions name controls by their label. References to colour or shape are supplementary. |
| 1.4.1 Use of Color | Partially Supports |
Gap: not every chart has been checked for a cue other than colour between series. Charts have text value summaries, and several offer a table view. |
| 1.4.2 Audio Control | Supports | No audio plays automatically. Videos start only on request and have standard controls. |
| 2.1.1 Keyboard | Partially Supports | Supports: menus (including right-click menus with ⇧F10 / Shift+F10 and submenus), item pickers, description fields, document editing, diagram selection, connection, moving and resizing, whiteboard selection, connectors and layers, Kanban, calendar, the Gantt Table View, presentations, the functional flow builder, inspector toggles, database cells and filter lists, dashboard widget position and size (through ⚙), and the diagram colour picker. Multi-selection works with ⇧↑ / Shift+↑ and ⇧↓ / Shift+↓, ⌘A / Ctrl+A and Esc, and its actions open with ⇧F10 / Shift+F10. Gaps:
Not checked with VoiceOver: diagrams and whiteboard tools (covered by keyboard tests only). |
| 2.1.2 No Keyboard Trap | Supports | Dialogs keep focus inside as intended and close with Esc. In documents, Tab moves focus and indenting uses ⌥⇧→ / Alt+Shift+→ and ⌥⇧← / Alt+Shift+←. The rich-text editor, the whiteboard (after its last element) and the database filter lists all release focus on Tab. Covered by keyboard tests. |
| 2.1.4 Character Key Shortcuts | Partially Supports | Supports: whiteboard single-letter tools, "?", "/" and type-to-edit work only while the board has focus, and ⚙ → Single-Key Shortcuts turns them off. Diagram single-key commands, such as C for Connect…, work only on a focused shape. Gap: the app-wide "?" shortcut (opens Help for the current page) works whenever focus is not in a text field and no dialog is open. It cannot be turned off or remapped. |
| 2.2.1 Timing Adjustable | Partially Supports | Supports:
Gaps:
|
| 2.2.2 Pause, Stop, Hide | Supports | No auto-updating or moving content other than loading and progress indicators. Simulator animation can be paused or run to the end. Videos have controls. A reduced-motion setting in the operating system is respected. |
| 2.3.1 Three Flashes or Below Threshold | Supports | No flashing content. |
| 2.4.1 Bypass Blocks | Supports | Skip to content is the first Tab stop and moves to the page's first heading, confirmed with VoiceOver. Landmarks are present. Each database filter list is a single Tab stop. Ease of use: without the skip link, the database table is 22 Tab stops from the top of its page, and an entity's description is 29 Tab stops from the top of the entity page. |
| 2.4.2 Page Titled | Supports | Every page sets a descriptive title, including the sign-in, two-step and password-reset screens. The new page's name is also announced after navigation, confirmed with VoiceOver. |
| 2.4.3 Focus Order | Partially Supports | Supports:
Gap: the full-size view of an entity's image does not manage focus as a dialog. Ease of use: on an entity page, the description is the 29th Tab stop. |
| 2.4.4 Link Purpose (In Context) | Supports | Link text, or link text with its row context, identifies the purpose. |
| 2.5.1 Pointer Gestures | Supports | No multipoint or path-based gestures are required. Zoom has buttons and a field. Freehand drawing is the function itself. |
| 2.5.2 Pointer Cancellation | Supports | Moves, connections and drops complete on pointer up. The one action on pointer down (the whiteboard format painter) can be undone. |
| 2.5.3 Label in Name | Supports | Accessible names contain the visible text. Verified by code review; no automated label-in-name check was run. |
| 2.5.4 Motion Actuation | Not Applicable | No motion-operated functions. |
| 3.1.1 Language of Page | Supports | Pages declare English. Word exports set en-US, and the traceability matrix HTML export sets the language. Other HTML exports (diagram, presentation, Test Center) do not yet declare a language. |
| 3.2.1 On Focus | Supports | Focus alone does not change context. |
| 3.2.2 On Input | Supports | A member's role in Sharing changes on Apply or Enter (Esc reverts). The diagram type and simulator root selects act on Enter when changed from the keyboard. |
| 3.3.1 Error Identification | Partially Supports | Supports:
Gaps:
|
| 3.3.2 Labels or Instructions | Supports | Fields in sign-in, account, Create Entity and most dialogs have visible labels, confirmed with VoiceOver. Every control flagged by the last automated check has a name, and the per-item checkboxes in the AI preview for several selected items are named after their item. Filter selects without a visible label show their purpose in the selected option. Screens added after version 1.9.1 have not been through the automated check. |
| 4.1.1 Parsing | Supports | The page structure is generated by script. No duplicate ids were found on the checked screens. |
| 4.1.2 Name, Role, Value | Partially Supports | Supports:
Gaps:
|
Level AA
| Criteria | Conformance level | Remarks and explanations |
|---|---|---|
| 1.2.4 Captions (Live) | Not Applicable | No live media. |
| 1.2.5 Audio Description (Prerecorded) | Partially Supports | See 1.2.3. Videos are narrated, but no audio-described versions exist. |
| 1.3.4 Orientation | Supports | Content is not locked to an orientation. |
| 1.3.5 Identify Input Purpose | Supports | Sign-in, registration, account and two-step fields use the correct |
| 1.4.3 Contrast (Minimum) | Partially Supports | The last automated check found no text-contrast failures in the light or dark theme. Placeholder text in fields is at least 4.8:1 in the light theme and 5.3:1 in the dark theme. Links in notifications are bright and bold. Gaps:
|
| 1.4.4 Resize Text | Partially Supports | Text scales with browser zoom. At widths of 760 CSS px or less, which includes 200 % zoom on displays narrower than about 1520 px, side panels become drawers opened from an edge button, and the top bar wraps. At 900 CSS px or less, the inspector opens over the content. These layouts were tested by emulating the width. Real 200 % zoom has not been tested. |
| 1.4.5 Images of Text | Supports | No images of text. Diagram labels are live text. |
| 1.4.10 Reflow | Partially Supports | The shell, side panels, diagram palette and inspector adapt to narrow widths as drawers or overlays. Diagram canvases, the traceability matrix and data tables are two-dimensional content and may scroll in both directions. Not tested at a real 320 CSS px width or 400 % zoom; the assessment comes from the style sheets and emulated widths. It is not established that every view and dialog reflows without loss, including the wide AI preview dialogs. |
| 1.4.11 Non-text Contrast | Partially Supports |
Gaps:
|
| 1.4.12 Text Spacing | Partially Supports | Text containers mostly reflow. Some labels (diagram descriptions, item titles) are clamped to a number of lines and are truncated under increased spacing. Not tested with a text-spacing override. |
| 1.4.13 Content on Hover or Focus | Supports | Tooltips appear on focus as well as hover and close with Esc. Pop-ups can be pointed at without closing, and Esc closes only the pop-up. |
| 2.4.5 Multiple Ways | Supports | Navigation rail, breadcrumbs, the ⌘K / Ctrl+K command palette (pages, items and actions), search, and links between items. |
| 2.4.6 Headings and Labels | Partially Supports | Headings and labels are descriptive where present. Database rows, filter lists, the traceability matrix grid and the AI preview checkboxes have short, descriptive names. Gap: headings skip a level on the entity page and in some dashboard content. |
| 2.4.7 Focus Visible | Supports | A 2 px focus ring (9.8:1 or better) is used across the app, including document editors and the whiteboard. Diagram shapes have a two-tone focus ring. The inspector resizer shows a faint bar; its contrast is reported under 1.4.11. Checked from the style sheets, not at runtime (see 1.4.11). |
| 3.1.2 Language of Parts | Supports | Content is in one language. User-entered content is not tagged. |
| 3.2.3 Consistent Navigation | Supports | Shell, navigation rail, top bar and inspector are consistent across pages. |
| 3.2.4 Consistent Identification | Supports | Shared components (toolbar buttons, menus, dialogs) are named consistently. |
| 3.3.3 Error Suggestion | Partially Supports | Error messages state the problem and the fix, such as "Enter a name." or "Enter a whole number of months from 1 to 60.", and appear at the field in the dialogs listed under 3.3.1. Gap: in the forms listed as gaps under 3.3.1, the suggestion is shown near the form or in a notification and is not tied to the field. |
| 3.3.4 Error Prevention (Legal, Financial, Data) | Supports | Destructive actions ask for confirmation, state the consequence and open on Cancel. Edits can be undone. Deleted items and projects go to Trash and can be restored. AI changes are previewed and applied as one undo step. Security changes require signing in again. |
| 4.1.3 Status Messages | Supports |
Note: the notification after a delete and the announcements added in version 1.15.1 use the same live regions but were not checked with VoiceOver. |
An accessibility roadmap is available on request.
Legal disclaimer
This report is a self-assessment by the vendor and has not been independently reviewed. It describes Holarch 1.15.1 as evaluated with the methods above; later versions can differ. It is provided for information and is not a warranty.
Contact
To report an accessibility problem, ask about this report or request the roadmap, email [email protected]. Say what you were doing and which browser and assistive technology you use. More about accessibility in Holarch: Accessibility.