Successfully reported this slideshow.

Software Accessibility Siddhesh

675 views

Published on

Creating "accessible" applications

Published in: Technology
  • Be the first to comment

Software Accessibility Siddhesh

  1. 1. Software Accessibility Siddhesh Bhobe
  2. 2. What is Accessibility? <ul><li>Access to information by virtually anyone under virtually any circumstances </li></ul><ul><ul><li>Physical Disability: Blindness, Restricted Movements, Slow Response </li></ul></ul><ul><ul><li>Device Limitations </li></ul></ul><ul><li>Involves use of Assistive Technology </li></ul><ul><ul><li>Voice Recognition </li></ul></ul><ul><ul><li>Speech Output using Text-to-Speech synthesizer </li></ul></ul>
  3. 3. US Section 508 <ul><li>Applies to federal agencies when they develop, procure, maintain or use electronic and information technology. </li></ul><ul><li>Under Section 508, agencies must give disabled employees and members of the public access to information that is comparable to the access available to others. </li></ul><ul><li>Applies to all electronic and IT products procured by the federal government after June 21, 2001. </li></ul><ul><li>Goal: To eliminate barriers in IT, to make new opportunities available for people with disabilities, and to encourage development of technologies that will help achieve these goals. </li></ul>
  4. 4. Visual Disabilities <ul><li>Need text equivalents for the images used on the Web page </li></ul><ul><li>Does not find the mouse useful because it requires hand and eye coordination: use only keyboard </li></ul><ul><li>Cannot use visual effects like italics, bold lettering, color contrasts effectively to get visual cues about the data on the web page </li></ul>
  5. 5. Mobility Disabilities <ul><li>Problems with user input devices </li></ul><ul><li>Ctrl-Alt-Del is VERY difficult </li></ul><ul><li>Alternate input mechanisms like speech becomes critical </li></ul>
  6. 6. Hearing, Cognitive Disabilities <ul><li>Give redundant information: audio, visual </li></ul><ul><li>Simplified site design with easy navigation </li></ul>
  7. 7. Web Accessibility Checklist <ul><li>Images and animations . Use the alt=&quot;text&quot; attribute to provide text equivalents for images. Use alt=&quot;&quot; for images that do not convey important information or convey redundant information. </li></ul><ul><li>Image maps . Use client-side image maps and alternative text for image map hot spots. If a server-side map is needed, provide equivalent text links. </li></ul>
  8. 8. Web Accessibility Checklist <ul><li>Graphs and charts . Summarize the content of each graph and chart, or use the longdesc attribute to link to the description or data. </li></ul><ul><li>Multimedia . Provide captions or transcripts of important audio content. Provide transcripts or audio descriptions of important video content. </li></ul>
  9. 9. Web Accessibility Checklist <ul><li>Scripts . Ensure the functionality of scripts is keyboard accessible. If the content affected by scripting is not accessible, provide an alternative. </li></ul><ul><li>Applets, plug-ins, and non-HTML content . When an applet, plug-in or other application is required to be present, provide a link to one that is directly accessible, or provide alternate content for those which are not directly accessible. </li></ul>
  10. 10. Web Accessibility Checklist <ul><li>Forms . Make forms accessible to assistive technology. </li></ul><ul><li>Skip to main content . Provide methods for skipping over navigation links to get to main content of page. </li></ul><ul><li>Frames . Provide a title for each FRAME element and frame page. Provide an accessible source for each frame. </li></ul>
  11. 11. Web Accessibility Checklist <ul><li>Table headers . Use the TH element to mark up table heading cells. Use the headers attribute on cells of complex data tables. </li></ul><ul><li>Cascading style sheets . Web pages should be readable without requiring style sheets. </li></ul><ul><li>Color & contrast . Ensure that all information conveyed with color is also conveyed in the absence of color. </li></ul>
  12. 12. Web Accessibility Checklist <ul><li>Blinking, moving or flickering content . Avoid causing content to blink, flicker, or move. </li></ul><ul><li>Timed responses . When a timed response is required, alert the user, and give sufficient time to indicate more time is required. </li></ul>
  13. 13. Web Accessibility Checklist <ul><li>Text-only page . If accessibility cannot be accomplished in any other way, provide a text-only page with equivalent information or functionality. Update the content of the text-only page whenever the primary page changes. </li></ul>
  14. 14. Testing Web Applications for Accessibility <ul><li>Tools like Bobby and Home Page Reader </li></ul><ul><li>Lynx: Using a text-only browser is an effective technique in determining if the alternative text content is available. </li></ul>
  15. 15. Bobby <ul><li>Bobby web-based tester </li></ul><ul><li>http://bobby.watchfire.com/bobby/html/en/index.jsp </li></ul><ul><li>Let’s see an example! </li></ul>
  16. 16. Home Page Reader <ul><li>IBM Home Page Reader is a talking Web browser designed for people who are blind or have low vision. </li></ul><ul><li>HPR can also be used by designers and developers with normal sight who need to test Web sites for accessibility. </li></ul>
  17. 17. Home Page Reader <ul><li>You can listen to each page and hear what a blind person hears. </li></ul><ul><li>When alternative text on images is missing or cumbersome, it will sound obvious. </li></ul><ul><li>In its default settings, HPR speaks all active elements, including links and control elements, in a female voice. </li></ul><ul><li>Instead of listening to every word on the page, you can examine the HPR text view or press the right arrow key to jump to the next block of information. </li></ul>
  18. 18. Other Mechanisms <ul><li>Filter/transformation tools that convert existing pages to make them more accessible </li></ul><ul><li>Agora is a system which allows web-pages to be retrieved by E-mail simply by sending a message containing the URL of the desired document. </li></ul><ul><li>The Voice allows representation of images in sound using Peter Meijer's &quot;image sonification&quot; technique. </li></ul><ul><li>Screen magnifiers can be used in conjunction with mainstream browsers </li></ul>
  19. 19. Windows Demo!
  20. 20. App Accessibility Checklist <ul><li>Provide keyboard equivalents for all actions. </li></ul><ul><li>Do not interfere with keyboard accessibility features built into the operating system. </li></ul><ul><li>Set the focus. </li></ul>
  21. 21. App Accessibility Checklist <ul><li>Set the name on all components and include the description on icons and graphics. If an image is used to identify programmatic elements, the meaning of the image must be consistent throughout the application. </li></ul><ul><li>Associate labels with controls, objects, and icons. </li></ul>
  22. 22. App Accessibility Checklist <ul><li>Provide an option to display a visual cue for all audio alerts. </li></ul><ul><li>Provide accessible alternatives to significant audio and video. </li></ul><ul><li>Provide an option to adjust the volume. </li></ul>
  23. 23. App Accessibility Checklist <ul><li>Use color as an enhancement, not as the only way to convey information or indicate an action. </li></ul><ul><li>Support system settings for high contrast for all user interface controls and client area content. </li></ul><ul><li>When color customization is supported, provide a variety of color selections capable of producing a range of contrast levels. </li></ul>
  24. 24. App Accessibility Checklist <ul><li>Support system settings for size, font and color for all user interface controls. </li></ul><ul><li>Provide an option to display animation in a non-animated presentation mode. </li></ul>
  25. 25. App Accessibility Checklist <ul><li>Provide an option to adjust timed responses or allow the instruction to persist. </li></ul><ul><li>Avoid the use of blinking text, objects, or other elements. </li></ul>
  26. 26. App Accessibility Checklist <ul><li>Provide documentation on all accessibility features , including keyboard access, as part of the regular product documentation. </li></ul>
  27. 27. Testing Java Applications for Accessibility <ul><li>First, test using the keyboard only: </li></ul><ul><li>Unplug your mouse and try to navigate your application using only the keyboard. </li></ul><ul><li>Is there documentation on how to use the tab, arrow, and shortcut keyboard keys? </li></ul>
  28. 28. Testing Java Applications for Accessibility <ul><li>Second, test using Assistive technology: </li></ul><ul><li>The second way to test your application for accessibility is to use an assistive technology. </li></ul><ul><li>Currently, the JAWS screen reader can be used to help test the accessibility of your application on the Windows platform. </li></ul>
  29. 29. Testing Java Applications for Accessibility <ul><li>Third, use accessibility testing tools: </li></ul><ul><li>Java Accessibility Helper is a tool which you can use to help test the accessibility of your application. It identifies areas in an application's UI where the accessibility support has been improperly used. </li></ul><ul><ul><li>Ensure each relevant component has implemented Accessible </li></ul></ul><ul><ul><li>Ensure each accessibility field is filled in appropriately </li></ul></ul><ul><ul><li>Ensure there is an accessible action set for components which can be activated with a mouse or keyboard </li></ul></ul><ul><li>Other tools like Ferret and Monkey </li></ul>
  30. 30. Hardware Accessibility <ul><li>Controls and latches should be reachable and operable with one hand and minimal dexterity. </li></ul><ul><li>Provide an alternative input method for touchscreens or touch-operated controls . </li></ul><ul><li>Provide the status of all locking or toggle keys visually and either through touch or sound. </li></ul>
  31. 31. Hardware Accessibility <ul><li>Allow frequently accessed media to be inserted and removed using minimal reach and manual dexterity. </li></ul><ul><li>Upon request, provide documentation in an accessible format. </li></ul>
  32. 32. References <ul><li>Tools from the Web Accessibility Initiative of the W3C </li></ul><ul><li>http://www.w3.org/WAI/ER/existingtools.html </li></ul><ul><li>IBM Accessibility Website </li></ul><ul><li>http:// www.ibm.com /able </li></ul><ul><li>Web Accessibility at IBM </li></ul><ul><li>http://www-306.ibm.com/able/guidelines/web/webreferences.html </li></ul><ul><li>Java Accessibility at IBM </li></ul><ul><li>http://www-306.ibm.com/able/guidelines/java/snsjavag.html </li></ul><ul><li>http://www-306.ibm.com/able/guidelines/java/javareferences.html </li></ul>
  33. 33. Thank You!

×