Tuesday, June 21, 2011

Often avoided and rarely done well, accessibility is a product quality that requires substantial effort with little business reward at first, it seems. For the end user however, physically challenged or not, the rewards of accessible technology are huge. Statistics show that accessibility affects many:

It is estimated that between 10-20% of the worlds population has a disability [1]. Not every disability affects the user´s ability to operate software but many do. Visual impairments and reduced upper limb capabilities are the most common factors affecting performance in human-computer interface usage.

Also, research indicates that two thirds of office staff suffer from repetitive strain injuries (RSI) [2] . Although RSI is a very complex and controversial topic, excessive mouse usage is suspected to exacerbate RSI.

Last but not least, with a rapidly aging population in the western world, accessibility becomes more important. Reduced eye sight and reduced dexterity are common among the elderly.

Accessibility should never be just a "tick in a requirements list". It should merely be an ongoing effort towards full accessibility. For a static web site, reaching full accessibility is feasible but for a complex application such as an ERP system, it is much harder and 100% accessibility for all possible tasks is almost impossible. For example, changing the position of the workspace widgets using drag & drop cannot be done using the keyboard only. Although it would be nice if this were possible, this task is of such low importance that it would be hard to justify a big investment in the core product to enable this. Also, since Openbravo is modular, it is hard to guarantee full accessibilty of all modules written by third parties.

(1) All main tasks can be excecuted using a keyboard. Openbravo 3 features a new set of keyboard shortcuts. If necessary they can be adapted to local or personal preferences. In a next blog post I will zoom in on keyboard shortcuts. For now, here is the default set.

(2) Text size can be increased using the browsers zoom capability. In most browsers this is done using by keeping the CTRL key pressed down while moving the mouse scroll wheel. Below an example of how a form looks like when enlarged (click to view the full size image).

(3) Color schemes are suitable for color blind and color coding is never used as a single visual cue. Using a special filter for color blindness, we can simulate how a color blind user sees Openbravo 3. Shown below a screenshot of Openbravo 3 as seen by a Deuteranopia type of color blind who cannot distinguish well between greens and reds. In the bottom row in the grid the order quantity field is erroneous, indicated by a red fill. However, for the Deuteranopia color blind user, this color coding is not sufficient. Therefore Openbravo also provides an icon (the X on the pen button) on the left of the row together with a tooltip.

(4) Screen components are readable by a screen reader. Screen readers are applications that help visually impaired users by reading out screen text aloud. Recommended are Thunder (free/donation) and NVDA (open source).

There is another important factor to accessibility: legislation. A growing number of countries around the world have introduced legislation directly addressing the need for accessible technology. In the United States the Access Board (an independent federal US agency) issued accessibility standards for electronic and information technology under section 508 [3] of the Rehabilitation Act, as amended. Compliance with section 508 of the Rehabilitation Act applies to all Federal agencies when they develop, procure, maintain, or use technology. Federal agencies must ensure that their technology is accessible to employees and the public.

In Spain, UNE 139803 [4] is the norm entrusted to regulate web accessibility.

The majority of the guidelines are loosely based on the WCAG [5] web accessibility guidelines created by the W3C. Unfortunately, most guidelines point to the first version, written over 10 years ago, where the web mainly consisted of web sites in the sense of content being rendered in HTML using tables and frames. Today, with the advance of AJAX technology, this check list is not entirely applicable anymore. This, together with the huge effort needed to test the entire application using assistive technologies (e.g. screen readers) against all international guidelines prevents me from guaranteeing that Openbravo 3 complies by default with all. This said, I am confident that with few, if any, adaptations, Openbravo 3 will comply.

With Openbravo 3 we have contributed our part in removing the digital divide in society. I urge our business partners and wider community to keep this spirit alive in all their development and deployments. If you need any help on accessibility, feel free to contact me.