Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Sign up for free
Menu
Search
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
アクセシビリティ試験の"その後"を仕組み化する
Search
yuuumin
April 20, 2026
Programming
240
1
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
アクセシビリティ試験の"その後"を仕組み化する
yuuumin
April 20, 2026
Other Decks in Programming
See All in Programming
MVNOの申込からeSIM開通までをiOSアプリでつなぐ- 本人確認・MNP・通信事業者基盤をまたぐ実装
satotakeshi
0
440
[GoCon2026] When Goroutines Are Not Enough: Runtime Locality in High-Throughput Go
takehaya
6
2.3k
GraphRAGのKnowledge Graphを 直接!見る/View-GraphRAG's-KnowledgeGraph-directly!
tyumugi1113
1
340
テストを司るデーモンに会いに行く 〜隔離した仮想マシンでテストを通すまで〜
h1d3mun3
1
440
市販E-Readerを乗っ取れ 〜Embedded Swiftで電子ペーパーガジェットを制御する〜
trickart
0
190
数年滞っていたダークモード対応をおよそ2週間で完了させる
chigichan24
0
720
AIエージェント時代のコードレビューを設計する
nogu66
6
2.7k
モデルのリファクタリングが難しいと思ったら、そもそも複雑だったのはビジネス仕様だった ? / is-the-business-domain-the-real-complexity
hatsu38
0
340
Heart of Swift Concurrency
koher
0
890
AGENTS.md Is Not Enough:Build Skills, Don't Download Them
lx_t
0
120
Intent as Code
shoppingjaws
6
1k
setup-vp GitLab対応の裏側
naokihaba
0
110
Featured
See All Featured
Taking LLMs out of the black box: A practical guide to human-in-the-loop distillation
inesmontani
PRO
3
2.4k
The Hidden Cost of Media on the Web [PixelPalooza 2025]
tammyeverts
2
500
Scaling GitHub
holman
464
140k
Lessons Learnt from Crawling 1000+ Websites
charlesmeaden
PRO
1
1.6k
Understanding Cognitive Biases in Performance Measurement
bluesmoon
32
3k
A brief & incomplete history of UX Design for the World Wide Web: 1989–2019
jct
2
510
Leadership Guide Workshop - DevTernity 2021
reverentgeek
1
370
Public Speaking Without Barfing On Your Shoes - THAT 2023
reverentgeek
1
570
Lightning talk: Run Django tests with GitHub Actions
sabderemane
0
260
First, design no harm
axbom
PRO
2
1.3k
Self-Hosted WebAssembly Runtime for Runtime-Neutral Checkpoint/Restore in Edge–Cloud Continuum
chikuwait
0
810
GraphQLとの向き合い方2022年版
quramy
50
15k
Transcript
CA11Y #3 アクセシビリティ試験の "その後"を仕組み化する — Ameba ブログでの実践 AmebaLIFE 事業本部 Web
フロントエンドエンジニア 湯本航基 WCAG 2.2 Claude Code Automation
SELF INTRODUCTION 湯本 航基 ゆーみん / @yu_3in CyberAgent, Inc. AmebaLIFE
事業本部 Web フロントエンドエンジニア Ameba ブログの開発など 02 CA11Y #3
ABOUT AmebaLIFE事業本部 サイバーエージェント「 メディア&IP」 管轄の組織で、⼈々の⽇常⽣活を豊かにする複数サービスを運営 03 CA11Y #3 Ameba ブログ
ドットマネー Ameba チョイス Ameba 塾探し など Ameba ブログ — 国内最⼤級のブログプラットフォーム ドットマネー — ポイント交換プラットフォーム Ameba チョイス / Ameba 塾探し — ⽐較メディア amebalife.jp — AmebaLIFE 事業部公式サイト
ACCESSIBILITY アクセシビリティへの取り組み Ameba ではガイドライン‧デザインシステム‧試験に加え、 勉強会の開催や技術記事の発信など、多⾓的にアクセシビリティに取り組んでいます。 04 CA11Y #3 01 Ameba
Accessibility Guidelines WCAG 2.1 に基づく独⾃ガイドラインを策定。実装例‧テスト⽅法を明記し判断基準を統⼀ 02 デザインシステムSpindle 共通コンポーネントにアクセシビリティ基準を組み込み、UI 品質のばらつきを抑制 03 ナレッジ共有‧発信 勉強会の開催や技術ブログでの記事発信を通じ、アクセシビリティの知⾒を蓄積‧展開 04 アクセシビリティ試験 JIS X 8341-3:2016 準拠の試験を実施 a11y-guidelines.ameba.design 2021 アメブロで初のアクセシビリティ試験を実施 レベルA ⼀部適合を達成 ameblo.jp/accessibility 2025 AmebaLIFE で 2 回⽬の試験を実施中 WCAG 2.2 AA 準拠を⽬標に 対象範囲を拡⼤して再検証
TESTING アクセシビリティ試験の進め⽅ JIS X 8341-3:2016 (WCAG 2.2 AA )準拠を⽬標に、スプレッドシートで試験結果を管理。 Notion
でチケットを切り担当者が分担。検証にはLighthouse ‧⽬視確認‧masuP9 さんのa11y-specialist-skills を併⽤。 進め⽅ 1 スプレッドシートに達成基準 × 対象ページのチェックリストを作成 2 Notion で達成基準ごとにチケットを作成、担当者を割り当て 3 Lighthouse ‧⽬視確認‧masuP9 さんのa11y-specialist-skills を併⽤して検証 4 アクセシビリティチームで議論し、判定や対応⽅針を決定 github.com/masuP9/a11y-specialist-skills 試験記録(スプレッドシート抜粋) 達成基準 LV 適⽤ 結果 件数 担当 1.1.1 ⾮テキストコンテン ツ A 適⽤ ⾮適合 5 QCチーム 1.3.2 意味のある順序 A 適⽤ 適合 0 ⼭⽥太郎 2.1.1 キーボード A 適⽤ 適合 0 QCチーム 3.1.1 ページの⾔語 A 適⽤ 適合 0 佐藤花⼦ ※ 2 種類のシート構成: ① 達成基準ごとの総括(上表)② ページ別テスト詳細(タブ別に 1.1.1, 1.3.1 ... と管理) 05 CA11Y #3
試験で⾒つけた問題を どう直して、 どう再発を防ぐか 試験で⾒つけた問題を仕組みで直し、 ナレッジとして蓄積する──そのサイクルをAI で回す 06 CA11Y #3 再発
APPROACH 改善の仕組み — 3 つのステップ STEP 1 試験結果をIssue 化 STEP
2 AI が修正PR を作成 STEP 3 ガイドラインで再発防⽌ 07 CA11Y #3
STEP 1 試験結果を Issue に変換する スプレッドシートの試験結果をAI が読み取り、 WCAG 達成基準ごとに構造化されたIssue を⾃動⽣成する
1 スプレッドシートの試験結果をClaude Code スキルに⼊⼒ 2 /a11y-audit-to-issues スキルがIssue Markdown を⽣成 3 ⼈間が⽣成内容を確認‧修正する(Human in the Loop ) 4 対象ファイル‧⾏番号‧修正⽅針を含むIssue をGitHub に起票 WCAG 1.1.1 ⾮テキストコンテンツ 対象ファイル - ShareButton.tsx:14 - ArticlePagination.tsx:195 - ImageListNav.tsx:51 修正⽅針 aria-label で「Xにポストする」 「前の記事」「次の年」等の 代替テキストを付与する 08 CA11Y #3
STEP 1+2 /a11y-audit-to-issues 試験で⾒つかった不適合項⽬を精査し⾃動でIssue 化。 Issue 内の @claude メンションでClaude Code
が修正PR を⾃動作成する。 なぜ作ったか 試験結果の転記‧Issue 化が⼿作業だと 時間がかかり、粒度も揺れやすかった スキルがやること スプレッドシートの達成基準‧対象ページ‧ 所⾒を解析し、Issue 本⽂を⾃動⽣成 起票後のワークフロー gh issue create → @claude メンション → Claude Code が修正PR を⾃動作成 → ⼈間がレビュー‧マージ 09 CA11Y #3 ⼈間がやること ⽣成されたIssue と修正PR をレビューし、修正⽅針が妥当かを確認する ⼿が回らなかった改善フローを⾃動化し、修正着⼿までのリードタイムを短縮
STEP 3 知⾒をガイドラインに蓄積する 10 CA11Y #3 Issue やPR レビューの知⾒をガイドラインとして蓄積し、 Claude
Code が参照することで同じ指摘を繰り返さない仕組み 01 a11y 指摘を 抽出 ― ガイドラインPR ⽣成 02 ⼈間がPR 上で 採否を判断 ― ガイドラインPR ⽣成 03 ドキュメントに ⾃動反映 ― Code Review 活⽤ 04 Code Review で 再発を防ぐ ― Code Review 活⽤ ガイドラインPR ⽣成 Code Review 活⽤
STEP 3 guideline PR ガイドライン PR を ⾃動⽣成する 01 レビューのa11y
指摘を抽出 PR レビューに含まれるアクセシビリティの指摘を cron で定期収集。Issue の知⾒も対象にする。 02 ガイドライン候補をPR で起票 収集した指摘をClaude Code が分析‧構造化し、 ガイドライン候補としてまとめたPR を⾃動起票。 11 CA11Y #3
STEP 3 code review 蓄積したガイドラインで Code Review する 03 判断結果をドキュメントへ⾃動反映
承認されたガイドラインをCLAUDE.md へ反映 04 Code Review がガイドラインを参照 ガイドラインが増えるほどClaude Code のレビュー精度が向上。 同じ指摘を繰り返さず、チーム全体の品質が底上げされる。 12 CA11Y #3
READ MORE 詳しくはこちら developers.cyberagent.co.jp/blog/?p=62639 13 CA11Y #3
SUMMARY まとめ AI を仕組みに組み込み、アクセシビリティ改善を効率的かつ持続可能にする 1 アクセシビリティ試験‧改善にAI を組み込む 2 AI でガイドラインに収集し、⼀度指摘したことは再発防⽌
3 持続的にラクに運⽤できる体制づくり 14 CA11Y #3
アクセシビリティ改善を、 仕組みとして回し続ける 属⼈化しない。⽌まらない。 試験 → Issue → 修正PR → ガイドライン蓄積のサイクルが⾃動で回る
AmebaLIFE 事業本部 湯本航基 Accessibility Claude Code Guideline 15 github.com/yu-3in @yu_3in