개발자

‘액세서빌리티 인사이트’로 누구나 접근할 수 있는 코드 만들기

Simon Bisson | InfoWorld 2022.03.17
누구든 어느 시점이 되면 접근하기 쉬운 소프트웨어가 필요할 것이다. 장애가 있거나 팔이 부러지거나, 아기를 안고 있어야 하는 상황이 언제든 생길 수 있다. 접근성은 상황에 따라 다르기 때문에 소프트웨어에 액세스하는 ‘방식’은 소프트웨어가 필요한 ‘이유’보다 훨씬 중요하다. 누구나 언제든지 접근할 수 있는 소프트웨어는 지원 기술을 추가하면서 만들 수 있다.
 
ⓒ Getty Images Bank

‘접근성(accessibility)’은 이른바 ‘범용 디자인(universal design)’이라는 접근방식의 일환으로 생각하는 편이 낫다. 상상할 수 있는 모든 상황에서 각 사용자의 능력에 상관없이 가능한 한 많은 사람이 액세스할 수 있는 애플리케이션을 구축하는 것이 범용 디자인의 핵심이다. 소프트웨어에 접근성을 기본적으로 보장한다는 중요한 개념이다. 이제는 사용자 경험에서 접근성 기능을 추가하는 것보다 제거하는 것이 더 어렵다. 

즉, 프로젝트 초기부터 접근성 문제에 대응해 애플리케이션 요건에 접근성을 포함하는 것이 중요하다. 이런 프로세스는 코드를 구축할 때도 지속해야 한다. 테스트 과정에 접근성을 포함하고 코드가 소스 리포지토리에 제출되거나 메인 브랜치와 병합되기 전에 확인하는 것이 이상적이다.


‘액세서빌리티 인사이트’는 무엇인가

마이크로소프트는 사용에 제약이 되는 요소를 파악하고 이를 활용해 포용적인 애플리케이션 구축을 목표로 하는 ‘하나를 위한 솔루션, 다수로의 확장(solve for one, extend to many)’이라는 모델로 포용적 디자인(inclusive design)을 자사 제품의 주요 플랫폼으로 만들었다. 이런 접근의 일환으로 WCAG(Web Content Accessibility Guidelines)와 같은 글로벌 접근성 표준을 사용해 자체 코드에서 접근성을 구현하는 방법을 정의한다.

마이크로소프트의 표준은 안드로이드 모바일 애플리케이션, 웹, 윈도우 개발 프로세스에서 사용할 수 있는 일련의 접근성 테스트 도구에 내장돼 있으며, 마이크로소프트의 액세서빌리티 인사이트(Accessibility Insights) 홈페이지에서 다운로드할 수 있다. 윈도우와 모바일용은 데스크톱 분석 툴이며, 웹용은 엣지와 크롬을 위한 브라우저 확장 프로그램이다. 깃허브 리포지토리가 활성화된 오픈소스 툴이다.

액세서빌리티 인사이트에서 다운로드할 수 있는 3가지 도구는 모두 신속한 테스트의 일종인 패스트패스(FastPass)라는 기능을 제공한다. 애플리케이션에서 가장 보편적으로 발생하는 접근성 문제를 발견하는 자동화 기능이다. 브라우저 확장 프로그램을 설치하고 익숙한 웹 사이트에서 실행해보면 쉽게 이해할 수 있을 것이다. 


웹 애플리케이션에서 패스트패스 실행하기

패스트패스는 해당 웹사이트가 WCAG 표준을 준수하는지 확인하고, ARIA(Accessible Rich Internet Applications)와 같은 특성을 테스트한다. ARIA는 장애를 가진 사용자가 웹 콘텐츠에 더 쉽게 접근할 수 있는 방법을 정의하는 특성으로, 다양한 위젯이 HTML 5에 통합됐지만 여전히 널리 사용된다. 안타깝게도 이런 이유 때문에 페이지에 실수로 ARIA 오류가 쉽게 추가되기도 한다. 잘못 구현된 ARIA는 스크린 리더와 다른 지원 기술에 영향을 미치므로 득보다는 실이 많다.

액세서빌리티 인사이트 툴은 오류에 대한 문서 객체 모델 경로와 문제를 정확히 설명하는 짧은 코드를 제시한다. 문제를 해결하는 간단한 방법이 있다면 제안된 변경사항을 확인할 수 있다. 해당 오류가 문제를 유발하는 이유를 정확히 설명하는 액세서빌리티 인사이트 페이지에 대한 링크도 제공한다. 예를 들어 키보드를 통해 숨겨진 요소에 여전히 접근할 수 있는 상황을 가정해 보자. 해당 요소와 여전히 상호작용은 할 수 있지만, 해당 기능이 하는 작업을 눈으로 확인할 수 없는 스크린 리더 사용자는 아무런 설명을 듣지 못하는 문제가 생길 수 있다.

접근성 오류는 간과되는 경우가 많다. 필자가 인기 웹사이트를 스캔해 액세서빌리티 인사이트 툴로 테스트한 결과, 여러 색 대비 오류를 발견했다. WCAG에는 가능한 한 많은 사용자가 페이지를 읽을 수 있도록 포어그라운드와 백그라운드 색상 사이의 비율에 관한 규칙이 있다. 흰색 백그라운드의 회색 포어그라운드는 명암비가 2.33:1이며, 표준인 4.75:1보다 훨씬 낮다. 액세서빌리티 인사이트는 초기 디자인을 WCAG 지침과 일치시키기 위해 브라우저의 F12 개발자 툴로 시도할 수 있는 유사한 대체 색상을 제안한다. 

툴의 자동화 기능에 따라 모든 세부사항을 수집한 후에는 수동 툴을 사용할 수 있다. 키보드를 통해 요소 사이를 안내하는 탭 스톱(tap stop) 툴은 페이지 탐색에 도움이 된다. 이 기능의 목적은 지원 기술로 페이지의 모든 상호작용 요소에 접근할 수 있는지 확인하는 데 있다. 혹은 마우스가 망가진 사용자가 탭으로 접근할 수 있도록 돕는 목적도 있다. 시각적 응용 소프트웨어를 활성화하면 포커스 서클(focus circle)을 추가해 테스트 요소를 확인할 수 있다. 테스트가 완료되면 각 요소에 번호가 매겨지고, 눈에 잘 보이고 접근 가능한지, 오버레이가 의도한 대로 열리는지 점검할 수 있다.

이런 툴을 사용할 때는 다중 모니터 사용을 권장한다. 애플리케이션과 별도의 브라우저 창에 존재하기 때문이다. 한 화면에 사이트를 열고, 다른 화면에는 액세서빌리티 인사이트 툴과 함께 사이트 개발자 도구를 열어 두면 작업이 편리하다.

액세서빌리티 인사이트는 가이드가 기재된 평가를 제공한다. 우선, 패스트패스가 수행한 자동화 테스트의 세부사항을 설명한다. 이 평가는 패스트패스가 제공하는 결과보다 더 포괄적인 버전이며, 평가 양식을 자동으로 작성하고 HTML의 어떤 부문에 수정이 필요한지 제시한다. 자동화 테스트가 완료된 후에 일련의 수동 테스트를 안내한다. 안내 사항은 각 요소에 포커스가 있는지 보여주는 시각적 신호 테스트와 애플리케이션 탐색을 개선하기 위해 ARIA 랜드마크 사용을 검토하는 작업 등이다. 평가서에는 전체 UI 테스트 전략에 포함하면 좋을 24개 섹션이 있다.

액세서빌리티 인사이트는 일련의 임시 테스트 툴에 대한 액세스도 제공하므로 개발 과정에서도 사용할 만한 가치가 있다. 색상 또는 탭 스탑과 같은 특정 기능을 테스트하는 방법에 대한 지침과 함께 검토가 필요한 기능 목록에 빠른 액세스를 제공한다. 

액세서빌리티 인사이트는 안드로이드 모바일 애플리케이션, 웹사이트, 윈도우 소프트웨어 등을 개발할 때 사용성을 테스트하는 중요한 구성요소다. 소프트웨어의 접근성을 높이고 장애 유무에 상관없이 모든 사람이 코드를 사용할 수 있는 포용적 디자인은 무엇보다 중요하다. 이런 필수적인 도구는 따로 설치하는 옵션으로 두는 것보다는 비주얼 스튜디오(Visual Studio)와 비주얼 스튜디오 코드(Visual Studio Code)에 내장하면 더욱 도움이 될 것이다.
editor@itworld.co.kr
Sponsored

회사명 : 한국IDG | 제호: ITWorld | 주소 : 서울시 중구 세종대로 23, 4층 우)04512
| 등록번호 : 서울 아00743 등록발행일자 : 2009년 01월 19일

발행인 : 박형미 | 편집인 : 박재곤 | 청소년보호책임자 : 한정규
| 사업자 등록번호 : 214-87-22467 Tel : 02-558-6950

Copyright © 2024 International Data Group. All rights reserved.