アクセシビリティ検証ツール
としてのNVDA
オープンソースカンファレンス2014 Hiroshima
2014年9月20日 西本卓也
(NVDAユーザ会広島/NVDA日本語チーム)
1
自己紹介
• 広島 → 東京 → 京都 → 東京 → 広島
• nishimotz@gmail.com
• http://ja.nishimotz.com
• Twitter @24motz
2
NVDAの紹介
• 支援技術(スクリーンリーダー)
• NonVisual Desktop Access
– オープンソース(GPL v2)
– 非営利組織 NV Access が開発 nvaccess.org
– Windows 対応(XP から 8.1 まで)
– 2006年から開発、現在は3か月ごとのリリース
• 世界中で無料で利用可能
• 拡張性(アドオン、Python言語)
3
WebAIM 調査
• 日常的に使うスクリーンリーダー: NVDA が50%に
– http://webaim.org/projects/screenreadersurvey5/
4
アクセシビリティとは
• K. Cunningham: アクセシビリティ ハンドブック
– 福嶋雅子、株式会社トップスタジオ 訳
– オライリー・ジャパン 2013
• 背景:米国 リハ法 508条
• Webサイト
– 目が見えないことへの配慮
– スクリーンリーダーが必要な状態
– 視野、識字の障害なども
5
アクセシブルなサイト構築
• 技術:HTML
– 論理的な配置、隠しテキスト、見出し
– ナビゲーションスキップ、テーブル
– 画像、グラフや図表、フォーム、画像認証
– フレーム、インラインフレーム、Flash
– アクセスキー
• WAI-ARIA = 要素の役割を宣言
• 自動テスト、手動テスト
6
リッチなWebアプリの操作
• 入力 → NVDA → Firefox (ブラウズモード)
• 入力 → Firefox (フォーカスモード)
• Gmail, Google ドライブ, YouTube
– https://support.google.com/mail/answer/90559?hl=ja
– https://support.google.com/docs/answer/2593971?hl=ja
– https://support.google.com/youtube/answer/189278?hl=ja
• NVDA+スペース を押して フォーカスモード
– 「Enter キーを押してフォーム モードに切り替え」
7
アプリのスクリーンリーダー対応
• スクリーンリーダーごとのAPI?
– スクリーンリーダーごとに動作を切り替え?
• アプリは支援技術に非依存の API を使うべき
• ユーザーの操作が起点
– あなたは何? NVDA → Windows → アプリ
– アプリ「私はOKボタンです」
– アプリ → Windows → NVDA
– NVDA「OK ボタン」
8
オブジェクト
• 画面に表示されるあらゆる「要素」
• オブジェクト階層の把握と操作
– 階層=アプリ開発者の都合で決まる
– 開発者が見た目にこだわるうちに。。
• 本当は支援技術ではなくアプリが配慮を
– 見た目の美しさと論理的な構造
• 見た目にこだわることは否定すべきでない
– 晴眼者の定番とアクセシブルなアプリの統合
9
アクセシビリティAPI
• Windows + 支援技術(NVDA)
– Microsoft Access Accessibility (MSAA)
– UI Automation (UIA) → WPF など
– IAccessible2 : Eclipse や Firefox など
• クロスプラットフォーム
– Java Access Bridge, Adobe Flash
• その他の環境
– GNOME ATK (Orca)
– Android, iOS
10
ツールのアクセシビリティ対応
11
• http://docwiki.embarcadero.com
– FireMonkey アクセシビリティ(ユーザー補助)パッケージ
Engineering Software for Accessibility
• Microsoft Press, 2009
• https://www.microsoftpressstore.com/store/engineering-
software-for-accessibility-9780735640641
12
アプリのNVDA対応
• ツール選びが重要
• 「平等」なアクセスの提供
– work around MSAA / UIA → NVDA アドオン
• 画面を見る人向けの配慮との両立
• ユーザーは Windows の知識が必要
– 「通知のシェブロン」
• キーボードによる操作の一貫性
– 矢印キー、タブキー、F6キー
13
うるさくないNVDAの使い方
• 音声設定「音声なし」
• フォーカス ハイライト アドオン
• www.nvda.jp から 3.0-dev を
• ブラウズモード/フォーカスモードの可視化も
• ツール「スピーチビューワー」
• 特定のアプリだけ何かを有効に
– 「設定プロファイル」
14
NVDA日本語版ガイドブック
• www.nvda.jp からテキストファイルで
• Github Gist 版
– https://gist.github.com/nishimotz/bd4d5ded1afc8a75ecad/
• ブラウズモード
– レビューカーソル
• Firefox の設定と使い方
• オブジェクトナビゲーション
• アドオン、タッチ操作、設定プロファイル
15
注意・注目すべき機能や設定
• ラップトップ配列の改良
– 古い記事を読むときに注意
• キーボード設定(流し読み)
• 入力ジェスチャー
• 設定プロファイル
• オブジェクト表示、書式設定
– 無効化したほうが快適な項目も
16
NVDAのキーワード「統合」
• ひとつのバージョンのNVDA
• 標準技術のサポート
• あらゆる機能を共通の操作で
– ブラウズモード
– レビューカーソル
– オブジェクトナビゲーション
• IE も Firefox も Adobe Reader も同じ
• NVDAはアプリ固有の操作を付け加えない
17
NVDAのキーワード「平等」
• リンクの読み上げで「ページ内」を区別しない?
– 晴眼者に見えていない情報の通知は冗長
– 不平等は解消するが優遇もしない
• NVDAの機能として
– 日付と時刻の通知は必要
– タスクトレイ操作の支援は不要
• タスクトレイにキー操作で移動できる
– クリップボード自動通知は不要
• アプリのショートカットやメニューはそのままで
– NVDAの操作=ほぼWindowsとアプリの操作
18
NVDA 日本語版
• W3C WCAG 2.0 と JIS X8341-3:2010 の協調
• 2010年から
– 日本語対応版を定期的に公開
• 2013年5月の 2013.1jp から
– 日本語入力対応が安定
• 2014年9月の 2014.3jp で
– 全機能の日本語対応が完了
• 日本のユーザーへの普及を促進中
19
日本のアクセシビリティ標準
• JIS X8341
– 高齢者・障害者等配慮設計指針-情報通信にお
ける機器,ソフトウェア及びサービス-
– 第2部:情報処理装置、第3部:ウェブコンテンツ
• JIS X 8341-3:2010 = WCAG 2.0
– ウェブアクセシビリティ基盤委員会 WAIC
– http://waic.jp
• 対応する各種ツールやソリューション
20
アクセシビリティ・サポーテッド
• ある技術が
– ユーザーエージェント及び支援技術によって
– 利用者が使用可能かどうか
• ユーザーエージェント=ブラウザ
– IE, Firefox, Chrome, Safari, ネットリーダー, HPR, …
• 支援技術=スクリーンリーダー
– NVDA, PC-Talker, JAWS, VoiceOver, TalkBack…
• 開発者とユーザーが同じ体験=NVDAの意義
21
2013年 日本での調査
• PC-Talker 85.3%
• JAWS 18.3%
• NVDA 6.0%
– 視覚障害者の携帯電話・スマートフォン・
タブレット・パソコン利用状況調査2013(新潟大学)
– http://dspace.lib.niigata-u.ac.jp/dspace/handle/10191/27807
22
23
2014.3jp
8/11 - 9/12
2014.2jp
5/17 - 6/2
2014.1jp
3/20
2013.3jp
12/15
2014年9月: NVDA日本語版
• 1日平均 540人(本家版 19,500人)
– 本家版の国別ユーザー数の9位くらい?
• Windows バージョン
– Windows 7 約 65%
– Windows 8.1 約 21%
– Windows XP 約 7%
– Windows 64ビット環境 約 56%
24
NVDA本家版と日本語版の違い
• 日本語の音声エンジン
• 日本語の点訳エンジン
• 読み方モードと説明モードの切り替え
• 細かい改良や不具合修正
– 日本語入力で「かわの」から「川の」に変換
– エディット複数行の改行位置の不具合
– Excelの行(列)見出しの点字出力
– NVDA設定ダイアログの表示位置
25
スクリーンリーダーとセキュリティ
• Windows とアプリのあいだで情報を取り出す
• マルウェアとスクリーンリーダーの共通性
– こっそり悪いことをしないために
– オープンソースであることは重要
– 開発のプロセスも公開であるべき
• NVDA日本語チームの最近の方針
– 非公開の交渉や要望には応じないことを明確化
• ひとつのNVDAに向けて
26
開発者にお願いしたいこと
• NVDA ユーザーへの合理的な配慮
– 晴眼者と同じアプリの活用
• バグの報告
– NVDA のバグ、NVDA日本語版のバグ
– NVDA と組み合わせると落ちるアプリ
– 関連するオープンソースプロジェクト
• NVDA日本語チーム www.nvda.jp
27

アクセシビリティ検証ツールとしてのNVDA