Vande Mataram

Sunday, June 24, 2007

My Article on Usability Analysis in Developer IQ Jan '04 issue

Usability Analysis

C.H. ArunPrabu

In this article we try to understand the exact implication of the term Usability. The means to achieve optimum Usability and also the various reservations concerning the subject are discussed here.

The word "usability" has become a catch phrase for software that works better for their users, but it is difficult to pin point just what people mean by the phrase. Usability is the measure of the quality of a user's experience when interacting with a product or system - whether a Web site, a software application, mobile technology, or any user-operated device. In order for these systems to work, their users must be able to employ them effectively.

Improving usability is expensive but is far more economical than producing a product that creates havoc in the organization and frustration for users. The definition of usability is often reduced to ease-of-use, but this belittles the issues involved and throws a very dim light on the domain from which solutions have to be derived. To hit the nail on its head, we have to rely on international standards specifications. The definition of usability in the ISO 9241 standard is:
"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 will now take a look at the four key requirements for Usability. They are the following:

* Thinking about how and why people use a product
Good interaction design, like good technical writing, focuses on user's goals. The first step in creating a usable product is that, the product understands those goals in the context of the user's environment, task or workflow, and letting these needs inform the design.

* Evaluation
Usability relies on user-feedback through evaluation rather than just trusting the experience and expertise of the designer. Unlike conventional software acceptance testing, usability evaluation involves watching real people use a product (or prototype), and using what is learned to improve the product.

* More than just "ease of use"
The 5 Es - efficient, effective, engaging, error tolerant and easy to learn - describe the multi-faceted characteristics of usability. Interfaces are evaluated against the combination of these characteristics which best describe the user's requirements for success and satisfaction.

* User-centered design
Users are satisfied when an interface is user-centered - when their goals, mental models, tasks and requirements are all met. The combination of study, appraisal and design all approached starting from the user's point of view creates usable products.

Whatever was said before can be made more comprehensive by five characteristics, which must be met for the users of a product. They are: Effective, Efficient, Engaging, Error Tolerant, Easy to Learn. Let us consider each of them lucidly.

Effective

The term effectiveness in the context of Usability can be best defined as the entirety and the accuracy with which users achieve specified goals. It is determined by looking at whether the user's goals were met successfully and whether every aspect of the work is correct. It is at times difficult to separate effectiveness from efficiency, but they are not the same. Efficiency is concerned primarily with how fast a task can be completed, while effectiveness considers how well the work is done (Table 1).

Balanced



Table 1

Questions to ask

  1. Is the task completed successfully?
  2. Is the work completed correctly?

Design considerations

  1. Assistance in the UI for doing the job- checklists, scripts.
  2. Language that creates clear choices. Navigation that reduces backtracking and rework.

Efficient

Let us now understand what is efficiency. ISO 9241 defines efficiency as the total resources spent in a task. Efficiency can be described as the pace with precision in which users can complete the tasks for which they use the product. Efficiency metrics include the number of clicks or keystrokes required or the total 'time on task'.

It is important to be sure to define the task from the user's point of view, rather than as a single, rough communication. Navigation design elements such as keyboard shortcuts, menus, links and other buttons all have an impact on efficiency. When they are well designed, with clearly articulated actions, less time and effort are required for the user to make navigation and action choices (Table 2).

Table 2

Questions to ask


  1. How long does it take to complete a task?
  2. Can users work with minimum interaction?
  3. Does the interface feel efficient?

Design considerations

  1. Navigation shortcuts. Visible menus or breadcrumbs.
  2. Keyboard shortcuts.
  3. Placement of controls.

Engaging


Next we have engaging. We say that an interface is engaging when it is pleasant and enjoyable to use. The most prominent element here is the visual design. The style of the interaction might range from a game-like simulation to a simple menu-command system. The style of engagement that is satisfying for a repetitive work tool is different than an e-commerce site. Even within the same class of interfaces, different users may have widely divergent needs.

What is important is that the design meets the expectations and requirements of the people who are intended to use the interface. All these qualities must be appropriate to the tasks, users and context (Table 3).

Table 3

Questions to ask
  1. What kind of work or play does the product support?
  2. What are the expectations for style and tone?
  3. What is the context of use?
Design considerations
  1. Frequent vs. Casual useLong sessions vs. Short interactions
  2. Physical environment-readability, visibility and accessibility.
  3. Competitive environment.

Error Tolerant

Next we see what Error Tolerant is. Even though the ultimate goal of any system could only be error free, it is impossible to realize the goal, as product developers are human and computer systems are far from flawless. A highly usable interface might treat error messages as portion of the interface, that includes not only a clear description of the problem, but also direct links to choices for means to rectify the problem. If a choice is not made, it can be presented without any punitive language. For example, if a required element is missing simply presenting a way to fill in that data can make an error message look more like a wizard.

Let’s see the guidelines that would help in preventing errors:

* Make it hard to take flawed actions. Design links and buttons to be distinctive, use clear language, avoiding technical jargon, and be sure that dependent fields or choices appear together.

* Make it difficult to take illogical actions. Limit choices when possible to those which are correct, provide understandable examples for data entry, present only appropriate navigation options.

* Make it tough to take irreversible actions. Provide the ability to back track, provide means to undo or reverse actions, avoid dead-end screens. Don't use confirmations arbitrarily - users become inattentive to them.

* Plan for the unforeseen. Allow for users to add new entries, take exceptional routes through the interface or make choices you did not predict. Be polite about "correcting" mistakes that may arise from this lack of foresight (Table 4).

Unbalanced




Table 4

Questions to ask
  1. Does the design help prevent errors?
  2. When an error occurs, is the interface helpful?
Design considerations
  1. Clarity of language in error messages.
  2. Whether corrective actions shall be available, when problems occur.
  3. Providing duplicate or alternative paths to meet different needs.

Easy to Learn

The next aspect under consideration is ease to learn. Users may need access to new functionality, expand their scope of work, explore new options or transform their own workflow or process, to learn about the new product. These changes might be instigated by external changes in the environment, or might be the result of exploration within the interface.

An interface, which is easy to learn, allows users to build on their knowledge without deliberate effort. Developers shall allow users to build not only on their prior knowledge of computer systems, but on any interaction patterns they have learned through practice in a predictable way also (Table 5).

Table 5

Questions to ask

  1. Can both initial and advanced tasks be mastered without outside help?
  2. Is the level of difficulty(or knowledge required) appropriate?
Design considerations
  1. Built-in instruction for difficult/infrequent tasks.
  2. Access to just-in-time training elements.
  3. Ability of the user to build on initial learning.
  4. Helpfulness of the interface.
How To Achieve a High Level of Usability?

Let us understand how high level of Usability could be achieved. The key principle for maximizing usability is to employ iterative design, which progressively refines the design through evaluation from the early stages of design. The evaluation steps enable the designers and developers to incorporate user and client feedback until the system reaches an acceptable level of usability.

The preferred method for ensuring usability is to test actual users on a working system. Achieving a high level of usability requires focusing design efforts on the intended end-user of the system. There are many ways to determine who the primary users are, how they work, and what tasks they must accomplish.

Methods Section Overview

1. Cognitive Walkthrough: This is an approach to evaluating an interface based on breaking down and analysing actions that a user must perform in order to use the system or perform a task.

2. Focus Groups: These gather groups of users to get their feedback, initial reactions to a design, and discuss their preferences.

3. GOMS: GOMS is a family of techniques for modelling and describing human task performance. GOMS is an acronym that stands for Goals, Operators, Methods, and Selection Rules.

* Goals represent the goals that a user is trying to accomplish, usually in a hierarchical manner.
* Operators are the set of atomic-level operations with which a user composes a solution to a goal.
* Methods represent sequences of operators, grouped together to accomplish a single goal.
* Selection Rules are used to decide which method to use for solving a goal when several are applicable. (Further Reference: http://www.gomsmodel.org)

4. Prototyping: This involves developing representations of a system for testing purposes and can range from simple sketches to almost fully functional systems.

5. Task Analysis: Task Analysis evaluates how the end-user actually uses software or websites. An analyst determines the user goals and tasks, and then makes recommendations aimed at increasing efficiency and user-friendliness. The analysis is done from the perspective of the end-user and not from the point of view of managers or executives who do not necessarily use the system.

6. Usability Inspection: This reviews issues such as clarity, consistency, navigation, and error minimization.

7. User Testing: User Testing observes actual users interacting with software or websites.
Now we shall analyze the differences between Usability Engineering and Usability Testing.

Usability Engineering: It is a methodical approach to producing a Web site or any user interface. It is a practical and systematic way to deliver a product that works for users. Usability engineering involves several methods, each applied at appropriate times, including gathering requirements, developing and testing prototypes, evaluating design alternatives, analyzing usability problems, proposing solutions, and testing a site (or other interface) with users.
Usability Testing: Usability Testing is part of the process of usability engineering. Usability testing includes a range of methods for having users try out a site (or other system). In a typical usability test, users perform a variety of tasks with a prototype (or other system) while observers record notes on what each user does and says. Typical tests are conducted with one user at a time or two users working together. The goal of most usability testing is to uncover any problems that users may encounter so those problems can be fixed. A frequently asked question is whether a Lab is necessary to do Usability Testing.

The answer is No. Usability testing can be done in either a formal or informal setting. In any type of setting, the methodology can also range from formal to informal.
We can perform Effective usability testing in any of the following settings:

  • a fixed laboratory having two or three connected rooms outfitted with audio-visual equipment
  • a conference room, or the user's home or work space, with portable recording equipment
  • a conference room, or the user's home or work space, with no recording equipment, as long as someone is observing the user and taking notes
  • remotely, with the user in a different location, as long as the observer can monitor what the user is doing, listen to the user thinking aloud, and interact with the user by computer or telephone during the session

Cost of Usability Testing
Cost depends, of course, on the size of the operation, how much the product needs to be tested, how many different types of users are anticipated, and how formal the testing is to be. Having a standard process and reusable materials makes usability testing faster and less expensive. The aspects to be considered in budgeting for usability testing are Time to plan, Cost of recruiting, Time to familiarize, Cost for various rentals, Time of team to conduct the test, Cost of paying participants, Time to analyse the observations, Time to discuss changes with developers, write up memo of findings and recommendations.

Usability ROI: Measuring Return on Investment

To obtain an ROI figure that is a direct result of usability testing, a variety of factors must be taken into account. It is important to gather data on pre- and post-design usability testing (in order to generate measurements that can then be compared).

Metrics and Measurements

We can quantify metrics in the following forms:

  • Completion rate of tasks
  • Time required to complete a task
  • Frequency of "Help" used
  • Error rate
  • Subjective satisfaction measurements

These metrics, measured over a wide sampling of users, can reveal error patterns, design inconsistencies, and other stumbling blocks. Identification and eradication of these design flaws can bring some or all of the following results:

  • Fewer development costs
  • Shorter development time
  • Higher rate of customer acquisition
  • Increased customer loyalty
  • Increased productivity
  • Stronger brand equity

Travails of usability professionals

  • Lack of awareness in Indian companies;
  • Shrinking job market;
  • No training opportunities in formal education sector;
  • Lack of professional qualifications;
  • Services not accepted easily in product team.

Remuneration

The remuneration aspect mainly comes down to how the management perceives the value added by the usability professionals. The perceived value is much higher in product companies and lower in service organizations. As a rule of thumb, the more removed an organization is from the end-user, the lesser the perceived value. This is due to the simple reason that if you don't retail your own products, then your customer is not the same person as the end-user.

There is also a myth that usability is subjective and that it can be done by anyone. Combining dangerous myths like these and the non-availability of trained usability engineers, we should unfortunately expect a lot of mediocrity in this field in India. Usability is said to be a narrow field that offers no scope for switching over to other IT domains. The main question that usability professionals should be thinking about, but are probably not, is how to move up. One of the best upward routes is into product management.

References:
www.usability.gov
www.WQusability.com
www.usabilityfirst.com
www.useit.com

This article is written by C.H. ArunPrabu and he can be reached at ch_arunprabu@yahoo.co.in.
.........

Copyright © DeveloperIQ.com, all rights reserved.

This article is kept as reference material at http://www.wqusability.com/articles/getting-started.html

Saturday, June 2, 2007



Hello World!

This is my platform to express my thoughts, opinions and arguments about whatever I feel worth to give a thought and shot. I respect and honour freedom of expression. But I also revere the Lakshman Rekha or the Yellow Line cautioning the limits to mind.

I'm Arun. A free man,
Hindu and Indian in that order.

I love political leaders of true quality like, Lincoln, Churchill, Lee Kwan Yew, Deng Xio Ping, Sardar Vallabhai Patel, Atal Bihari Vajpeyee, A.P.J. AbdulKalam in politics, NOT in that order.

In business and economic sphere, I like Azim Premji, Narayana Murthy, Jack Welch, Lee Iacocca, Warren Buffet, Ratan Tata, Paul Samuelson, Sumantra Ghoshal, J.K. Galbraith, Jagdish Bhagwati, again, not in that order.


Here I would express my views, mostly conservative and right, but also liberal as the case may need.


VANDE MATARAM.

ArunPrabu Coundinya Hariharan.