The Fluid team has selected three inspection methods to evaluate current and prospective products:
For each method, a set of general questions will help guide your thought process: Tips to help evaluate usability.
Each of the methods may be used to address usability, accessibility, or both. The only difference is the set of heuristic principles applied or questions asked during the review. Checklists for both usability and accessibility are offered here for each method.
It is not necessary for you to use all three methods to contribute to the Fluid UX walkthrough endeavour. Nor must you address both accessibility and usability. If you do participate, please use the following checklists to guide your explorations, and use the appropriate UX Walkthrough Report Template to report your findings.
I. Heuristic Evaluation
An heuristic evaluation is an expert review of a web page with reference to explicit principles termed "heuristics". During the evaluation, reviewers see how well a page fulfills the basic requirements for usability or accessibility.
To conduct an heuristic evaluation of a service offered through the web, travel through the pages of the site, reflecting on each of the listed principles, and recording compliance and violations. The heuristic principles should also be kept in mind during cognitive walkthroughs.
Heuristic Principles for Usability
This section lists the original Nielsen and Molich heuristics, as refined by Nielsen.
Visibility of system status
The system should always keep users informed about what is going on, through appropriate feedback within reasonable time.
Match between system and the real world
The system should speak the user's language, with words, phrases and concepts familiar to the user, rather than system-oriented terms. Follow real-world conventions, making information appear in a natural and logical order.
User control and freedom
Users often choose system functions by mistake and will need a clearly marked "emergency exit" to leave the unwanted state without having to go through an extended dialogue. Support undo and redo.
Consistency and standards
Users should not have to wonder whether different words, situations, or actions mean the same thing. Follow platform conventions.
Even better than good error messages is a careful design which prevents a problem from occurring in the first place. Either eliminate error-prone conditions or check for them and present users with a confirmation option before they commit to the action.
Recognition rather than recall
Minimize the user's memory load by making objects, actions, and options visible. The user should not have to remember information from one part of the dialogue to another. Instructions for use of the system should be visible or easily retrievable whenever appropriate.
Flexibility and efficiency of use
Accelerators - unseen by the novice user - may often speed up the interaction for the expert user such that the system can cater to both inexperienced and experienced users. Allow users to tailor frequent actions.
Aesthetic and minimalist design
Dialogues should not contain information which is irrelevant or rarely needed. Every extra unit of information in a dialogue competes with the relevant units of information and diminishes their relative visibility.
Help users recognize, diagnose, and recover from errors
Error messages should be expressed in plain language (no codes), precisely indicate the problem, and constructively suggest a solution.
Help and documentation
Even though it is better if the system can be used without documentation, it may be necessary to provide help and documentation. Any such information should be easy to search, focused on the user's task, list concrete steps to be carried out, and not be too large.
More detail on each of the principles can be found in be found in an expanded list from Deniese Pierotti of Xerox, which itemizes specific things to look for when evaluating a system with Nielsen's Heuristics. See Heuristic Evaluation - A System Checklist.
Heuristic Principles for Accessibility
The Fluid UX Accessibility Working Group has created a set of protocols for assessing accessibility:
- Simple Accessibility Review Protocol: This is a set of simple heuristics for evaluating the general accessibility of a web application without need for complex assistive technologies. It provides a simple technique that anyone can learn while doing UX Walkthroughs.
A paper from Claire Paddison and Paul Englefield provides a list of nine heuristic principles for accessibility evaluations:
- Applying Heuristics to Perform a Rigorous Accessibility Inspection in a Commercial Context
(Click on the Full Text PDF link and view pages 129-130.)
Paddison and Englefield include in their paper a general discussion of the heuristic approach. This is recommended reading for all reviewers.
II. Cognitive Walkthrough
A cognitive walkthrough is a step-by-step exploration of a page to see how well a particular type of user - represented by a persona - will be able to accomplish his or her objectives.
The following must be set down explicitly before the the walkthrough process is begun:
- a user goal - the specific result desired by the user and motivating the interaction
- a persona which:
- is adequate to judge what knowledge the user may plausibly be expected to have
- specifies the particular needs, preferences, and limitations the user may have
Note that separate walkthroughs may be needed for each persona, although some issues will likely show up in more than one walkthrough, resulting in later walkthroughs going more quickly than earlier ones.
Addressing Usability in a Cognitive Walkthrough
Work out the sequence of steps the user should go through, to accomplish the goal.
For each step, ask the following questions:
- Will the user know what to do at this step? Is complex problem solving needed to figure out what to do?
- If the user does the right thing, will they know that they did the right thing, and are making progress towards their goal? Is complex problem solving needed to interpret the feedback?
Addressing Accessibility in a Cognitive Walkthrough
An accessibility walkthrough follows procedure similar to the cognitive walkthrough described above, with the difference that the user has one of a number of disabilities such as low vision, blindness, impaired hearing, motor control limitations, or cognitive issues.
In an accessibility walkthrough, the main consideration is how these limitations affect the use of websites or software. For example: blind persons and some persons with limited motor control need keyboard-only operation; some persons with cognitive issues need visuals that reinforce text; persons with low vision must enlarge page content; deaf people require video captioning and visual, rather than auditory, prompts. You also must consider the assistive technology the user will use. Examples include screen magnifiers such as ZoomText, screen readers such as JAWS, or combination screen readers/enlargers such as Kurzweil 3000.
Before proceeding with the formal walkthrough, it is useful to perform the following steps:
- Assess the overall layout and structure of each page.
- Play around with the layout: enlarge the font size; change the size of the window (bigger and smaller); adjust the resolution.
- Use the Tab key to traverse the entire page.
To perform an accessibility walkthrough, adopt a persona, select a goal, and perform the steps necessary to accomplish the goal. At each step, ask the following questions:
1. Will the user know what to do at this step?
- Is complex problem solving needed to figure out what to do?
- Are the cues provided accessible to the user?
- Can the cues be understood by someone who doesn't process text well?
- Can the cues be found by someone who can't scan the screen easily?
2. Will the user be able to carry out the required action?
- Can it be performed easily by a keyboard-only persona?
- Can it be performed without visual monitoring?
3. If the user does the right thing, will they know that they did the right thing, and are making progress towards their goal?
- Is complex problem solving needed to interpret the feedback?
- Is the feedback accessible to the user, and can they find it (as for cues)?
To conduct an actual accessibility walkthrough and assessment, it is recommended that the reviewer select a persona to adopt and then follow one the detailed protocols listed in the section on heuristics (above):
- Simple Accessibility Review Protocol
- Comprehensive Accessibility Review Protocol for PC
- Comprehensive Accessibility Review Protocol for Macintosh
III. Code Review - Examining the HTML Under the Covers
Websites have the opportunity to provide additional information to persons with disabilities to help them understand and navigate more easily. Some of this information is visible to all website users and can enhance their experience. Some of it is transparent to sighted users and provides context for persons with visual, auditory or motor limitations.
The Fluid UX Accessibility Working Group has created a set of protocols for assessing accessibility. These involve the use of tools for a somewhat automated approach.
- Comprehensive Accessibility Review Protocol for PC: This is a PC-based protocol for more in-depth accessibility testing. It contains three accessibility test protocols for Fluid: Internet Explorer 7 with the AIS Toolbar Extension, the JAWS Screen Reader and the Web Accessibility Checker tool. A form for entering results and a completed form for reference are contained in attachments.
- Comprehensive Accessibility Review Protocol for Macintosh: This is a Macintosh version of the PC-based protocol.
Code reviews can also be accomplished through direct examination of HTML. A useful guide for determining if a site addresses accessibility through properly crafted HTML is IBM's Web Accessibility Checklist:
- Is content separated from presentation through CSS?
- Are buttons and other controls text-based?
- Are tables used for data and not layout?
- Does page content linearize?
- Do pages have frames?
- Are they necessary? If so, do they have meaningful titles?
- Are headings hierarchical?
- Is punctuation provided in headings to control screen readers?
- Are tables properly structured?
- Do they contain headers and summaries?
- Are table cells associated with headers?
- Are they used for data and not presentation?
- If tables are necessary for presentation, are they identified as such? E.g.: role=:"wairole:presentation"
- Are forms properly structured?
- Are forms organized by subject area?
- Are labels associated with input boxes?
- Are XHTML navigation landmarks taken from XHTML2? See: The XHMTL Role Attribute (Don't use 'skip to main content' - these roles are much more comprehensive.)
- Has a navigation section been identified on each page (role="navigation")?
- Do all navigation landmarks have a title including customer ARIA regions?
- Do Rich Internet Application widgets properly support ARIA and follow specified navigation rules?
- Do Rich Internet Application widgets follow the tab to container and arrow convention?
- Are keyboard mnemonic conventions consistent for context menus and a limited set of UI widgets?
- Are application and document areas in web pages properly defined to assist assistive technology with keyboard navigation? (A screen reader should not be in browse mode in a web application)
- Does UI Componentry provide rich hint, help, or tooltip text by establishing a relationship between the UI widget (could be a form control) and help information? (E.g. ARIA provides a describedBy and Tooltip relationship for these situations)
- Do all forms support extended ARIA form information (such as: required and invalid)?
- Are ARIA states and Properties synchonized with CSS style properties?
- Do UI components supporting multiple selections or options repeat option text?