Welcome!

SOA & WOA Authors: Peter Silva, Maureen O'Gara, Tony Bishop, Mark O'Neill, Yeshim Deniz

Related Topics: SOA & WOA, Adobe Flex, AJAX & REA, Web 2.0

SOA & WOA: Article

Expanding SOA with AJAX and Web 2.0 Tools

The usability perspective in RIA-based service consumer design

The Web is evolving as an open platform with rich user interface capabilities of desktop clients. This has triggered user-driven management of service consumer ecosystems, expanding the reach of SOA with rich interactive controls and Web 2.0 tools to access the Web content and services. However the usability dimension of these Web 2.0-based service consumer ecosystems is often ignored, leaving doubt about whether present usability testing techniques in Web-based systems are capable enough to guarantee a usable experience in RIA-based service consumer systems.

While the focus of Web 1.0 was content delivery and communication, it has evolved to Web 1.5 showcasing content personalization and multi-level communication. In progressing towards Web 2.0, which manifests "authoring and collaboration," it has emerged as a key facilitator for creating rich SOA consumer ecosystems to augment the benefits of SOA including interoperability, reuse, and standardization. Web 2.0 is about leveraging standards (CSS, JavaScript, etc.) to deliver engaging, interactive, and integrated content and services in ways that allow users to focus on the task and the customer rather than the interface.

Rich Internet Applications (RIA)-based SOA front-ends offer a better user experience than static HTML Web pages or portals leveraging services because of an:

  • Interactive and engaging interface, taking advantage of desktop richness and responsiveness, bringing content to users through controls with a low learning curve
  • Direct manipulation of data with real-time input validation and data responsiveness, all in a one-page smooth flow rather than page-by-page browsing.
  • No more waiting for undo actions, page refresh and downloads.
  • No more limitation of sequenced Web control manipulation for a task and the possibility of moving back and forth between steps.
  • Richer page elements like grids, pop-ups, dialog, tabs, contextual dropdowns and right-mouse menus, with drag-and-drop and resize capabilities.
  • Easy RIA installation and upgrades with accessibility regardless of operating system.
  • Decentralized social networks with rating reviews, and feedback: Full Collaboration.
RIAs are powerful and attractive alternatives to HTML for enabling complex interactions. However, they might have user experience problems as depicted in Table 1 .

RIA Usability Challenges

  • Complex, unconventional way of presenting content; No defined standards as of now
  • Unpredictive behavior of RIA controls; Users need to be careful and attentive while using them. They appear and disappear fast; variety of possible behavior-disengaging experience.
  • Inconsistent and confusing navigation and nomenclature with concurrent activities.
  • No calls can be made to the Web server when JavaScript is turned of and with no data transfer pages will be inaccessible.
  • AJAX quick updates are vexing for people with partial sight and screen readers can easily miss them. Appropriate alerts (with checkboxes or pop-ups) along with sound will make it noticeable and improve the screen reader experience.
  • Optimum richness may save "degraded user experiences" for the vast majority of people comfortable with less interactive applications to accommodate user learnability. Moreover, people should be able to identify the usage of any interactive page element or control, i.e., perceived affordance as defined by Don Norman in "The Design of Everyday Things." Uniform use of these controls would facilitate user learning based on past experience. The challenge is to develop an interactive application with user-centric design while providing alternative keyboard means for mouse-driven events.
  • RIAs have the concept of in-page refresh, as such the back button would bring them to the same page, thereby confusing them. A different navigation system is required for static Web page refresh and in-page refresh.
RIA-based Web and service consumer ecosystems need to look at usability to enhance the user experience and excite users to visit again. These systems have to be highly accessible, visually consistent, accurate and engaging, oriented around a natural user task flow. Some basic questions while designing such a system include:
  • What is the goal of people entering the system and why did they exit?
  • Is the page layout and form design intuitive and interactive enough to retain the user?
  • Is the site navigation and nomenclature consistent enough to ease task flow? Do we have a sitemap?
  • Is the content usable to facilitate online reading for all classes of people?
  • Is the site on a par with competitive trends in services and user experience?
  • Does in-page refresh with appropriate dialogs and opening functions in new browser windows optimally balance to facilitate a beginner's task?
  • Do we have proper feedback on the controls we are implementing? Is it maneuverable with appropriate perceived affordance?
  • Does information searching require too much user attention and mouse events like clicking, dragging, and scrolling. Aren't we cluttering one page too much?
  • Are we providing alternatives for content search as is common with static Web pages?
  • Do the customers understand the way information products and services are presented?
  • Do advertising, illustrations, and graphics on the home page convey the right message?
  • How efficient and forgiving is the mechanism to collect information from the user?
  • Finally, are users expected to behave the way a site is designed? After all we develop features to be used by users in their own natural way. Usability testing directs developers to design systems so people don't have to modify their approach to achieve their goal. (Figure 1)
The Usability Testing of RIA Applications
Usability testing evaluates how easy an RIA application is to learn and use. There should be optimum balance between business needs, technology potential, and user expectations. Traditionally, usability refers to the "extent to which a product can be used by specified users to achieve specified goals with effectiveness, efficiency, and satisfaction in a specified context of use." We restructure this definition for RIA usability to the "ability of a user to utilize rich controls for an intended use interactively, independently, and consistently resulting in reduced task time and enhanced user experience." Human Computer Interaction (HCI) in this context would be "the discipline concerned with the design, evaluation, and implementation of usable RIAs and studying the optimum balance between traditional user expectations and rich technology innovations."

Usability testing for RIAs would involve analyzing UI design on established usability guidelines, and evaluating user task time and job satisfaction while using rich Web 2.0 controls through tools or first-hand observation and recommending fixes for the flaws. A commonly suggested approach is to have an optimal combination of restraint while implementing needed rich widgets with significant business usage and using traditional means where easier for a usable experience. After all use of traditional controls will phase out with time and it will take time for rich interactive widgets and RIA prowess to become commonplace. The different perspectives of usability testing in RIA context is explained below:

More Stories By Mayank Mathur

Mayank Mathur works in Web 2.0 Research group in software engineering and technology labs, the R and D arm of Infosys Technologies Ltd. He is currently working on a methodology for usability testing in RIA applications. His other research interests include Semantic Web, AJAX and RIA Frameworks.

Comments (0)

Share your thoughts on this story.

Add your comment
You must be signed in to add a comment. Sign-in | Register

In accordance with our Comment Policy, we encourage comments that are on topic, relevant and to-the-point. We will remove comments that include profanity, personal attacks, racial slurs, threats of violence, or other inappropriate material that violates our Terms and Conditions, and will block users who make repeated violations. We ask all readers to expect diversity of opinion and to treat one another with dignity and respect.