SAP EP 6.0 and Accessibility


Published on

Published in: Technology
1 Like
  • Be the first to comment

No Downloads
Total views
On SlideShare
From Embeds
Number of Embeds
Embeds 0
No embeds

No notes for slide
  • Software Applications and Operating Systems (1194.21) Most of the specifications for software pertain to usability for people with vision impairments. For example, one provision requires alternative keyboard navigation, which is essential for people with vision impairments who cannot rely on pointing devices, such as a mouse. Other provisions address animated displays, color and contrast settings, flash rate, and electronic forms, among others. Web-based Intranet and Internet Information and Applications (1194.22) The criteria for web-based technology and information are based on access guidelines developed by the Web Accessibility Initiative of the World Wide Web Consortium. Many of these provisions ensure access for people with vision impairments who rely on various assistive products to access computer-based information, such as screen readers, which translate what's on a computer screen into automated audible output, and refreshable Braille displays. Certain conventions, such as verbal tags or identification of graphics and format devices, like frames, are necessary so that these devices can "read" them for the user in a sensible way. The standards do not prohibit the use of web site graphics or animation. Instead, the standards aim to ensure that such information is also available in an accessible format. Generally, this means use of text labels or descriptors for graphics and certain format elements. (HTML code already provides an "Alt Text" tag for graphics which can serve as a verbal descriptor for graphics). This section also addresses the usability of multimedia presentations, image maps, style sheets, scripting languages, applets and plug-ins, and electronic forms.
  • SAP EP 6.0 and Accessibility

    1. 1. Stefan Schnabel SAP User Experience – Accessibility Accessibility at large scale for Enterprise Software - Architecture and Constraints
    2. 2. Enterprise Software is different <ul><li>Different from … </li></ul><ul><ul><li>Simple ‚read-only‘ information web sites (news, weather) </li></ul></ul><ul><ul><li>Ordinary web shops / hotel booking / flight booking </li></ul></ul><ul><ul><li>Any other software that is just occasionally used </li></ul></ul><ul><li>Accessibility at large scale </li></ul><ul><ul><li>100.000 + x screens / screen-flows </li></ul></ul><ul><ul><li>Contains various technologies </li></ul></ul><ul><ul><li>Bringing accessibility into the product needs to be time- and cost effective </li></ul></ul><ul><ul><ul><li>„Hand made“ accessibility does not work </li></ul></ul></ul><ul><ul><ul><li>Centralized approach instead of „screen by screen“ optimization </li></ul></ul></ul>
    3. 3. Enterprise Software characteristics <ul><li>Typical usage scenarios </li></ul><ul><ul><li>Centrally hosted for an entire company to serve multiple locations worldwide </li></ul></ul><ul><ul><li>Controlled / well defined client infrastructure </li></ul></ul><ul><li>Typical user groups </li></ul><ul><ul><li>Trained / subject matter experts </li></ul></ul><ul><ul><li>Use the software up to 8h / day </li></ul></ul><ul><ul><li>percentage of users that are challenged in vision or with motion disabilities is equal to „rest of the world“ </li></ul></ul>
    4. 4. Focus of Enterprise Software <ul><li>Global usage requires that software complies with multiple standards (or reasonable subsets) at the same time </li></ul><ul><ul><li>Sec. 508 </li></ul></ul><ul><ul><li>WCAG </li></ul></ul><ul><ul><li>ISO 9241 </li></ul></ul><ul><ul><li>National legislation or standards </li></ul></ul><ul><li>SAP‘s accessibility standard is „best of breed“, taking both branches of Sec. 508 into account </li></ul><ul><ul><li>„ software“ and </li></ul></ul><ul><ul><li>„ web application“ </li></ul></ul><ul><li>and also WCAG 1.0 </li></ul><ul><li>In addition, SAP‘s accessibility standard has „efficiency“ in mind </li></ul>
    5. 5. Pragmatic approach for accessibility <ul><li>Top 5 pillars (ordered, based on customer feedback) </li></ul><ul><ul><li>Software needs to be FULLY functional without usage of ANY pointing device (100% keyboard enabled) </li></ul></ul><ul><ul><li>Users must be able to adjust color and contrast settings </li></ul></ul><ul><ul><li>Alternatively, Software needs to acknowledge windows desktop settings (such as high contrast) </li></ul></ul><ul><ul><li>Support of assistive technology </li></ul></ul><ul><ul><ul><li>Software needs to be compatible with at least one screen magnifier </li></ul></ul></ul><ul><ul><ul><li>Software needs to be compatible with at least one screen reader </li></ul></ul></ul><ul><ul><li>Users must be able to scale the UI, e.g. to use larger fonts. </li></ul></ul><ul><li>Additional rules are set up to deal with orientation, consistency, meaningful texts etc. </li></ul><ul><ul><li>see later </li></ul></ul>
    6. 6. SAP‘s NetWeaver architecture helps … <ul><li>Based on a service oriented architecture, application logic and user interface definition are separated „by design“ </li></ul><ul><li>Rendering infrastructure / components are centralized and separated from the user interface definition </li></ul><ul><li>ABAP applications are rendered using </li></ul><ul><ul><li>SAP GUI </li></ul></ul><ul><li>Portal / Web Dynpro applications are rendered using </li></ul><ul><ul><li>Browser or NetWeaver Business Client </li></ul></ul>Application Logic UI Definition UI Programming UI Rendering ABAP JAVA ABAP Dynpro Web Dynpro ABAP/Java BSP PDF Forms SAP GUI Browser NetWeaver Business Client
    7. 7. Centralized approach / what to do where Application Logic UI Definition UI Programming UI Rendering Use semantic colors instead of hard-coded colors Provide meaningful information for labels, column headers and row headers UI templates and generators for navigation and layout Translate semantic colors into real colors (e.g. for traffic lights symbols, “critical” meanings and warnings) Link fields and corresponding labels Do not misuse UI elements Keyboard enablement Acknowledge desktop settings for colors and contrast (*) Compatibility with screen reader / magnifier Scaling / Font selection (*) hard-coded colors defined in application logic can not be overwritten by desktop settings Making use of the centralized capabilities of the UI Definition / Programming and Rendering, application developers can concentrate on limited set of rules and constraints
    8. 8. SAP concentrates on … <ul><li>Generic capabilities of UI rendering infrastructure </li></ul><ul><ul><li>Keyboard enablement </li></ul></ul><ul><ul><li>Color/Contrast adjustment and scaling </li></ul></ul><ul><ul><li>Compatibility with Assistive Technology </li></ul></ul><ul><li>UI / programming frameworks </li></ul><ul><ul><li>prevent application developers from „hard-coding“ user interfaces </li></ul></ul><ul><li>Check Tools on application level </li></ul><ul><li>UI‘s that go beyond the capabilities of „plain vanilla“ HTML </li></ul><ul><ul><li>Introducing rich UI controls to W3C working groups </li></ul></ul><ul><li>Testing individual screens (after rendering) with „ready to run“ web tools does not make sense </li></ul>
    9. 9. What application developers have N OT to care of <ul><li>Provided by the SAP Frameworks / Architecture: </li></ul><ul><li>Keyboard Navigation </li></ul><ul><ul><li>Micro-Navigation within elements </li></ul></ul><ul><ul><li>Macro-Navigation between elements </li></ul></ul><ul><ul><li>Skipping of complex elements </li></ul></ul><ul><ul><li>Hotkeys and shortcuts </li></ul></ul><ul><ul><li>Standard focus handling </li></ul></ul><ul><li>Visual Styles </li></ul><ul><ul><li>High contrast / custom styles </li></ul></ul><ul><ul><li>Large fonts support </li></ul></ul><ul><li>Element Content, Identification and Usage </li></ul><ul><ul><li>Textual representation for screen readers </li></ul></ul><ul><ul><li>Element and sub-element type and state info </li></ul></ul><ul><ul><li>Tutor texts (usage) </li></ul></ul>
    10. 10. What application developers N EED to care of generally <ul><li>Dos </li></ul><ul><ul><li>Associate labels with fields </li></ul></ul><ul><ul><li>Use meaningful unabbreviated label texts for UI elements, element titles, captions, or free-standing text </li></ul></ul><ul><ul><li>Use the tooltip property of a UI element to explain the semantic purpose of the UI element if necessary </li></ul></ul><ul><ul><li>Fill tooltips of Input Fields and Combo boxes with label text if Label is omitted due to layout reasons </li></ul></ul><ul><ul><li>Provide meaningful row and column headers for data tables </li></ul></ul><ul><ul><li>Do provide an accessible alternative for maps, graphics and charts </li></ul></ul><ul><ul><li>Provide one single solution for both disabled and non-disabled users </li></ul></ul><ul><ul><li>Use a standardized way for arrangement of elements on your screens </li></ul></ul><ul><li>Don’ts </li></ul><ul><ul><li>Usage of non-accessible controls (e.g. self-developed controls) </li></ul></ul><ul><ul><li>Abbreviations without explanations </li></ul></ul><ul><ul><li>Hard-coding of colors (hardly possible at all) </li></ul></ul><ul><ul><li>Misuse elements (Tables for layouting etc.) </li></ul></ul>
    11. 11. Examples: Labels and Tooltips <ul><ul><li>Labels must be associated with input fields, checkboxes, and buttons </li></ul></ul><ul><ul><ul><li>Every input/output field or combo must have a meaningful label to the left </li></ul></ul></ul><ul><ul><ul><li>Every checkbox or Radiobutton must have a meaningful label text </li></ul></ul></ul><ul><li>Every graphic/icon on the screen must have a meaningful tooltip </li></ul>
    12. 12. Examples: Tables, Tabstrips and Trees <ul><ul><li>Column and row headers must be provided in data tables </li></ul></ul><ul><ul><li>Tabstrips and Tabs have to contain descriptive text </li></ul></ul><ul><ul><li>Tree nodes and levels must be also descriptive </li></ul></ul>
    13. 13. Additional Dos for ABAP Programming <ul><li>Dos </li></ul><ul><ul><li>Use label for all UI elements (e. g. dropdown lists, input fields, radio buttons, list boxes, checkboxes, and text areas) </li></ul></ul><ul><ul><li>Use tooltip for icons, images </li></ul></ul><ul><ul><li>Use ALV, Application Log, Dialog Transaction, or PDF Form instead of ABAP List </li></ul></ul><ul><ul><li>Use for forms SAP Interactive Forms by Adobe </li></ul></ul><ul><ul><li>Make navigation functional with keyboard </li></ul></ul><ul><ul><li>Use title for complex elements (e. g. group boxes and tables etc.) </li></ul></ul><ul><ul><li>Provide one single solution for both disabled and non-disabled users </li></ul></ul><ul><li>Don’ts </li></ul><ul><ul><li>Don’t use ABAP List </li></ul></ul><ul><ul><li>Don’t use color as only means of conveying Information </li></ul></ul><ul><ul><li>Don’t use Radiobutton, Checkboxes, Pushbuttons for unexpected screen changes </li></ul></ul><ul><ul><li>Don’t use Smartforms and SAPScript </li></ul></ul>
    14. 14. General Do for Standard HTML content writing <ul><li>Use W3C‘s WCAG </li></ul><ul><li>guidelines !! </li></ul>W3C World Wide Web Consortium W3C Web Accessibility Initiative: Guidelines and Techniques
    15. 15. Additional Dos for Web Dynpro Java/ABAP Programming <ul><li>Associate Labels with UI Elements using labelFor property </li></ul><ul><li>Fill accessibilityDescription property of elements when element title is skipped due to layout reasons </li></ul><ul><li>Use labeled MeltingGroup or TransparentContainer for elements forming up a single line group </li></ul><ul><li>To provide titles for elements forming a multi-line group in TransparentContainer elements , the UIElement SectionHeader should be used </li></ul><ul><li>Use named colors wherever needed </li></ul>
    16. 16. SAP Interactive Forms by Adobe <ul><li>Dos </li></ul><ul><ul><li>Create tagged PDF using Adobe LiveCycle Designer </li></ul></ul><ul><ul><li>Create forms which are easy to use </li></ul></ul><ul><ul><li>Create tables by using table object of Adobe LiveCyle Designer </li></ul></ul><ul><ul><li>Create text description for Images using Accessibility Palette </li></ul></ul><ul><ul><li>Create well defined and logical reading order structure and use subforms if necessary </li></ul></ul><ul><li>Don’ts </li></ul><ul><ul><li>Don’t use scanned information without assigning text description using Accessibility Palette </li></ul></ul><ul><ul><li>Don’t convey information by color only </li></ul></ul><ul><ul><li>Don‘t use client-side scripts which affect screen reader and keyboard negatively (e. g. mouseEnter events) </li></ul></ul><ul><ul><li>Don‘t use radio buttons and checkboxes on Masterpages (Printforms ) </li></ul></ul>
    17. 17. Test Process: Manual Check example <ul><li>.. Screen reader output for Web Dynpro: </li></ul><ul><ul><li>Reading Sequence for an InputField with a Label has been defined as follows: </li></ul></ul><ul><ul><li>< label > <type> <value> <state> < tooltip > <tutor> </li></ul></ul><ul><ul><li>label means the label text of the associated label, type means InputField, state means e.g. unavailable / required / read only / invalid. Value is the field value, tooltip means the tooltip of the field and tutor means a tutor message how to use the control. </li></ul></ul><ul><ul><li>Type , value , state and tutor attributes are provided by Web Dynpro. Application developers only have to check label , tooltip and accessibilityDescription (for containers) attributes by focusing the field (by tabbing) and listening to the screen reader output </li></ul></ul>Tooltip
    18. 18. Related Public Information <ul><li>SAP Design Guild (9th Edition): Accessibility </li></ul><ul><li>SAP‘s Public Accessibility Web Page </li></ul><ul><li>Frontend Requirements and Infrastructure for Accessibility </li></ul><ul><li>Keyboard Usage for Interface Elements in SAP GUI for Windows </li></ul><ul><li>Accessibility on SAP Service Marketplace </li></ul><ul><li>SAP Accessibility Documentation </li></ul><ul><ul><li>on SAP Service Marketplace ( http:// )  Media Library  Documentation </li></ul></ul><ul><ul><li>on SAP Help Portal ( http:// )  SAP NetWeaver  English  Getting Started (Using SAP Software)  First Steps  Accessibility </li></ul></ul><ul><li>SAP Accessibility Book (published in 2007) </li></ul>
    19. 19. Thank you! <ul><li>Questions ? </li></ul>
    20. 20. <ul><li>No part of this publication may be reproduced or transmitted in any form or for any purpose without the express permission of SAP AG. The information contained herein may be changed without prior notice. </li></ul><ul><li>Some software products marketed by SAP AG and its distributors contain proprietary software components of other software vendors. </li></ul><ul><li>Microsoft ® , WINDOWS ® , NT ® , EXCEL ® , Word ® , PowerPoint ® and SQL Server ® are registered trademarks of Microsoft Corporation. </li></ul><ul><li>IBM ® , DB2 ® , DB2 Universal Database, OS/2 ® , Parallel Sysplex ® , MVS/ESA, AIX ® , S/390 ® , AS/400 ® , OS/390 ® , OS/400 ® , iSeries, pSeries, xSeries, zSeries, z/OS, AFP, Intelligent Miner, WebSphere ® , Netfinity ® , Tivoli ® , Informix and Informix ® Dynamic Server TM are trademarks of IBM Corporation in USA and/or other countries. </li></ul><ul><li>ORACLE ® is a registered trademark of ORACLE Corporation. </li></ul><ul><li>UNIX ® , X/Open ® , OSF/1 ® , and Motif ® are registered trademarks of the Open Group. </li></ul><ul><li>Citrix ® , the Citrix logo, ICA ® , Program Neighborhood ® , MetaFrame ® , WinFrame ® , VideoFrame ® , MultiWin ® and other Citrix product names referenced herein are trademarks of Citrix Systems, Inc. </li></ul><ul><li>HTML, DHTML, XML, XHTML are trademarks or registered trademarks of W3C ® , World Wide Web Consortium, Massachusetts Institute of Technology. </li></ul><ul><li>JAVA ® is a registered trademark of Sun Microsystems, Inc. </li></ul><ul><li>JAVASCRIPT ® is a registered trademark of Sun Microsystems, Inc., used under license for technology invented and implemented by Netscape. </li></ul><ul><li>MarketSet and Enterprise Buyer are jointly owned trademarks of SAP AG and Commerce One. </li></ul><ul><li>SAP, R/3, mySAP,, xApps, xApp and other SAP products and services mentioned herein as well as their respective logos are trademarks or registered trademarks of SAP AG in Germany and in several other countries all over the world. All other product and service names mentioned are the trademarks of their respective companies. </li></ul>Copyright 2006 SAP AG. All Rights Reserved