How to Incorporate Accessibility in Software Development

by Anwiti Mishra

6 min read

Accessibility in software development is an inclusive approach to development, and it’s up to companies to make the world a better place. Here’s what accessibility means in the software world and a few reasons why it’s a smart business decision.

When you hear the word ‘accessibility,’ what thoughts run through your head?

When asked about accessibility, most of us immediately think about disability and people with special needs. 

But when it comes to creating software products, accessibility has a different meaning.

In the product development realm, accessibility pertains to the baked-in degree of ease with which the product can be used by its intended users.

The principles of accessibility in software development can be applied to any product. For example, almost all cars (especially stick-shift) are built for dominant-right-hand people.

People with dominant-left-hand make around 1/10th of the world’s population. Yet, they must readjust themselves with the cars designed for the dominant-right-hand population. It does impact their skillfulness of driving a car at the least.

This scenario has started to change slowly in recent times. Most of the car manufacturers are doing away with the ‘stick shift’. Physical control panels are making way for touch-screen controls among other things. In the future, we all might be driving autonomous vehicles. 

Accessibility in Software Development Has Seen Drastic Improvements

The vehicle industry is heavily hardware-driven, and changes get to mainstream over a long period of time. However, the computer industry has the majority of its user interfaces with technology driven by software.

One example of an accessibility application is a mobile app for right-handed people but that can be re-designed for usage by left-handed people. To do so, the engineering team has to create an option to change the layout for the user’s dominant hand.

All this came to life in 2007 with the emergence of physical-keyboard-less, all-screen smartphones. With these, you could build software to show buttons/controls dynamically, operating on touch and not on press. Not many realize, but that was a big leap for day-to-day accessible software.

An even higher degree of accessibility is if the app had an option to operate via speech.

Many new age products are eliminating the need for physically touching the product, and merely being within the audible range is enough to interact with the technology. Such products are Amazon’s Alexa devices, Google’s Home, and Apple’s Home-Pod, etc.

Products Should Be Designed for People of All Abilities

With that said, we can surmise that accessibility in software development means creating products and services accessible to people of all abilities.

Broadly, there are five different faculties of the human body, which are considered for accessibility assessment:

Accessibility Requirements Come in Many Forms

Accessibility needs can come in a wide variety of forms, both visible and invisible, and can affect any of us at any time. And whether we want to accept it or not, we are all aging into it.

  1. Temporary disabilities such as lost glasses, tooth extraction, or a broken arm.
  2. Situational limitations include the inability to see in bright sunlight, or inability to listen to fine audio in specific environments.
  3. Older people with changing abilities due to aging.
  4. People on a slow internet connection, or who have limited bandwidth.

How Great Is the Need for Accessible Technology? 

According to the World Health Organization:

Now, the degree to which a product team must enable accessibility is a function of the ability distribution of the intended audience or user group of the product.

If a solution is built for a unique set of people, let’s say trained military personnel of Switzerland, the accessibility requirements would be very specific in nature and very limited in quantity.

In contrast, if a product is being built for a large section of the general public like a Facebook app, it needs to handle all possible accessibility areas. 

Accessibility Also Makes for Good Business Decisions

  1. The business decision to create accessible products and services with accessibility features can have tangible advantages. The benefits come in the form of a broader user base to reach, a potential talent pool to hire from, and reduced financial risk owing to regulatory compliance. 
  2. Globally, more than 1 billion people have one or the other accessibility needs. The greater the number of people you can reach out to, the greater the chances of your service or product to be successful. The continuous exclusion of people with disabilities harms all of us, in revenue and impact.
  3. Most people in the world have one or more people in their life with accessibility needs (partner, parents, children). If your product or service is highly accessible, they’ll help those accessibility-needing people with your product/service. 
  4. Computers and the internet provide opportunities and access to services, education, and jobs for people with disabilities. But a recent report by The World Bank found that they are still significantly more likely to experience poverty. The unemployment rate for people with disabilities is more than twice the average. This population represents an enormous untapped talent pool at a time when we are all in need of great talent.
  5. Regulatory framework across the globe, however unclear for the digital world, requires digital products to be accessible. Otherwise, they may attract legal complications like this website accessibility case from New York.

The challenges are real, and the opportunity is tremendous. 

How to Better Enable Accessibility in Your Product

We are software developers, and we need to build more accessible products. And accessibility in software development can be addressed every time you design a product or write code.

For design, here are some suggestions:

  1. Design workflows in a fashion that require the user to move eyes/mouse clicks in a line and not in a zig-zag fashion.
  2. Pick colors and contrasts which are sensible of color-blindness (color-palette, what is color-blindness).
  3. Design product features so that anyone can meet the basic requirements of using the product. This is more evident with the picture below. (and also with the earlier example about right-dominant-hand, left-dominant-hand, and speech-enabled products).

For engineering/writing code, there are some great works done by a lot of people, I want to share a few of those which are very helpful:

  1. Web accessibility
    1. Get started:
    2. Dive in-depth: https://webaim.org/ 
  2. Get tools to benchmark software products (Android, Windows, Web) for accessibility requirements https://accessibilityinsights.io/

Thanks for reading through and good luck on your quest to make our world more accessible. We depend on you. Do let us know of your queries related to accessibility in general and accessibility-focused software development in particular.

FAQs

Q: What do we mean by accessibility?

In the product development realm, accessibility pertains to the baked-in degree of ease with which the product can be used by its intended users

Q: What is an example of accessibility?

One example of an accessibility application is a mobile app designed for right-handed people that can be re-designed for usage by left-handed people. To do so, the engineering team has to create an option to change the layout for the user’s dominant hand.

Q: What is the use of accessibility options?

Accessibility in software development aims to make software products available to people of all abilities. For example, to help a person with limited visibility abilities, a company can design an app to include a text-to-speech feature. Or, a company can create a product with a speech-recognition feature that will allow a person with limited mobility to control the device with their voice.

Anwiti Mishra
Anwiti Mishra
Senior QA Engineer

Anwiti is a Software professional with over 10 years of experience, contributing towards multiple enterprise and consumer software products for corporations as well as startup. In past, she has played multiple roles in software dev processes including developer, program manager, DB admin but a majority portion as Quality Analyst and Scrum Master. She especially enjoys working on Mobile apps and new age tech. Anwiti strongly believes that triad of internet, software and mobile tech is a great enabler as well as democratizing factor for human race. Apart from technology, she loves seeing new places, learning about different cultures and cooking food delicacies.

Expertise
  • Agile Methodologies
  • QA
  • QA
  • Mobile Testing
  • Scrum
  • Jira
  • QA
  • QA
  • QA
  • QA
  • +5

Ready to start?

Get in touch or schedule a call.