한국의 개발자들을 위한 Google for Developers 국문 블로그입니다.
누구나 사용할 수 있는 앱 만들기: 포용성과 접근성이 중요한 이유 알아보기
2020년 6월 24일 수요일
영국 국영방송사 BBC가 알려주는 ‘앱, 게임 접근성 향상’을 위한 8가지 팁
작성자:
Ceri Lindsay & Rosalind Whittam
원문은
여기서
확인 가능하며,
블로그 번역리뷰는 양찬석(Google)님이 참여해 주셨습니다.
BBC Sounds 모바일의 선임 Android 개발자 로잘린드 휘텀과 BBC iPlayer의 Android 소프트웨어 엔지니어
Ceri Lindsay
가 작성한 게시물입니다.
Rosalind Whittam
과
Ceri Lindsay
가 진행하는 Google의
앱, 게임 및 통계 팟캐스트
에서 접근성에 관해 더 자세히 알아보세요.
영국의
성인 인구 중 16%
가 본인에게 장애가 있다고 생각합니다. 팔이 부러졌을 때와 같이 일시적인 장애나 무거운 상자를 나르면서 스마트폰의 음성 지원 기능을 사용하는 경우처럼 상황에 따른 장애까지 고려하면 이 비율은 30%를 넘는 수준까지 증가합니다. BBC R&D는
한 연구
에서 자막과 함께 TV를 시청하는 시청자 중 90%가 소리를 켠 상태로 시청한다는 사실을 확인했습니다. 이러한 시청자는 소리와 입술 읽기를 자막과 조합하여 프로그램의 내용을 따라갑니다.
접근성은 최대한 많은 상황에서 최대한 많은 사람이 앱을 사용할 수 있게 만드는 것과 관련이 있습니다.
공공 서비스로서 BBC가 하는
모든 일의 중심에는 시청자가 있습니다
. BBC Design + Engineering에서는 시청자와 시청자의 요구를 파악하는 것으로 모든 프로젝트를 시작합니다. 이렇게 획득한 정보는 개발하는 앱에 반영되어 제품의 접근성과 포용성을 높이는 데 활용됩니다.
출처: BBC
이와 같은 노력이 새로운 것은 아닙니다. BBC는 접근성을 담당하는 그룹을 15년 전부터 운영해 왔으며 BBC의
모바일 접근성 가이드라인
은 10년 전에 처음으로 공개되어 업계 표준으로 자리 잡았습니다.
기술의 발전은 영구적 또는 일시적 장애를 가진 사람들을 도울 새롭고 흥미로운 기회를 제공합니다. 예를 들어 Google 어시스턴트의 발전은 음성 인터페이스 기술로 할 수 있는 일들을 보여주며, 실시간 자막과 같은 새로운 기술은 자막에 의존하는 사용자도 이용할 수 있도록 콘텐츠의 접근성을 높여 줍니다. 조직에서도 이러한 새로운 기술과의 통합을 적극적으로 활용할 수 있습니다.
아래에서는 접근성을 높이고 포용성 있는 앱을 만드는 방법과 관련하여 BBC에서 학습한 내용을 알려드립니다.
1. 접근성을 최우선 순위로 고려
앱의 최우선순위를 정의할 때 접근성이 그중 하나가 되어야 합니다.
우선순위를 문서로 명시해 놓으면 팀에서 가장 중요한 작업에 관한 공감대를 형성하고, 이 작업에 시간과 리소스가 할당되도록 할 수 있습니다.
Sounds 모바일팀에서는 이를 '기초 영역'이라고 부르며 접근성도 여기에 포함되어 있습니다. 팀에서는 단순한 신호등 체계를 사용하여 이러한 영역을 정기적으로 평가하는데, 이 방식은 목표를 향한 진행 상황을 시각적으로 나타내는 데 효과적입니다. 빨간색, 노란색, 녹색 상태를 정의하는 계량화된 기준을 마련하면 각 목표에 대한 제품의 현재 상태를 이해하고 상태를 개선하기 위해 필요한 작업이 무엇인지 알아낼 수 있습니다.
출처: BBC
또한 접근성을 목표로 정의하면 팀원들이 접근성 영역에서 개인의 역량을 키우도록 하는 데도 도움이 됩니다. 접근성 높은 제품을 제작하는 능력은 전문 분야로 여겨질 것이 아니라 소프트웨어 전문가의 가장 기본적인 덕목이 되어야 합니다.
2. '접근성 부채' 추적
기술적 부채(개발자가 기능을 빠르고 효율적으로 구현하는 것을 방해하는 코드 문제) 추적의 개념은 소프트웨어 업계에서 친숙한 개념입니다.
BBC에서는 이 기법을 '접근성 부채' 추적으로 확장했습니다. 쉽게 말하면 사용자 기능의 접근성 공백을 정기적으로 평가하는 것입니다. 즉시 해결할 수 없는 문제 또는 기술적 퇴보가 있으면 접근성 부채가 늘어나게 됩니다. 예를 들면 특정 스크린 리더에서 콘텐츠를 잘못 읽거나 보기에서 텍스트 크기를 변경하려는 사용자의 명령에 반응하지 않는 경우가 있습니다. 팀에서는 접근성 부채를 적극적으로 추적하여 부채를 최소한으로 유지하고 정기적으로 문제를 해결하고 있습니다.
3. 머티리얼 디자인 가이드라인 준수
Android용 콘텐츠를 제작할 때는 항상
머티리얼 디자인 가이드라인
을 준수합니다. 이 가이드라인은 접근성에 관한 많은 정보와 안내가 포함되어 있는 매우 유용한 리소스입니다.
접근성 디자인은 계속해서 새로운 표준과 기술이 생겨나고 있는 빠르게 발전 중인 분야입니다. 그렇기 때문에 항상 최신 정보를 따라가는 것이 중요합니다. BBC
모바일 접근성 가이드라인
은 머티리얼 디자인 및 최신
WCAG
모바일 표준에 따라 정기적으로 업데이트됩니다. 이 가이드는 Android, iOS 및 모바일 웹에서의 접근성 관련 기준을 제시하는 예입니다.
접근성은 디자이너와 개발자만의 책임이 아니라 모든 팀원이 만들어갈 수 있는 영역입니다. BBC 가이드는 부문별로 분류되며 디자이너, 제품 소유자, 개발자, 테스터별로 구분된 섹션이 있습니다. 머티리얼 디자인 가이드라인과 함께 이 가이드를 참조하여 제품의 접근성을 높이기 위해 팀 전체에서 할 수 있는 일을 더 포괄적으로 생각해 볼 수 있습니다.
4. 접근성 챔피언
BBC에서는 모든 제품 개발팀 내에 접근성 전문가를 배치하는
접근성 챔피언 네트워크
를 운영하고 있습니다. 적절한 리소스와 지원을 통해 접근성 챔피언은 폭넓은 시청자의 의견을 대변하고 다양한 요구를 충족할 수 있습니다.
접근성 챔피언이 하는 또 다른 역할은 디자이너부터 개발자, 테스터에 이르기까지 참여하는 모든 팀원이 모든 작업에서 접근성에 대해 끊임없이 생각하도록 돕는 것입니다. 모두가 더 많이 참여할수록 최종 사용자에게 더 나은 환경을 제공할 수 있습니다.
BBC에서 접근성 챔피언 네트워크는 성공적이었습니다. 이 네트워크를 왜 운영하는지 묻던 제품팀이 이제는 어떻게 하면 더 뛰어나고 접근성이 높은 앱을 만드는 데 도움이 될 수 있는지를 묻게 되었습니다.
5. 사용자 의견 수렴
BBC는 접근성에 관한 사용자의 의견을 매우 중요하게 생각합니다. Play 스토어 리뷰와 소셜 미디어 채널을 통해 수집하는 수동적인 의견뿐 아니라 사용자 연구 세션을 진행하여 적극적으로 의견을 구하고 있습니다.
팀에서는 청각, 시각, 인지, 운동기능 장애가 있는 사용자를 포함하여 광범위한 사용자를 대표하는 패널을 선정하기 위해 노력합니다.
패널들은 사용성에 관한 토론과 실습 세션에 모두 참여합니다. 실습 세션은 사용자가 앱과 상호작용하는 방식을 개발자가 직접 확인할 수 있다는 점에서 특히 유용합니다.
6. Google 도구 활용
Google에서는 Android 스튜디오와 Google Play에서 앱의 접근성을 개선하는 데 도움을 주는 여러
도구
를 제공합니다. 개발자는 개발 수명 주기의 여러 지점에 접근성 테스트를 통합할 수 있습니다.
자동화된 테스트에서는
AccessibilityChecks API
와 Espresso를 통합하여 피드백을 조기에 얻을 수 있습니다. 수동 테스트의 경우
접근성 검사기 앱
을 사용하세요. 이 앱은 AccessibilityChecks API로 개발되었으며 뛰어난 시각적 피드백을 제공합니다. 앱 게시 전 최종 점검 단계로 Google Play의
사전 출시 보고서
를 실행해 보는 것이 좋습니다.
이 보고서는 터치 대상 크기, 부족한 색상 대비, 콘텐츠 라벨 및 기타 일반적인 접근성 문제를 보고합니다.
7. 보편적인 해결책 찾기
서로 다른 잠재고객 집단을 위한 맞춤 환경을 제작하고 싶을 수 있지만, 이는 실제로는 비경제적인 방식입니다.
사용자마다 필요로 하는 접근성 기능이 다르므로 '획일적인' 해결책이 있을 수 없습니다.
유연하고 접근성이 높은 한 가지 디자인에 투자하면 고려하지 않았던 요구를 가진 사용자까지 포용할 수 있습니다. 이렇게 하면 개발과 유지관리 과정도 간소화됩니다.
이상적으로는 앱의 모든 접근성 기능이 유사한 방식으로 작동하여 사용자가 최대한 쉽게 사용할 수 있도록 하고 단순하고 즐거운 사용 환경을 만드는 것이 좋습니다.
8. 실제 접근성 개발을 위한 기술 학습
여러 환경에서 앱의 동작을 맞춤설정하고 테스트하는 데 사용할 수 있는 수많은 도구와 방법이 있습니다. 그중 효과적인 출발점은 사용자가 적용할 수 있는 여러 가지 설정과 앱에서 이러한 설정에 반응할 수 있는 방법을 파악하는 것입니다. 아래의 몇 가지 도움말을 참조해 보세요.
화면의 구성요소에 시각적 디자인 계층 구조를 반영하는 순회 순서(
a traversal order)
가 있어야 합니다.
모든 UI 구성요소 콘텐츠에 설명을 제공하세요. 설명이 없으면 스크린 리더와 같은 보조 기술을 이용하는 사용자가 어려움을 겪을 수 있습니다.
앱이 ‘
애니메이션 삭제
’ 설정을 따르도록 하세요. 이렇게 하면 전환 애니메이션 및 화면에 있는 요소의 움직임이나 변환이 나타나지 않습니다. 맞춤 구성요소에는 표준 구성요소에서 제공하는 기본 동작이 없을 수 있으므로 특히 주의하시기 바랍니다.
색상이 적절하게 대비되고 색맹인 사용자가 색을 구별할 수 있는지 확인하세요.
색상보다는 아이콘을 사용하여 상태를 나타내는
것이 좋을 수 있습니다.
개발자라면
AccessibilityService
API를 잘 알아두세요. 개발 과정에 훨씬 큰 유연성을 가져다줍니다. 예를 들면
AccessibilityNodeInfo
를 사용하여 항목에 작업 설명을 추가할 수 있습니다. 재생 버튼이 있다면 콘텐츠 설명으로 '재생 버튼'을 추가하고 '이 팟캐스트를 재생하려면 두 번 탭하세요'라고 작업 설명을 수정할 수 있습니다(Google DevSummit 2019의 이
발표
에 AccessibilityService의 작동 원리가 잘 설명되어 있습니다.).
미세한 차이가 있으므로
음성 안내 지원
과 다른 제공업체의 스크린 리더 기술로 모두 테스트하시기 바랍니다.
Android 기기의 접근성 설정을 숙지하세요. 여기에는 가장 일반적인 3가지 유형의 색맹을 위한 보정
기능
과 기기를
스위치
로 사용하는 방법이 포함됩니다.
마치면서
새로운 제품과 기능을 디자인하고 제작할 때 접근성을 나중에 생각하는 경우가 너무나 많습니다. 그러나 영구적인 장애를 지닌 전 세계의 많은 인구와 일시적인 장애로 도움이 필요한 사람까지 생각해 보면 제품이 이러한 접근성 요구를 수용할 수 있는 것이 중요합니다.
BBC Sounds
가 출시되었을 때 받은 최고의 의견은 스크린 리더로 앱을 사용할 수 있는 것에 기뻐하는 사용자가 건낸 ‘고마워요'라는 짧은 한 마디 였습니다. 이러한 기술이 없었다면 앱을 경험하지 못했을 이 사용자를 비롯해 많은 사람들에게 서비스를 제공할 수 있었다는 점이 저희에게는 크게 의미 있는 일이었습니다.
접근성은 앱 디자인부터 개발과 테스트에 이르는 모든 과정에서 본질적인 부분이 되어야 합니다. 이러한 단계를 충실히 이행한다면 여러분의 앱은 예상보다 훨씬 더 큰 영향력을 발휘하게 될 것입니다. 접근성이 뛰어난 디자인과 개발은 곧 훌륭한 디자인과 개발을 의미하기 때문입니다.
포용성을 개선하고 더 많은 잠재고객에게 도달할 뿐 아니라 모든 사용자를 위한 환경을 개선할 수 있도록 지금 당장 제품에 적용할 수 있는 새로운 기술들을 여기에서 더 확인해 보시기 바랍니다.
자세히 알아보기
BBC 모바일 접근성 가이드라인
에서 더 자세한 내용을 알아보세요. 또한 BBC의
Ceri Lindsay와 Rosalind Whittam
가 진행하는
앱, 게임 및 통계 팟캐스트의 에피소드 6
에서 앱 접근성에 관해 자세히 확인할 수 있습니다.
Contents
ML/Tensorflow
Android
Flutter
Web/Chrome
Cloud
Google Play
Community
Game
Firebase
검색
Tag
인디게임페스티벌
정책 세미나
창구프로그램
AdMob
AI
Android
Android 12
Android 12L
Android 13
Android 14
Android Assistant
Android Auto
Android Games
Android Jetpack
Android Machine Learning
Android Privacy
Android Studio
Android TV
Android Wear
App Bundle
bootcamp
Business
Chrome
Cloud
Community
compose
Firebase
Flutter
Foldables
Game
gdg
GDSC
google
Google Developer Student Clubs
Google Play
Google Play Games
Interview
Jetpack
Jetpack Compose
kotlin
Large Screens
Library
ma
Material Design
Material You
ML/Tensorflow
mobile games
Now in Android
PC
Play Console
Policy
priva
wa
wear
Wearables
Web
Web/Chrome
Weeklyupdates
WorkManager
Archive
2024
12월
11월
10월
9월
8월
7월
6월
5월
4월
3월
2월
1월
2023
12월
11월
10월
9월
8월
7월
6월
5월
4월
3월
2월
1월
2022
12월
11월
10월
9월
8월
7월
6월
5월
4월
3월
2월
1월
2021
12월
11월
10월
9월
8월
7월
6월
5월
4월
3월
2월
1월
2020
12월
11월
10월
9월
8월
7월
6월
5월
4월
3월
2월
1월
2019
12월
11월
10월
9월
8월
7월
6월
5월
4월
3월
2월
1월
2018
12월
11월
10월
9월
8월
7월
6월
5월
4월
3월
2월
1월
2017
12월
11월
10월
9월
8월
7월
6월
5월
4월
3월
2월
1월
2016
12월
11월
10월
9월
8월
7월
6월
5월
4월
3월
2월
1월
2015
12월
11월
10월
9월
8월
7월
6월
5월
4월
3월
2월
1월
2014
12월
11월
10월
9월
8월
7월
6월
5월
4월
3월
2월
1월
2013
12월
11월
10월
9월
8월
7월
6월
5월
4월
3월
2월
1월
2012
12월
11월
10월
9월
8월
7월
6월
5월
3월
2월
1월
2011
12월
11월
Feed