Gisbert LoffVice President, SAP User Experience
Los Angeles, March 2008
Adding additional Accessibility capabilities to installed Software AFTER shipment
© SAP 2008 / Loff CSUN 2© SAP 2008 / Page 2
Preface – Software Product Lifecycle
UI programming and interfacing with assistive technology
Closing the gap
SAP Accessibility Competence Center (ACC)
References
About SAP
Agenda
© SAP 2008 / Loff CSUN 3© SAP 2008 / Page 3
Preface – Software Product Lifecycle
UI programming and interfacing with assistive technology
Closing the gap
SAP Accessibility Competence Center (ACC)
References
About SAP
Agenda
© SAP 2008 / Loff CSUN 4
Preface: Software Product Lifecycle
Q&A about timeQ: How long can it take between initial specification and final shipment of
software?A: 2 – 5 years
Q: How long does a customer want to use an enterprise software installation?A: As long as possible, that is about 8 years according to our experience
In the meantime … legislation around accessibility changesNew UI technologies on the market (e.g. AJAX-based Web programming
technologies)New interfaces for linking assistive technology to user interfaces are
developedNew assistive technologies are developed, new operating systems, …
© SAP 2008 / Loff CSUN 5
Preface: Software Product Lifecycle / 2
Our (SAP) worldMany SAP customers still use „SAP R/3 Enterprise 4.7“ or earlier versionsPortions of that software have been developed
at a time when accessibility was not as much in focus as it is today and assistive technology was not available in a way that we have it
today
© SAP 2008 / Loff CSUN 6
The „master“ questions
How can we upgrade accessibility features of installed software ?
without performing a formal / major upgrade to the customers installation,without formal modification of the installation,
(this would put a burden on subsequent formal upgrades)selectively, fast,at minimum overall cost ?
© SAP 2008 / Loff CSUN 7© SAP 2008 / Page 7
Preface – Software Product Lifecycle
UI Programming and interfacing with assistive technology
Closing the gap
SAP Accessibility Competence Center
References
About SAP
Agenda
© SAP 2008 / Loff CSUN 8
About UI programming
SAP‘s UI architecture provides a generic „technical“ solution for many accessibility featuresA screen „model“ created by application developers is interpreted and
displayed via a „generic“ viewing engine(e.g. SAP GUI, SAP NetWeaver Business Client)
The viewing engine connects with assistive technologies at high level The screen model is forwarded to the screen reader The screen reader does not have to rely on assumptions, heuristics,
interpretations (like it is the case with many web applications)The viewing engine can (always) be upgraded separately
more frequent and less disruptive than backend/database upgrade most likely due to fast changing PC environment
e.g. operating system upgrade W2K => XP => Vista)
© SAP 2008 / Loff CSUN 9
Linking JAWS/Virgo with SAP GUIStep by Step
Step 1The generic viewing engine exposes its UI modelvia standard technology (e.g. COM, UI Automation)
Step 2The model is adjusted / transformed to the needs of a specific
screenreader product, e.g. Virgo from Baum, via „Glue Code“ so the screen reader can interpret it in the right way
Getting the „Glue Code“Screen Reader extensions for SAP GUI are available free of charge
© SAP 2008 / Loff CSUN 10
Linking JAWS/Virgo with SAP GUI
“Glue” Code
SAP GUI Object Model
Script Plugin Screen reader
© SAP 2008 / Loff CSUN 11© SAP 2008 / Page 11
Preface – Software Product Lifecycle
UI Programming and interfacing with assistive technology
Closing the gap
SAP Accessibility Competence Center
References
About SAP
Agenda
© SAP 2008 / Loff CSUN 12
Closing the gap – What IS the gap?
The UI model represents the accessibility knowledge and tool abilities at time of development some years ago …
when different accessibility legislation was in place with different development tools in place
(today‘s development environment addresses many requirements automatically)
Huge number of screens (models) makes analysis / repair not an easy task
If the model is not sufficiently specified for today’s accessibility requirements by the application programmer at time of development
the model can be fixed by modification of code or … the model can be fixed by adding supplemental accessibility information
from the outside
© SAP 2008 / Loff CSUN 13
Closing the gap – Idea for relief
Identify accessibility violations for selected screens that are used by a user with specific needsTypically, for any given single user the number of screens
he/she uses is extremely small compared to the overall number of screens
Change / enrich the model and store screen-specific supplemental accessibility informationon the user‘s PCor in a centralized location to be used by multiple users
Disclaimer: The method described here is meant to be a temporary solution for a selected number of ‘typical’ accessibility flaws if the customer cannot / does not want to upgrade the software.
© SAP 2008 / Loff CSUN 14
Linking JAWS/Virgo with SAP GUI
“Glue” Code
SAP GUI Object Model
Script Plug-In Screen reader
© SAP 2008 / Loff CSUN 15
SAP GUI Object Model
Linking JAWS/Virgo with SAP GUI /Teaching step
“Glue” Code
Script Plug-In
Databasefor supplemental
accessibilityinformation
Teacher
„Teacher“ detects missing field-label relationship and stores it in a database
Screen reader
© SAP 2008 / Loff CSUN 16
Linking JAWS/Virgo with SAP GUI /Usage of supplemental information
“Glue” Code
SAP GUI Object Model
Script Plug-In
Databasefor supplemental
accessibilityinformation
From now on, this field-label relationship is available for assistive technology
Screen reader
© SAP 2008 / Loff CSUN 17
The idea … more generic
A sighted user (teacher) identifies accessibility gaps on a screen / website / part of software that
hinders a screen reader to read out content or structure to a blind / visually impaired user
stores additional descriptive information (additional information, correction of gap) in a file / database / disk / CD / DVD / network
A file (network) / disk / cd / DVD … exchange is used to distribute the descriptive information to blind / visually impaired
users
A visually impaired / blind user loads that additional information from the file / disk / CD / DVD / network into
his/her screen readerThe screen reader identifies that there is additional information available for
a certain screen / website / part of software and behaves accordingly by reading out the additional information
© SAP 2008 / Loff CSUN 18
Demo – Step 1 / 1
Start SAP TRACS UI (TRained ACcessibility for SAP GUI)
© SAP 2008 / Loff CSUN 19
Demo – Step 1 / 2
Select a field that has missing accessibility information (Example: Field without connected label and tooltip)
© SAP 2008 / Loff CSUN 20
Demo – Step 1 / 3
Select a field that has missing accessibility information (Example: Field without connected label and tooltip)
© SAP 2008 / Loff CSUN 21
Demo – Step 2
Example: Add Tooltip Information
© SAP 2008 / Loff CSUN 22
Demo – Step 3 / 1
Example: Assign label to inputfield
© SAP 2008 / Loff CSUN 23
Demo – Step 3 / 2
Example: Assign label to inputfield
© SAP 2008 / Loff CSUN 24
Demo – Step 4
Save
© SAP 2008 / Loff CSUN 25
Demo – Step 5
Content of sample database
Additional Tooltipassigned to the Field
Field – Label Relationshipassigned to the Field
© SAP 2008 / Loff CSUN 26
What you need to make it work that way
Identification Every „screen“ needs to be identified in an unique way
SAP GUI: ProgramName / ScreenNumber Browser: URL
Every field on the screen needs to be identified in an unique way SAP GUI: FieldName Browser: Fieldname (just the same way like one would store a field history)
Runtime hook Ability to „hook“ glue code between UI and screen reader understand to object model of the screen on semantic level instead of guessing at
pixel level Ability to access a database (or similar storage) when user comes across such a
field
© SAP 2008 / Loff CSUN 27© SAP 2008 / Page 27
Preface – Software Product Lifecycle
UI Programming and interfacing with assistive technology
Closing the gap
SAP Accessibility Competence Center
References
About SAP
Agenda
© SAP 2008 / Loff CSUN 28
The SAP User Experience Accessibility Teamworks for you in Walldorf, Germany & Palo Alto, US
Maintains and develops the Accessibility standard at SAP
Supports the development teams with guidelines and check tools
Supports Accessibility Coordinators in development
Supports the Accessibility Testlab in Bangalore
Performs technology certifications
Established in Palo Alto 2001, moved to Headquarters in Germany 2003
© SAP 2008 / Loff CSUN 29© SAP 2008 / Page 29
Preface – Software Product Lifecycle
UI Programming and interfacing with assistive technology
Closing the gap
SAP Accessibility Competence Center
References
About SAP
Agenda
© SAP 2008 / Loff CSUN 30
References
United States Patent Application 200600631382007 CSUN Presentation
“Accessible Software Architectural Design and Standard”SAP Designguild
http://www.sapdesignguild.org/editions/edition.aspAccessibility Infrastructure and settings
http://www.sapdesignguild.org/resources/acc.asp“Developing Accessible Applications with SAP NetWeaver“
(J.Koeble et al, ISBN 978-1-59229-112-0)
© SAP 2008 / Loff CSUN 31© SAP 2008 / Page 31
Preface – Software Product Lifecycle
UI Programming and interfacing with assistive technology
Closing the gap
SAP Accessibility Competence Center
References
About SAP
Agenda
© SAP 2008 / Loff CSUN 32
Summary of SAP Today
© SAP 2008 / Page 32
SAP AG in 2007 revenues: €10.25 billion More than 43,000 companies run SAP software Providing more than 25 industry solutions 43,861 SAP employees (December, 2007)
12 million users in 120+ countries team with us to… Integrate their business processes Extend their competitive capabilities Get a better return on investment at a lower total cost of ownership
Unique partner ecosystem More than 3,850 partners Overall more than 180,000 SAP partner certificates
© SAP 2008 / Loff CSUN 33
SAP is Well Positioned for Growth
Trusted business partner for 43,000+ companies – the largest installed base in the enterprise software sector
Deep vertical expertise with strategic solutions for more than 25 industries
Great innovation power with 12,951 developers
Largest ecosystem in the industry system integrators, ISVs, OEMs, resellers, partners
One of the top brands globally #34 according to BusinessWeek
© SAP 2008 / Page 33
© SAP 2008 / Loff CSUN 34
SAP's Global R&D Organization
© SAP 2008 / Page 34
Development LabsBulgaria
Canada
China
Germany
Hungary
India
Israel
United States
Research CentersAustralia
Canada
China
France
Germany
Northern Ireland
South Africa
Switzerland
United States
© SAP 2008 / Loff CSUN 35© SAP 2007 / Page 35
Thank you!