Web 2.0 Mashup Accessibility
1 / 25

Agenda - PowerPoint PPT Presentation

  • Uploaded on

Web 2.0 Mashup Accessibility CSUN 2008 Rich Schwerdtfeger IBM Distinguished Engineer Peter Parente Software Engineer Emerging Technologies. Agenda. State of Web 2.0 Accessibility Quick look WAI-ARIA Introduction to the Programmable Web and Mashups IBM Mashup Accessibility Analysis

I am the owner, or an agent authorized to act on behalf of the owner, of the copyrighted work described.
Download Presentation

PowerPoint Slideshow about ' Agenda' - keaton-morin

An Image/Link below is provided (as is) to download presentation

Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author.While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.

- - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - -
Presentation Transcript
Web 2.0 Mashup AccessibilityCSUN 2008Rich SchwerdtfegerIBM Distinguished EngineerPeter ParenteSoftware Engineer Emerging Technologies


  • 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

State of accessibility for web 2 0
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

Quick look at wai aria
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

The programmable web
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

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:

What is a Mashup?




  • 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

What is a widget
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.

Mashups are catching on in the enterprise but why
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.

Examples of enterprise mashups
Examples of Enterprise Mashups

Competition Tracker / Web Site

Sales – Customer Trip Prep

Data Center Administrator Mashup

Collaborative Web App for Project Teams

Accessibility usability wild wild west issues from content aggregation are extensive
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?

Accessibility study qed wiki
Accessibility Study QED Wiki aggregation are extensive

  • 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

Near term solutions
Near term solutions aggregation are extensive

  • 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

Near term solutions for mashup construction
Near Term solutions for Mashup construction aggregation are extensive

  • 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)

Aggregation issues expose bigger problems which also create business opportunity
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)

Problems with one size fits all
Problems with one-size fits all business opportunity

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

Basis for the solution resides in the learning space
Basis for the solution resides in the learning space business opportunity

  • IMS Access For All Specifications (Version 2 under development now)

  • ISO JTC1 SC36 Standard nearly final


*DC –

**LOM – Learning Object Metadata

Access for all standards
Access for All Standards business opportunity

  • 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

Business value
Business Value business opportunity

  • 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?

Strategy moving forward demands personalization
Strategy Moving Forward – Demands Personalization business opportunity

  • 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

Take advantage of ability to
Take advantage of ability to: business opportunity

  • Transform the user interface of resources (display and control)

  • Re-aggregate resources

  • Configure tools to meet user needs

On demand personalization broad network

RSS/Atom business opportunity



Content and ACCMD

Aggregating server (search, mashup, etc.)

*DPE Server

Device, User Agent,

Environment, ACCLIP

On-Demand Personalization Broad Network

*DPE – Device Profile Evolution

On demand personalization local network
On-Demand Personalization Local Network business opportunity




Content and ACCMD


Aggregating server (search, mashup, etc.)

Identity Broker


Summary business opportunity

  • 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 desktopbut 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

For a copy of the presentation or more information, contact: business opportunityRich Schwerdtfeger at schwer@us.ibm.comQuestions?