Usability
for Embedded Systems
2 Day
Course
Ease of
use can be a major selling factor in a modern product. As embedded
systems become more sophisticated, making new features intuitive
is a huge challenge. This course teaches the software engineer
or user interface designer the skills required to design a new
user interface or recognise where an existing interface can be
improved. The class strikes a balance between concrete topics
such as menus and icons, and providing the student with general
principles for good design, such as direct manipulation and task
analysis.
Both graphical
and non-graphical interfaces are considered, and examples discussed
include industrial equipment, medical equipment and consumer devices.
Sample
slides, with commentary are available for the icons
and equal opportunity sections
of this course.
Related
magazine articles, authored by the course presenter, can be found
at Usability Articles.
Audience
Software engineers often have
to address many usability issues during product development. This
is especially true if there are no dedicated usability specialists
on the project.
Content
DEFINITIONS AND PRINCIPLES
- Mental
Models
- Directed
and undirected interfaces
- Multi-tasking
- Equal
Opportunity
- Associative
user operations
- Consistency
- Modes
- Robustness
- Affordance
- Object
oriented design
SPECIFYING THE USER INTERFACE
- Requirements - language of specification
- Requirements as principles and requirements
for specific cases
- Requirements relationship with previous
products and competitors
- Inspections
- Walkthroughs - paper based, prototype
based, whiteboard based.
DEFINING THE USER
- Theory X and Theory Y
- User motivations and options
- Trusting the user
- Industrial vs. commercial vs. consumer
goods
- Pacing and Timing
GRAPHICS
- Layout of GUI relative to other
controls - arrow keys, touchscreen, soft-keys
- Graphical input and direct manipulation
- Use of color and grayscales
- Graphical idioms on the desktop
that rarely work on embedded devices
- Imitating mechanical controls on
a GUI.
- Dividing the display into windows
and pages
- Menus
- Wizards for user input
- Moving graphs and other animations
- Displays with very little physical
space
- Text input (without a standard keyboard)
- Internationalization
ICONS
- How
to draw icons
- Use on graphics screen versus print
on device. Use as input vs. use as output
- Reinforcing icons. Drawing attention
to the important part of an icon.
PROTOTYPES
- Prototyping environments - PC packages
- How the development environment
can influence the result
- User trials with prototypes - hazards
MECHANICAL CONTROLS
- Disadvantage of software in the
loop
- Imitating controls on pre-software
devices
- Layout of controls and displays
- Multi-Threaded interfaces
ERROR MANAGEMENT
- User Error messages
- Undo operations
- Inputs that are temporarily wrong
during the data input
- Online help - pros and cons
- System failures
MONITORING
- Alarms and alerting users attention
- Barographs, linegraphs and other
moving indicators
- Distance viewing
- Perceived and real accuracy
- Minimalist views versus heavily
decorated data.
SAFETY AND SECURITY
- Roles for safety and security
- mechanical interlocks
- Extending FMEA to user actions
- Usability vs. Safety
- Usability vs. Security
TESTING
- Testing the interface is different
to testing the software
- Defining the test team role in relation
to usability
|