QA Labs Inc.
Issue #25 - March 2004
QA Labs Testing Treats
services@qalabs.com  -  http://www.qalabs.com
 Reduce costs - Take advantage of lower labour costs and today's exchange rate. Make the choice to hire QA Labs Inc.

Archives... Archives of this newsletter along with other on-line resources are available on our website.


Test Earlier... It is a well-established fact that the sooner a defect is found the less expensive it is to fix. Early involvement also allows evaluation of important planning, design, and development decisions with respect to how these decisions aid or impair the testability of the application.



Outsource Testing... We have the facilities and the people - you have the software. We can assist your in-house test team by performing system / compatibility testing, functionality testing, usability testing, performance testing, and localization testing to help you make sure you're ready to go to market.



Regression Testing... Outsource your regression testing and keep your software reliable. Working in parallel with your in-house team, we can help ensure that after the latest additions and changes your software continues to work across your supported configurations: operating systems, processors, browsers, networks, etc. with effective test plans, leveraged automation and custom facilities.



TX Packages... Do you need short-term test resources? Do you want to try outsourced test execution? QA Labs' Test Execution Packages give you a zero ramp-up, zero overhead, full reporting solution right at your fingertips.



Roadmaps... Improve product quality and reduce support costs with a Roadmap to Quality. QA Labs can investigate your current project workflows and tools to produce a report of recommendations and Quick Wins tailored to you - all in parallel to your current ship cycle and at a low fixed cost.



Tool Choices... Specific selection criteria in advance of a significant software purchase are crucial. QA Labs has the expertise required to provide you with an objective evaluation of the commercial tools that may best fit your requirements. Before you commit valuable time and money, let us do the evaluation that will let you make the best decision.

QA Labs brings you practical tips and tools on testing, quality assurance (QA), and related topics through this monthly e-newsletter.

Event Announcement: QA Labs will be attending the 13th annual ASI Exchange this March 9, 2004 at Enterprise Hall, Plaza of Nations, Vancouver, BC.


FEATURE ARTICLE

Evaluating UI Without Users

User involvement is one of the major factors in designing UI for software. However, as much as we would like the users to be involved, user devotion to a project is never a free or unlimited resource. To maximize the benefit of their involvement, the design should be as free as possible of trivial bugs so that the users do not have to waste time encountering and overcoming these issues during the evaluation. [Task-Centered User Interface Design - A Practical Introduction, C. Lewis, J. Rieman, 1994]

Also, performing an evaluation with just user participants will not reveal all types of issues. For example, an interface used by thousands of individuals and tested with only a few users will not uncover problems that the evaluating users and the tests they perform don't happen to encounter. It also won't uncover problems that users might have after they get more experience with the system.

Human-Computer Interaction (HCI)

Software is created for users. Human-Computer Interaction (HCI) is a multidisciplinary study of people, computer technology, and how they influence each other. Not only does it touch on the technology and design, it also involves the studies of cognitive psychology and sociology. Understanding HCI principles and applying them to the UI design will make the software more usable for people.

Understanding Human Factors

Human factors - human abilities, human limitations, and other human characteristics from a physical and psychological perspective that are relevant to the design, operations, and maintenance of complex systems. [Northrop Grumman]

It's a common mistake for software projects to focus more on the technology aspects and neglect the relevant human factors and cognitive impact of the UI design.

"Humans are limited in their capacity to process information." [Human-Computer Interaction, Dix, Finlay, Abowd and Beale, 1998] These limitations refer to the capabilities of the mental processes used when gathering knowledge. UI designers must make sure to take these limitations into consideration when performing their work.

Memory

  • Short-term memory is limited in capacity (~7 units) and it can be maintained for about 20 to 30 seconds.
  • Long-term memory is unlimited in capacity and it is permanent in duration.
  • It is faster to retrieve frequently accessed long term memory than less frequently accessed information from long term memory.

Perception

  • Human perception is selective. When a lot of information is presented, our brain will filter the information to intake. It is easier to recognize and interpret objects that are familiar based on memory.

Learning

  • Familiar, structured and organized information is easier to process.
  • Smaller units of information are easier to learn.
  • Because short term memory is limited, we select what we want to learn or store in our long term memory.

Beginning the Evaluation?

Know Your Users

Although we share the same model of information processing system (the human brain), different users have different ways of learning and form different conceptual and mental models about what they see. Therefore, it is important to know:

  • Potential users' job and tasks.
  • Potential users' knowledge and experience.
  • Potential users' physical and psychological characteristics.
  • Potential users' physical environment.

Human Factors Evaluation

The human factors in HCI can be used as the driving force behind a component-based review in producing a more 'user friendly' UI.

Grouping

  • Group information - A group is treated as a single unit in short-term memory.
  • Place commonly used buttons closer and make them larger in order to minimize hand and eye movement.

E.g. Font style, font type, font size, alignment controls are grouped in the Formatting toolbar.

Relationship

  • Provide visual structure and organization of objects on screen.
  • Use pattern recognition.
  • Use relationship that is familiar to the user.
  • Use metaphor and knowledge that can be transferred from the real world but, do not duplicate the limitation in the real world to software.

E.g. The graphics used for Play, Stop, Pause, etc. buttons in a CD Player software are similar to the ones used on an actual CD Player or tape deck.

Clarity

  • Avoid using terms that are hard to distinguish in sound.
  • Map only a one control to one piece of functionality.
  • Avoid making the user learn more than what is necessary to perform certain functions.
  • Avoid testing user's intelligence.
  • Minimize the need of for the user to memorize information by displaying information on screen for as long as the user needs it.

E.g. On a multi screen application, buttons with the same name should perform the same functionality.

Cues

  • Provide visual cues.
  • Use pictures or icons - A picture is worth a thousand words.
  • Use sounds to get the user's attention.
  • Make information and controls visible.

E.g. Buttons are disabled instead of invisible when they are not available for use.

Cognitive Walkthrough

In addition to the more general design evaluation using human factors, another way to evaluate the UI is by performing a cognitive walkthrough. The cognitive walkthrough is a technique for evaluating the design of a user interface, with special attention to how well the interface supports "exploratory learning," i.e., first-time use without formal training. [Usability Evaluation with the Cognitive Walkthrough, John Rieman, Marita Franzke, and David Redmiles]. Walkthroughs should be done when the interface begins to grow and when components begin to interact with each other.

Lewis and Rieman suggested the following information is needed for a walkthrough:

  • A description or a prototype of the interface.
  • A task description.
  • A complete list of actions needed to complete the task.
  • An idea of who the users will be.

During a walkthrough, the evaluator will perform the task using the prototype given. This is a good way of imagining the user's thoughts and actions when using the interface.

Heuristics Evaluation

In addition to the cognitive approach to evaluate UI, another approach is by heuristic evaluation. Heuristic evaluation involves having a small set of evaluators (not users) examine the interface and judge its compliance with recognized usability principles. [Heuristic Evaluation, Jakob Nielsen]

Here are some recommended heuristics:

  • Be consistent.
  • Provide clear exit.
  • Prevent error if possible.
  • Provide clear error message in easy to understand language.
  • Use familiar language and logic that it is easier to learn and understand. Avoid using technical jargons.
  • Display information on screen until it is not needed by the user.
  • Provide feedback to the user within a reasonable timeframe.
  • Account for both experienced and inexperienced user.
  • Irrelevant or rarely used information should not be displayed unless the user asks for it.
  • Provide documentation.

Summary

A good non-user evaluation, or expert review, using established usability assessment principles can catch problems that an evaluation with only a few users may not reveal. If some key evaluation and design guidelines are followed the critical problems can be detected and resolved.

Of course, performing just an evaluation without users won't uncover all the problems either. Once the evaluation without users is complete, and appropriate design changes are made, the next step will be to get the users to participate.

About QA Labs Inc...

QA Labs is a powerful player on your team supplying the critical competitive advantage you need today. Our mission is to help you make your software products succeed in the marketplace, whatever the climate. We work with you to make wise choices that reflect project constraints, industry trends, and business considerations. We are the largest independent software quality assurance and testing service provider in Canada. For more information, please visit www.qalabs.com.

Contact Us...

QA Labs Inc.
#470 - 1122 Mainland St.
Vancouver, BC, Canada, V6B 5L1

Tel: 604.605.0111 x111
Fax: 604.484.2680
Email: services@qalabs.com
Web: http://www.qalabs.com


Subscribe to this newsletter at our website.

Unsubscribe from this newsletter at our website.

Copyright © 1999-2005 QA Labs Inc. All rights Reserved.