天の月

ソフトウェア開発をしていく上での悩み, 考えたこと, 学びを書いてきます(たまに関係ない雑記も)

freee Tech Night「モバイルアプリのアクセシビリティの問題はチームで解決!」に参加してきた

freee-tech-night.connpass.com

こちらのイベントに参加してきたので、会の様子と感想を書いていこうと思います。

会の概要

以下、イベントページから引用です。

freee株式会社のエンジニアによる、エンジニアのためのイベントです!

freeeで利用している技術、組織、エンジニアの生態の紹介を皆様に知っていただけるような内容を定期的に配信します。

freeeでの自由度と裁量権の高い独自の開発文化を支えるエンジニア達がどういう想いや熱意でfreeeを開発しているのかに興味を持っていただければ幸いです。 ちょっと短めの時間で、参加しやすい・聞きやすい内容を目指します。

普段はなかなか参加できない…という方も、ラジオを聴く感覚で、ぜひご参加ください! freeeはクラウド会計・人事労務ソフトを5年以上開発を続けており、技術的な成果や経験を広く公開させていただきます。会計や人事労務などのセキュアなドメインならではの技術的工夫や苦労を、世の中にシェアし役に立てたいという想いから定期的にイベントを開催しています。 多くの方にご参加頂き、経験やノウハウの共有や交換のネットワークを広げるきっかけになれれば幸いです。

会の様子

アクセシビリティ

本日のテーマであるアクセシビリティに関して、改めて定義説明がありました。

今回の会では、そこまで一般的な概念から逸れたものではなく、アクセスしやすさ(身体の状態に限らわずの利用しやすさ)の度合いを表したものだという話がありました。

また、アクセシビリティの上にユーザビリティという概念が乗っていくようなイメージを持つことが重要だという話がありました。(特定の人だけに対しての使いやすさをどんどん突き詰めて広げてしまう*1と、一部の身体的特徴を持つ人には利用が難しい状態になりかねない)

モバイルアプリにおけるアクセシビリティ

Webにおけるアクセシビリティは、単純にHTMLに準拠するだけでも担保されることが多い上に、Web Content Accessibility Guidelines*2の存在もあるため、こちらを活用しながらアクセシビリティを確保していったということでした。

モバイルアプリでも、基本的にはWeb Content Accessibility Guidelinesの内容を参考にしている部分はあるものの、マウスがあるかないかや画面タップをする頻度などデバイスの違いもあるため、Freeeで作っていたガイドライン(バイブス)をAndroid/iOS用に作り直したり、Android/iOS用の共通パーツを開発したりしているという話が出ていました。

また、当然ですが、使用する技術的な話でもWAI-ARIA⇔UIkit/SwiftUIなどといった違いもあるということでした。

ボイスオーバー開発の難しさ

Appleが作り上げているコンポーネントを使えば基本的に問題ないと言われているものの、コンポーネントが多重構造になったりカスタマイズしようとすると一気に開発の複雑さが上がってしまうという話が挙がっていました。

また、まだ技術が枯れていないこともあり、ブラックボックス化されている挙動があるのもなかなか大変だという話が出ていました。

今後のアクセシビリティ向上施策

  • デザインフェーズ/開発フェーズ/QAフェーズと分かれている
  • アクセシビリティ向上施策を最初に導入したのがQAフェーズ

という状態でスタートしており、手戻りが大きかったという問題が出ていたため、これをデザインフェーズから当たり前に行えるような状態を目指していきたいということでした。

モバイルアプリでアクセシビリティを考える難しさ

Webのアクセシビリティに関しては、QAチームが想像を超えるくらい引っ張ってくれた*3ということもあって、QAフェーズでの担保でもある程度なんとかなっていた部分があったということですが、モバイルアプリにおけるアクセシビリティチェックの場合は、モバイル特有のツールを使用する必要性があるため、がっつり開発やデザインをしている人でないと詳細なフィードバックが難しく、Webのときのように頼もしいQAチーム依存では開発が難しく、デザイナーやエンジニアもアクセシビリティを意識する必要性が出てきたいう話がありました。

会全体を通した感想

freeeさんのイベントということもあって、段取りや音質含め、今回も非常にクオリティが高いイベントでした。

ざっくりと説明があった後にQAをメインに深堀りしていくスタイルもよかったですし、抽象的な話ではなく具体的に取り組まれている話を聞くこともできて学びが多いイベントでした。

*1:もちろん突き詰めること自体は悪いことではない

*2:ただし内容がめちゃくちゃ読みにくいので、見たことがない人はこれを整理したFreeeアクセシビリティガイドラインを読むのがおすすめ

*3:ただアクセシビリティをチェックするのではなく、HTMLを読み込んで、具体的にどのように直したらいいのか?みたいな部分まで詳細にフィードバックをしてくれた