This document discusses user interface design. It covers three areas of interface design: between software components, software and non-human systems, and the human user interface. The document outlines golden rules for user interface design like placing the user in control and making the interface consistent. It also discusses analyzing users, tasks, and display content. The interface design process involves analysis, defining objects/actions, modeling states/events, and evaluating prototypes.
3. Interface Design
Interface design focuses on three areas of concern:
1) The design of interface between software components
2) The design of interfaces between the software and other
nonhuman producers and consumers of information.
3) The design of the interface between a human (ie the user)
and the computer.
Focus on the third interface design category – User
Interface Design.
3
4. Golden Rules
Place the user in control
Reduce the user’s memory load
Make the interface consistent
4
5. Place the User in Control
1. Define interaction modes in a way that does not force a
user into unnecessary or undesired actions.
2. Provide for flexible interaction.
3. Allow user interaction to be interruptible and
undoable.
4. Streamline interaction as skill levels advance and allow
the interaction to be customized.
5. Hide technical internals from the casual user.
6. Design for direct interaction with objects that appear
5
6. Reduce the User’s Memory Load
1. Reduce demand on short-term memory.
2. Establish meaningful defaults.
3. Define shortcuts that are intuitive.
4. The visual layout of the interface should
be based on a real world metaphor.
5. Disclose information in a progressive
fashion.
6
7. Make the Interface Consistent
1. Allow the user to put the current task
into a meaningful context.
2. Maintain consistency across a family of
applications.
3. If past interactive models have created
user expectations, do not make changes
unless there is a compelling reason to do
so.
7
8. User Interface Design Models
Four models come into existence when a user
interface is to be analyzed and designed.
1.Human engineer (or software engineer) establishes
a user model.
2.Software engineer creates a design model.
3.End-users develops a mental image that is often
called the user’s mental model or the system
perception.
4.Implementers of the system create a
implementation mode.
8
9. User Interface Design Models
User model — a profile of all end users of the
system
Design model — a design realization of the user
model
Mental model (system perception) — the user’s
mental image of what the interface is
Implementation model — the interface “look and
feel” coupled with supporting information that
describe interface syntax and semantics
9
11. Interface Analysis
Interface analysis means understanding
1. the people (end-users) who will interact
with the system through the interface;
2. The tasks that end-users must perform to
do their work,
3. The content that is presented as part of
the interface
4. The environment in which these tasks will
11
be conducted.
12. User
Analysis
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
Are users trained professionals, technician, clerical, or manufacturing workers?
What level of formal education does the average user have?
Are the users capable of learning from written materials or have they expressed a desire
for classroom training?
Are users expert typists or keyboard phobic?
What is the age range of the user community?
Will the users be represented predominately by one gender?
How are users compensated for the work they perform?
Do users work normal office hours or do they work until the job is done?
Is the software to be an integral part of the work users do or will it be used only
occasionally?
What is the primary spoken language among users?
What are the consequences if a user makes a mistake using the system?
Are users experts in the subject matter that is addressed by the system?
Do users want to know about the technology the sits behind the interface?
12
13. Task Analysis and Modeling
Task Analysis answers the following questions …
What work will the user perform in specific circumstances?
What tasks and subtasks will be performed as the user does the work?
What specific problem domain objects will the user manipulate as work is
performed?
What is the sequence of work tasks—the workflow?
What is the hierarchy of tasks?
Use-cases define basic interaction
Task elaboration refines interactive tasks
Object elaboration identifies interface objects (classes)
Workflow analysis defines how a work process is completed when several
people (and roles) are involved
Hierarchical representation the hierarchy is derived by a stepwise elaboration
of each task identified for the user
13
14. Swimlane Diagram
p at ien t
p h armacist
r e q u e st s t h at a
p r e scr ip t io n b e r e f ille d
d e t e r m in e s st at u s o f
p r e scr ip t io n
no ref ills
remaining
ref ills
remaining
ch e cks in v e n t o r y f o r
r e f ill o r alt e r n at iv e
r e ce iv e s o u t o f st o ck
n o t if icat io n
out of st ock
p h ysician
ch e cks p at ie n t
r e co r d s
approv es ref ill
ref ill not
allowed
e v alu at e s alt e r n at iv e
m e d icat io n
alt ernat iv e
av ailable
in st ock
r e ce iv e s t im e / d at e
t o p ick u p
p icks u p
p r e scr ip t io n
none
f ills
p r e scr ip t io n
r e ce iv e s r e q u e st t o
co n t act p h y sician
Fig u re 1 2 .2 Sw imlan e d iag ram fo r p rescrip t io n refill fu n ct io n
14
15. Analysis of Display Content
1.
2.
3.
4.
5.
6.
7.
8.
Are different types of data assigned to consistent geographic locations on
the screen (e.g., photos always appear in the upper right hand corner)?
Can the user customize the screen location for content?
Is proper on-screen identification assigned to all content?
If a large report is to be presented, how should it be partitioned for ease of
understanding?
Will mechanisms be available for moving directly to summary information
for large collections of data.
Will graphical output be scaled to fit within the bounds of the display device
that is used?
How will color to be used to enhance understanding?
How will error messages and warning be presented to the user?
15
16. I nt er f ace Design St eps
Using information developed during interface
analysis, define interface objects and actions
(operations).
Define events (user actions) that will cause the state
of the user interface to change. Model this behavior.
Depict each interface state as it will actually look to
the end-user.
Indicate how the user interprets the state of the
system from information provided through the
interface.
16
17. I nt er f ace Design Pat t er ns
Patterns are available for
The complete UI
Page layout
Forms and input
Tables
Direct data manipulation
Navigation
Searching
Page elements
e-Commerce
www.hcipatterns.org
17
18. Design I ssues
Response time
Help facilities
Error handling
Menu and command labeling
Application accessibility
Internationalization
18