Web 2.0 Mashup Accessibility CSUN 2008

Download Web 2.0 Mashup Accessibility CSUN 2008

Post on 09-Dec-2014




2 download

Embed Size (px)




  • 1. Web 2.0 Mashup Accessibility CSUN 2008 Rich Schwerdtfeger IBM Distinguished Engineer Peter Parente Software EngineerEmerging Technologies

2. 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

3. 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

4. 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

5. 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 6. What is a Mashup?

  • Amashupis 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:

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

Pageflakes.com **JSON JavaScript Object Notaton 7. What is a Widget?

  • Awidgetis 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 dont 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 dont have a complex packaging structure or require a complex deployment model.
    • >> A simple hello worldwidgetcan be written in a tool like Dreamweaver, and the file can copied into the file structure on the server.A hello worldportletwould 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.

8. Mashups are Catching on in the Enterprise, But Why?

  • Lightweight integration enablesrapid developmentandlowers 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 alower cost
  • Once a component is developed, it can be easilyreusedacross 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.

9. Examples of Enterprise Mashups Competition Tracker / Web Site Sales Customer Trip Prep Data Center Administrator Mashup Collaborative Web App for Project Teams 10. Mashup Example 11. 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?

12. 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 (Cant 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

13. 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

14. 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)

15. 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)

16. 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.

17. 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 18. Access for All Standards

  • A description of the users 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 19. 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, dont want to show they have a disability
    • Service opportunity for ATVs and accessibility consulting
    • Corporations improve effectiveness of e-training
    • When does a persons 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?

20. 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 21. Take advantage of ability to:

  • Transform the user interface of resources (display and control)
  • Re-aggregate resources
  • Configure tools to meet user needs

22. On-Demand Personalization Broad Network *DPE Device Profile Evolution RSS/Atom Blog search Aggregating server (search, mashup, etc.) *DPE Server Content and ACCMD Device, User Agent, Environment, ACCLIP 23. On-Demand Personalization Local Network RSS/Atom Blog search Aggregating server (search, mashup, etc.) Identity Broker Content and ACCMD ACCLIP ACCLIP 24. 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

25. For a copy of the presentation or more information, contact: Rich Schwerdtfeger at[email_address] Questions?