SWG Accessibility Strategy Rich Schwerdtfeger

Download Report

Transcript SWG Accessibility Strategy Rich Schwerdtfeger

®
IBM Software Group
Web 2.0 Mashup Accessibility
CSUN 2008
Rich Schwerdtfeger
IBM Distinguished Engineer
Peter Parente
Software Engineer
Emerging Technologies
© 2007 IBM Corporation
IBM Software Group
Agenda
 State of Web 2.0 Accessibility
 Quick look WAI-ARIA
 Introduction to the Programmable Web and Mashups
 IBM Mashup Accessibility Analysis
 Short Term Solutions
 Long Term: Flexible, Personalized Web
IBM Software Group
State of Accessibility for Web 2.0
 Tremendous progress on Web 2.0 Application accessibility
 IBM led W3C Accessible Rich Internet Applications (WAI-ARIA)
 Reusable, Accessible RIAs springing up: (Dojo AJAX Toolkit, JQuery)
 IAccessible2, Gnome ATK/ATSPI Allows ATs full access to RIAs through the
browser
 AccProbe Test Tool, (Firefox, Opera, IE) browser support under way
 ATV support: Window-Eyes, JAWS, ZoomText, Orca, NVDA
 WAI ARIA – Allows for
 Full interoperability with ATs
 Keyboard usability of the desktop
 Semantics for content adaptation
 Accessibility of all applications has its limitations
 One size fits all
 Great if you control all the content/code
 The web is becoming programmable and distributed
IBM Software Group
Quick Look at WAI-ARIA
 Extends and fills gaps in (X)HTML to support accessibility
 Uses Meta data found in Rich Desktop Applications to provide for full
interoperability with assistive technologies
 Role, state, property information for widgets
 Identify Drag and Drop information
 Defines relationships between UI components
 Provides information to handle live regions
 Provides navigational landmarks
 Allows Web authors to provide desktop keyboard navigation
 Tab to significant areas and arrow within the widget
 All HTML keyboard accessible
 Allows all items to be focusable without impacting the tab order
 Is cross-cutting and helps all users
IBM Software Group
The programmable web
• Companies making Web 2.0
API public as a service API
– Fragments, data, reusable
widgets
– programmableweb.com
> 660 APIs
• RSS and Atom Data Feeds
made public
• Opportunity for rapid Web 2.0
application development
*RSS – Real Simple Syndication
IBM Software Group
What is a Mashup?
 A mashup is a web application combining data or capabilities from more
than one source into an integrated experience
 Popular on the consumer web - over 3.45 new mashups/day are appearing:
Pageflakes.com
Zillow
SeatSnapper
 What typically characterizes a mashup?
Lightweight integration of applications (enables rapid development)
 “Widgets” that make up a mashup are often developed and deployed independently without
knowledge of each other
 Widgets can be mashed and wired together in the browser
Utilize web technologies like HTTP, **JSON, XML, JavaScript, Atom, RSS
Often incorporates one or more public API and online services
Often, mashups can be customized by the end user
**JSON – JavaScript Object Notaton
IBM Software Group
What is a Widget?
 A widget is a portable chunk of code that can run
in any web application without requiring separate
compilation
 How is a widget different than a portlet?
 Widgets are URL addressable fragments and can be
written in any language (Java, .NET, PHP, etc.).
Portlets are Java code.
 Widgets can be as simple as an HTML fragment, so
they don’t have to involve any server side code (but
they can).
 Simplicity of model enables developers to learn how
to create widgets in a matter of hours versus days.
 Widgets don’t have a complex packaging structure or
require a complex deployment model.
 >> A simple “hello world” widget can be written in a
tool like Dreamweaver, and the file can copied into the
file structure on the server. A “hello world” portlet
would require a Java-based tool and also consists of
multiple files, packaging, and deployment.
 No widget standards and many vendors have created their own names: gadgets, blocks, flakes, etc.
IBM Software Group
Mashups are Catching on in the Enterprise, But Why?
 Lightweight integration enables rapid development and lowers skill set
requirements
Enables the creation of applications that were previously too costly to build (like situational
applications)
Extends web app development beyond IT – out to even knowledge workers
Reduces IT backlog
 Availability of many widgets and gadgets allows organizations to assemble
applications at a lower cost
 Once a component is developed, it can be easily reused across different
applications, regardless of the underlying technology
.NET and J2EE and PHP widgets can communicate together on a page
.NET + PHP widgets can be mashed into a J2EE-based app (and vice versa)
 Wire up for interoperability
Gartner: By 2010, more than 30% of Global 2000 organizations will enter a new
era of end-user computing via user-assembled, composite applications created
with enterprise mashup environments.
IBM Software Group
Examples of Enterprise Mashups
Competition Tracker / Web Site
Data Center Administrator Mashup
Sales – Customer Trip Prep
Collaborative Web App for Project Teams
IBM Software Group
Mashup Example
IBM Software Group
Accessibility/Usability Wild Wild West - issues from content
aggregation are extensive
 Is the resource accessible?
 Will the accessible resource meet my needs (WAI-ARIA is new)?
 Can the resource be adapted to fit my needs?
 If the resource cannot meet my needs is there an equivalent alternative?
 Will the Mashup have consistent keyboard support?
 Is the end solution too cluttered to assist all users?
 Will restructuring the mashup produce a more usable solution?
IBM Software Group
Accessibility Study QED Wiki
 No Accessibility Assessment of Data Feeds (RSS/Atom)
 Keyboard problems
 Conflicting accelerator keys, tab ordering, IDs, etc.
 Content from a remote service traps input focus
 Dynamic content inappropriately grabs focus
 Inaccessible services
 No WAI-ARIA support
 No keyboard support
 Fixed sizes, styles, and layout (Can’t respond to system settings –font/color)
 Interaction inconsistencies
 Different defaults
 Different paradigms
 Disrespect for local user settings
 Invisible relationships
 Missing status indicators for widgets
 Missing controller-controlled by relations among widgets
 Drag/Drop Layout construction problems
IBM Software Group
Near term solutions
 Mashup runtime environment must take responsibility for exposing relations
among widgets.
 Use WAI-ARIA relationships (controls, flowto, labelledby)
 Use WAI-ARIA to mark regional landmarks (main, secondary, contentinfo, etc.)
 Mashup runtime should attempt to repair any problems it can.
 Compute a global tab ordering by inspecting explicit tabindex in widgets.
 Fix overlapping IDs. (Store Widgets in IFrames where possible)
 Override widget styling.
 Mashup designer tooling must support creation of accessible mashups.
 Provide reusable accessible widgets when available
 Prompt user for WAI-ARIA information when possible
 Ultimately, must address the accessibility of the original widget content.
 Services providers must adopt WAI-ARIA
IBM Software Group
Near Term solutions for Mashup construction
 Layout grid templates for widgets
 Allows all users to use keyboard to navigate pre-designed template
 Use WAI-ARIA to apply keyboard navigation/semantics to the grid
 Provide accessible utilities to wire up widgets
 Ensure mashup UI consists of accessible WAI-ARIA enabled
components (Dojo Toolkit)
IBM Software Group
Aggregation issues expose bigger problems which also
create business opportunity

One size fits all approach

Usable access may require equivalent alternatives

Content Aggregators: Unaware if a resource is accessible (Web 2.0 mashups)
IBM Software Group
Problems with one-size fits all

Learning disabilities needs vary greatly
 Managing content density, highlighting specific text, providing different color schemes, use of
symbols, etc.

Complex visualizations may require equivalent alternatives for blind consumers

Use of closed captioning or transcripts depends on the language spoken by the
consumer

Restructuring content may benefit mobility impaired user

Does not adapt to the environment the user is operating in
 High background noise, low light, temporary mobility impairment, etc.
IBM Software Group
Basis for the solution resides in the learning space

IMS Access For All Specifications
(Version 2 under development now)

ISO JTC1 SC36 Standard nearly final
http://www.imsglobal.org/accessibility
*DC –
**LOM – Learning Object Metadata
IBM Software Group
Access for All Standards
 A description of the user’s personal needs and preferences (*ACCLIP)
 A description of a digital resource (**ACCMD)
 Can be used with or without other personal profiles and other resource
metadata
*ACCLIP – Accessibility Learner Information Package
**ACCMD – Accessibility Meta Data
IBM Software Group
Business Value

Personalization
 How much business is lost when people walk away from an online purchase?
 What additional revenue could search companies realize if results were easier to use
(advertising service contracts)?
 Aging workforce, with cash, don’t want to show they have a disability
 Service opportunity for ATVs and accessibility consulting
 Corporations improve effectiveness of e-training
 When does a person’s environment make the IT unusable?

Resource Metadata
 Lawsuits: How does the content aggregator show they did not produce the inaccessible
resource?
 System Admin: What accessibility standards did the resource comply to and can I deploy it?
IBM Software Group
Strategy Moving Forward – Demands Personalization
 Address accessibility of resource content
 Continue to evangelize and drive industry toward WAI-ARIA adoption
 Develop Best Practices for addressing accessibility Merge Issues
 Perform accessibility study of data feeds (RSS, ATOM, others)
 Identify transformations needed (Fluid Project)
 Develop “flexible internet highway infrastructure” map user preferences with the
appropriate resource and adapt the resource where necessary
 Develop standards for resource meta data and user preferences (IMS AccessForAll)
 Work with W3C/**OMA Deliver user preferences over *DPE?
 Deliver Accessibility Preferences from identity brokers?
 Potential – Fluid Project
 Drive Industry Adoption of flexible highway
 Providing resource meta data (catalog of accessibility capabilities and equivalent
resources
 Drive understanding of business value
*DPE – Device Profile Evolution
**OMA – Open Mobile Alliance
IBM Software Group
Take advantage of ability to:

Transform the user interface of resources (display and control)

Re-aggregate resources

Configure tools to meet user needs
IBM Software Group
On-Demand Personalization Broad Network
RSS/Atom
search
Blog
Content and ACCMD
Aggregating server (search, mashup, etc.)
Device, User Agent,
Environment, ACCLIP
*DPE – Device Profile Evolution
*DPE
Server
IBM Software Group
On-Demand Personalization Local Network
RSS/Atom
search
Blog
Content and ACCMD
ACCLIP
Aggregating server (search, mashup, etc.)
ACCLIP
Identity
Broker
IBM Software Group
Summary
 Mashups are in the early stages of addressing accessibility
 Like WAI-ARIA, IBM is leading to get us ahead of the curve
 WAI-ARIA places usable access on equal playing field with desktop
but Mashups could undo the good work
 Reusable WAI-ARIA enabled toolkits, like Dojo, are on the rise – Use them
 The advancement of the Web mandates an Open Accessibility Strategy
 Open architectures
 Open standards
 Open Source
 Leverage social collaboration!
 Proprietary creates barriers!
 The time is now to move to a more flexible, accessible web
 Critical for content aggregation
 Essential for addressing learning and cognitive accessibility
 Addressing broader accessibility issue will generate significant business value
®
IBM Software Group
For a copy of the presentation or more information, contact:
Rich Schwerdtfeger at [email protected]
Questions?
© 2007 IBM Corporation