Mobile Accessibility (A11Y). What do you need to know to have a truly accessible application?
By: Dmitry Yarygin
Tags: Software Development, Mobile Development, Accessibility, Engineering, Testing

Photo by Rodion Kutsaev on Unsplash

Accessibility testing (A11Y) is a topic that is getting more and more discussed among the companies of different sizes preparing for either expanding to new markets or just making the application more accessible for everyone.

Before we talk further about accessibility testing we need to discuss who we define as disabled/impaired people. Those are the people who have:

Visual impairment Hearing impairment People with a combination of those impairments Elderly people

As you can see, there are multiple groups of people who are affected when the application is not optimized for everyone.

To make sure those people can use our application we need to address those issues and make sure that those accessibility rules are followed across the board.

Accessibility concept

Multiple things that we need to consider when talking about accessibility testing:

Correct names of accessibility items on the screen The proper order when announcing the items through a screen reader Following the naming convention of the accessibility element types(e.g highlighting which one is a button, text field or any other type of element) Making the text and UI elements adapting properly to the accessibility settings of the phone Adding shortcuts through either hand gestures or while using an external keyboard Making the application compatible with Braille keyboard Making sure that animations and contrast/color settings can be adjusted for specific user needs

Why should we make the app accessible?

We understand who are the people with disabilities and what should we do about it, but why exactly should we invest time into this?

Expand our user base. This should be done based on research about how many disabled people are using the product and what are the challenges they have. Improve the description of UI elements. This makes the app not only better usable for visually impaired people but everyone. For example, hovering over the image will show the proper description of what is shown in the picture, clarifying any doubts. To take over a new market. Making the app better accessible for everyone might be beneficial for a specific country or a market. If we decide that making this a priority will help our product move forward, then it will make sense. Will allow the users to use the app with shortcuts. Another thing that is beneficial for everyone is that adding accessibility shortcuts makes the app better accessible for everyone. Some countries make it mandatory to make the application accessible. In some cases, making things accessible for everyone is enforced by the law of the country.

What is mobile accessibility specific?

Mobile testing has it’s own specific and the main difference between desktop experience is much less available display space and lack of a physical keyboard.

Well, Bluetooth keyboard is possible to pair with a mobile device, but we don’t generally expect using the app like this, especially while outside of the home or office.

For that reason, we need to make sure that we have only the most relevant information provided to the user.

How do we achieve that? That’s how we approach a discussion about mobile screen readers.

Mobile screen readers

Applying the necessary changes to make the application more accessible would be pointless if we don’t optimize that application for a range of screen readers.

The most popular screen readers for mobile devices are:

VoiceOver for iOS TalkBack for Android

Thankfully, comparing to desktop there are fewer screen readers available for mobile devices which makes things easier for testers to verify.

The main purpose of screen readers is to announce the elements efficiently. Screen readers might behave a little bit different, but they have the same purpose — helping your impaired users.

The idea behind a screen reader is helping a user navigate the app without modification of the functionality.

The application should not be altered in any way, it should be only enhanced for accessibility.

How to make the application accessible?

How to make everything magically happen? There is no secret recipe for how to make the app automatically work with screen readers. The best approach is to make accessibility testing across all stages of development. QA should be always involved.

Accessibility is a defined process which usually involves doing those operations:

Adding accessibility labels for all or main elements of the application Making sure context is provided and developers, designers, and testers are on the same page about it Using additional tools like WAVE and Developer Tools to analyze potential problems with accessibility Having people with impairments working in the team that can provide valuable feedback about necessary improvements

Conclusion

There is no doubt that accessibility problems should be addressed and application should be friendly to all users. The main question remains is how many resources is your company ready to invest to make it fully accessible.

It’s not easy to achieve a perfect state of accessibility, but making all the efforts to make all user groups happy is an amazing goal.

Your users will thank you for that.