Skip to content
easeweb

Who does what, and when, so accessibility isn't left to the end

How to plan accessibility into a web project, build it into the design system's components first, test it in every cycle, share the work across roles from management to content authors, and keep it after launch.

In short: Plan it: a target level in the definition of done, a named owner, a budget and training. Create it: accessible components first, so every page starts from them. Test it in every sprint, by automated checks in CI and by hand, not once before launch. Then keep checking new content and releases after launch.

01

When you need this

A charity is rebuilding its website with an agency: donations, volunteer sign-up and event pages, in 6 two-week sprints, with launch in 12 weeks. The contract says WCAG 2.2 Level AA. On the last rebuild, the first accessibility audit came 2 weeks before launch. It found 60 issues, most of them in the shared header, form fields and dialogs, and launch slipped by a month while the agency reworked code it had finished in sprint 2.

This time the charity's digital lead wants accessibility in the plan from the first day, with each person on both teams knowing what is theirs.

02

Plan: the target, the owner and the definition of done

The W3C's planning guide sets out the decisions to make first:

  • The target. At a minimum, the policy states "what web accessibility standard you aim to conform to and by when". Write it into the contract and into the definition of done. The law or a contract may set the level; what it takes for a page to conform to WCAG covers what a level requires.
  • The owner. "Responsibility for delivering accessibility needs to be assigned to specific individuals and incorporated into their job description", which gives them the time and the training. One named person decides when the target and the schedule clash.
  • The budget. Reviews, training, audits and testing with users, each with time in the schedule. A budget with no time to fix what the audits find buys a report, not a site.
  • The training. For each role what it needs: the W3C lists accessible visual design for designers, accessible coding for developers and testers, and writing accessible content for content authors.
  • What you buy. Components, widgets and platforms bought in are part of the site. Ask for their accessibility before signing, as reading a vendor's VPAT before you buy, and what to ask next explains.

The definition of done turns the target into checks a story has to pass. A short one, the same for every story:

  • It is built from design-system components, or adds new ones with their own accessibility tests.
  • The automated checks in CI report no new failures.
  • Every control works with a keyboard alone, in an order that matches the screen, with a visible focus indicator.
  • The story's task works with the screen reader and browser the team agreed on.
  • It works at 200% zoom and at 320 CSS pixels wide.
  • Its headings, link text, labels and text alternatives have been reviewed.

03

Create: components first, then pages

Most of what an audit finds on a finished site is the same few components failing on every page. So build and test the shared parts before the pages that use them. The W3C's implementation guide advises prioritising "the development of accessible templates and components to support the creating of accessible content", and its planning guide makes maintaining "code libraries with accessible components" a development responsibility.

Designers hand over more than pictures: the W3C maturity model's proof points include design deliverables that carry accessibility information and annotations, such as the heading structure, the focus order, each control's name and its states. Content authors write the headings, link text and text alternatives the components can't.

04

Test: in every sprint, not at the end

The W3C's advice is to "Find and fix issues early in the process to reduce risk and cost", and to fold the checks into the testing the team already does rather than run them separately. Where the checks go depends on how the project runs:

Way of working When accessibility is checked What a late find costs
Waterfall Requirements and designs reviewed against the target, then one test phase after the build A problem in a shared component surfaces when every page uses it; the fix reopens design, code and test
Agile In each story's definition of done, every sprint, and in a fuller review at milestones A problem surfaces in the sprint that made it, while the code is fresh
Continuous delivery Automated checks on every change, and a documented cadence of manual tests between releases A change ships with the checks it passed, and the manual cadence catches the rest

In each of them, 3 kinds of test do different jobs:

  • Automated checks in CI, on every pull request. They catch missing names, invalid ARIA, contrast in code and similar failures cheaply and every time, and they can't judge most of the rest, as what automated checks miss explains.
  • Manual tests, every sprint, on the new components and on the key tasks: keyboard alone, a screen reader, zoom and reflow. This is where focus order, announcements and whether a task can be finished get checked.
  • Regression tests, for what already works. A component's tests check its name, role, states and keys after every change; before each release, the key tasks are run again by hand. A release gate keeps a known blocker from shipping because nobody stopped it.

Testing with disabled people finds what none of these do, as what testing with disabled people finds that an audit doesn't explains, and is worth a place in the plan from the first prototype.

05

Who does what

The W3C's roles mapping names the roles involved in accessibility; the planning guide adds purchasing and acceptance testing. In a project, each owns a part:

Role Owns
Management and governance The policy, the target and its date, the budget, and a named owner
Product owner Acceptance criteria, the priority of accessibility bugs, and the definition of done, agreed with the whole team
Project manager Estimates and a schedule that include accessibility work and testing
User experience researcher Disabled participants in research and testing
User experience designer Structure, focus order and keyboard interaction, annotated for developers
Visual designer Contrast, focus indicators, and states that don't rely on colour alone
Content author Headings, link text, text alternatives, captions and plain wording
Front-end developer Semantic HTML, accessible components, names and states
Back-end developer Error messages, time limits and the data that shapes what a page can say
Quality assurance Automated and manual tests, regression tests, and tracking accessibility bugs
Purchasing and contracts Accessibility requirements in contracts for anything bought in
Support A way for people to report barriers, and a route to the team that fixes them

06

After launch: new content and regressions

Launch is when the site starts changing without the project team. "Changing content can introduce accessibility issues", and the W3C's advice for sustaining the work is:

  • Check at publishing. "Include accessibility checks within the publishing process to help reduce the risk of issues occurring", in the CMS and in the author's own review.
  • Review regularly. "As your website content changes, ensure that regular accessibility reviews are performed", and ask why each issue happened: training, a CMS change, or an unclear process.
  • Retest releases. Keep the CI checks and the regression tests running on every release; the maturity model's highest level includes maintenance releases that are re-inspected for accessibility.
  • Listen. "Invite user feedback", train first-line support to handle it, and tell the person who raised an issue when a fix is expected. The accessibility statement is where people find that route, as in accessibility statements that are missing or say nothing.

07

Worked example

The charity's 12 weeks, planned this way:

When What happens Who
Sprint 0 WCAG 2.2 AA written into the contract and the definition of done; the digital lead named as owner; half a day of training for each role; external reviews booked for sprints 3 and 6 Management, product owner, project manager
Sprints 1 and 2 Button, field, dialog, menu and focus token built and tested with a keyboard and a screen reader before any page uses them; designs annotated Designers, front-end developers, quality assurance
Sprints 3 to 5 Pages built from the components; CI checks on every pull request; each story's task tested by hand; the external review in sprint 3 covers donation and sign-up Developers, content authors, quality assurance
Sprint 6 Full review of the key tasks; regression run; release gate: no open blockers Quality assurance, external reviewer, product owner
After launch Publishing check in the CMS; quarterly review of the 10 busiest pages; feedback by email from the accessibility statement Content authors, support, the owner

The result: the sprint 3 review finds a dialog that doesn't return focus, while 1 page uses it; it is fixed in a day. The launch review finds 9 issues, none of them blockers and none in the shared components, and the site launches on its date. In the first quarter after launch, the publishing check catches 14 images uploaded without text alternatives before they go live.

08

Common mistakes

  • Testing once, before launch. Every problem then surfaces at the most expensive moment. Put the checks in the definition of done and test every sprint, as above.
  • Leaving it to the developers. Contrast, headings, link text and captions are decided by designers and content authors. Give each role its part, as in the table above.
  • Building pages before components. A page-level fix leaves the component broken for the next page. Fix and test the shared part first, as form fields with missing or mismatched labels does with its field component.
  • Treating a green CI run as done. Automated checks pass pages that a keyboard or screen reader user can't finish. Keep the manual tests in the definition of done; what automated checks miss shows why.
  • Stopping at launch. New content and later releases bring new failures. Keep the publishing checks, the regression tests and a feedback route running.
  • Fixing the audit, not the process. After an audit, fix the findings in order, as which findings to fix first, and when to rebuild instead explains, and ask why each happened, so the next project doesn't repeat it.

09

What the standard says

No accessibility standard requires a particular project process. WCAG, EN 301 549, Section 508 and JIS X 8341-3 set what the result must meet; how a team gets there is advice.

  • W3C WAI, Planning and Managing Web Accessibility (advice): the Plan, Implement and Sustain activities quoted above: a policy stating the standard and the date, named responsibilities, a secured budget, training by role, evaluation "throughout the design and development process", and monitoring after launch.
  • W3C Accessibility Roles and Responsibilities Mapping (advice): the roles the table draws on, from business analysis and content authoring to governance. It is guidance for dividing the work, not a requirement.
  • W3C Accessibility Maturity Model (W3C Group Note, advice): the ICT Development Lifecycle dimension says accessibility "should be considered throughout the entire ICT development lifecycle: from idea conception to design, development, testing", and its proof points include "accessibility is identified as a product release gate" and "documented testing steps and cadence for agile delivery of changes without a full release cycle". At its Optimize level, automated accessibility testing is part of the CI/CD pipelines and maintenance releases are re-inspected.
  • Japan (advice): the Ministry of Internal Affairs and Communications' guidelines for public websites (2024 edition) set out the same cycle for public bodies: yearly work (updating the guidelines, training, testing, user evaluation, improvement), day-to-day work (following the guidelines when a page is made, checking it before it is published, and collecting users' comments), and, for a site built by a contractor, checking at several stages from the design to just before launch, a JIS X 8341-3:2016 test, and acceptance only after its result has been checked.

10

Limits

This page divides the work; it doesn't define the target level, which the law, the contract or the organisation's policy sets, or decide whether the finished site conforms, which takes a test as in testing a whole site against WCAG, and standing behind the result. The roles are a starting point: a small team may have one person in 4 of them, and what matters is that each part has someone. What the CI checks can and can't find is on what automated checks miss.

11

Terms

definition of done
The checks every piece of work has to pass before the team calls it finished, written down and the same for every story.
design system
The shared components, tokens and guidance a product's pages are built from, so a fix made in it reaches every page.
regression test
A test run again after each change, to catch a fixed or working feature that a later change broke.
release gate
A check a release must pass before it ships, so a known blocker can't go live by default.

12

Sources and guides

Guides that show it

This page explains a practice, with recreated examples. It is not legal advice, and it is not a finding about a named client.