Introduction to Computer Science

advertisement
Objectives
Understand the differences between user interfaces
and system interfaces
Explain why the user interface is the system to the
users
Discuss the importance of the three principles of
user-centered design
Describe the historical development of the field of
human-computer interaction (HCI)
Object-Oriented Analysis and Design with the Unified Process
2
Objectives (continued)
Describe the three metaphors of human-computer
interaction
Discuss how visibility and affordance affect
usability
Apply the eight golden rules of dialog design when
designing the user interface
List the key principles used in Web design
Define the overall system structure as a menu
hierarchy
Object-Oriented Analysis and Design with the Unified Process
3
Objectives (continued)
Write user-computer interaction scenarios as dialogs
Create storyboards to show the sequence of forms
used in a dialog
Use UML class diagrams and sequence diagrams to
document dialog designs
Design window forms and browser forms that are
used to implement a dialog
Object-Oriented Analysis and Design with the Unified Process
4
Overview
User interfaces handle inputs and outputs that
involve the system user directly
Design inputs and outputs involved for each use case
Interactions with the user and computer (HCI) can
be modeled with dialog designs
Use metaphors, standard guidelines, and UML
diagrams to design user interfaces
User-interface design occurs in each iteration
Address only a few use cases at a time
Object-Oriented Analysis and Design with the Unified Process
5
Identifying and Classifying
Inputs and Outputs
Inputs and outputs are defined early in order to:
Document key inputs/outputs in business cases
Identify actors
Define triggers and responses in an event table
Identify the system boundary in use case diagrams
Design use case descriptions and system sequence
diagrams
Design the user-interface layer
Define messages in a use case realization
Object-Oriented Analysis and Design with the Unified Process
6
User Versus System Interfaces
System interface
Involves inputs and outputs that require minimal
human intervention
User interface
Require user interaction to produce inputs and outputs
Most analysts separate design of system interfaces
from user interfaces
Requires different expertise and technologies
Object-Oriented Analysis and Design with the Unified Process
7
Understanding the User
Interface
To the end user, the user interface is the system itself
Physical devices, parts, or documents
Perceptual aspects including seeing, hearing, and
touching
Conceptual details about how to use the system
◘ Called the user’s model
HCI (human-computer interaction) studies end users
and their interactions with computers
Object-Oriented Analysis and Design with the Unified Process
8
Figure 11-1
Physical, perceptual, and conceptual aspects of the user interface
Object-Oriented Analysis and Design with the Unified Process
9
User-Centered Design
Technique that places user at center of the
development process
Focus early on users and their work
◘ Understand user styles and preferences
Evaluate designs to ensure usability
◘ Ease of learning and use dependent on type of user
Use iterative development
◘ Continually return to user requirements and
evaluating the system
Object-Oriented Analysis and Design with the Unified Process
10
Human-Computer Interaction
as a Field of Study
Evolved from human factor engineering
(ergonomics)
Important contributions by Xerox
Work on the usability of machines
Research at Xerox PARC led to first OO language
(Smalltalk)
First personal computer with GUI (Xerox Star)
Dependent on several disciplines
Object-Oriented Analysis and Design with the Unified Process
11
Figure 11-2
The fields contributing to the study of HCI
Object-Oriented Analysis and Design with the Unified Process
12
Metaphors for HumanComputer Interaction
Desktop
Interaction with a display screen that includes
objects commonly found on a desk
Document
Involves browsing and entering data on electronic
documents using hypertext and hypermedia
Dialog
Carrying on a conversation with the computer by
sending and receiving messages
Object-Oriented Analysis and Design with the Unified Process
13
Figure 11-3
The desktop metaphor based on direct manipulation,
shown on a display screen
Object-Oriented Analysis and Design with the Unified Process
14
Figure 11-4
The document metaphor shown as
hypermedia in a Web browser
Object-Oriented Analysis and Design with the Unified Process
15
Figure 11-5
The dialog metaphor expresses the concept that
the user and computer interact by sending messages
Object-Oriented Analysis and Design with the Unified Process
16
Figure 11-6
The user’s language
and the computer’s
language used to
implement an e-mail
application based on the
natural dialog between
manager and assistant
Object-Oriented Analysis and Design with the Unified Process
17
Guidelines for Designing User
Interfaces
Interface design guidelines must be followed for
the interface of any system
Two key principles (from HCI researcher Donald
Norman)
Visibility
◘ All controls should be visible and provide
immediate feedback to the user
Affordance
◘ Appearance of any control should suggest its
functionality
Object-Oriented Analysis and Design with the Unified Process
18
Figure 11-7
The eight golden rules for designing interactive interfaces
Object-Oriented Analysis and Design with the Unified Process
19
Documenting Dialog Designs
Inputs and outputs are obtained from use cases and
scenarios
Menus reflect the overall system structure from the
standpoint of the user
Each subsystem might be represented as a menu, with
each menu option representing a use case
Menus might have several versions based on user type
Menus should also include options that are not based
on use cases (i.e., system controls, user help)
Object-Oriented Analysis and Design with the Unified Process
20
Figure 11-8
One overall menu hierarchy
design for the RMO
customer support system
(not all users will have all of
these options available)
Object-Oriented Analysis and Design with the Unified Process
21
Dialogs and Storyboards
Several options for documenting dialogs (no de facto
standards exist)
List the key steps for each dialog with descriptions of
what the user and computer do at each step
Write out a human and computer conversation
◘ Used for complicated or uncertain requests
Use storyboarding to show a sequence of sketches of a
display screen during a dialog
◘ Initial design can be a general framework
Object-Oriented Analysis and Design with the Unified Process
22
Figure 11-9
Storyboard for the
DownTown Videos
rent videos dialog
Object-Oriented Analysis and Design with the Unified Process
23
Dialog Documentation with
UML Diagrams
Use case descriptions show a list of steps followed as
a user and computer interact
Activity diagrams document a user-computer dialog
for each use case
SSDs describe sequential actor-computer messages
Class diagrams add user-interface classes for forms
Detailed sequence diagram show users interacting
with specific objects in forms
Object-Oriented Analysis and Design with the Unified Process
24
Figure 11-10
A sequence diagram for the RMO Look up item availability dialog
with the ProductQueryForm added
Object-Oriented Analysis and Design with the Unified Process
25
Figure 11-11
A class diagram showing interface classes
making up the ProductQueryForm
Object-Oriented Analysis and Design with the Unified Process
26
Figure 11-12
A sequence diagram showing specific interface objects making up the ProductQueryForm for
the Look up item availability dialog (not all problem domain objects are shown)
Object-Oriented Analysis and Design with the Unified Process
27
Guidelines for Designing
Windows and Browser Forms
Principles the same for Microsoft Windows, XWindows (UNIX), and Macintosh environments
Two types of forms
Windows forms are programmed in a full-featured
programming language
Browser forms are programmed using HTML,
script languages, and server-side processing
◘ Companies can use the same browser form for both
intranet and Internet purposes
Object-Oriented Analysis and Design with the Unified Process
28
Form Layout and Formatting
Prototype various alternatives and allow users to
test them to ensure good layout and ease of use
Design considerations
Consistency of all forms in look and feel
Clear headings, labels, and logos
Distribution and order of data-entry fields and
buttons according to traditions
Judicious use of font sizes, highlighting, and colors
Object-Oriented Analysis and Design with the Unified Process
29
Figure 11-13
The RMO Product Detail form used to look up information about a
product, select size and color, and then add the product to an order
Object-Oriented Analysis and Design with the Unified Process
30
Data Keying and Data Entry
Objective: require as little data entry as possible
Text boxes accept keyboard data entry
List boxes contain a list of acceptable entries
Spin boxes display entries in a text box
Combo boxes permit users to enter a new value
Radio buttons enable the user to select one option
from a group
Check boxes enable the user to select multiple
options from a group
Object-Oriented Analysis and Design with the Unified Process
31
Figure 11-14
Examples of data-entry controls on an input form
Object-Oriented Analysis and Design with the Unified Process
32
Navigation and Support
Controls
Standard window interface contain controls for
navigation and window manipulation
Maximize, Minimize, and Close buttons
Scroll bars
Record selection and record navigation arrows
Designers should add controls to move screens,
close open windows, and to find and search
Browser forms also provide navigation and
support controls that applications should support
Object-Oriented Analysis and Design with the Unified Process
33
Help Support
Tutorials
Assists in training new users
Indexed list of help topics
Invoked through a keyword search or a help wizard
Context-sensitive help
Automatically displays the appropriate help topic
based on the location of the cursor
Object-Oriented Analysis and Design with the Unified Process
34
Ten Good Deeds in Web Design
Place organization’s name and logo on every page
and make the logo a link to he home page
Provide a search function if the site is more than
100 pages
Write straightforward headlines and page titles
Structure the page to facilitate reader scanning
Use hypertext to structure the content space
Object-Oriented Analysis and Design with the Unified Process
35
Ten Good Deeds in Web Design
(continued)
Use product photos with thumbnails on the
primary page
Use relevance-enhanced image reduction
Use link titles to provide users with a link preview
Ensure accessibility for users with disabilities
Do (Design) the same as everyone else
Object-Oriented Analysis and Design with the Unified Process
36
Web Site Design Principles
Web site design include many facets
A Web-design book by Joel Sklar suggests that
designers should focus on three aspects of Web
design
Designing for the computer medium
Designing the whole site
Designing for the user
Object-Oriented Analysis and Design with the Unified Process
37
Designing for the Computer
Medium
Craft the look and feel of the pages to take
advantage of the medium
Make the design portable
Design for low bandwidth
Plan for clear presentation and easy access to
information
Reformat information from other sources for
online presentation
Object-Oriented Analysis and Design with the Unified Process
38
Designing the Whole Site
Craft the look and feel of the pages to match the
impression desired by the organization
Create smooth transitions between Web pages
Lay out each page using a grid pattern to provide
visual structure
Leave a reasonable amount of blank space on each
space between groups of information
Object-Oriented Analysis and Design with the Unified Process
39
Designing for the User
Design for dynamic interaction
Guide the user’s eye to important information
Keep a flat hierarchy
Use hypertext to facilitate navigation
Do not clutter the pages
Design for accessibility for a diverse group of users
Object-Oriented Analysis and Design with the Unified Process
40
Designing Dialogs for Rocky
Mountain Outfitters
Focus on one specific dialog
Phone-order sales for customers
Scenario: Phone order representative creates new
order
Target environment: Representative’s Windows PC
Refer to requirement models
Use case description
Activity diagram
System sequence diagram
Object-Oriented Analysis and Design with the Unified Process
41
Dialog Design for the RMO
Phone-Order Representatives
Coordinate user-interface design with the
processing design from the use case realization
Write a basic dialog between the computer and user
Refine the list of forms that will be required
Define a design concept for the flow of information
from form to form
Modify designs through iterations to achieve more
flexibility and meet user needs
Object-Oriented Analysis and Design with the Unified Process
42
Figure 11-15
A design concept for the sequential
concept to the Create new order dialog
Object-Oriented Analysis and Design with the Unified Process
43
Figure 11-16
A design concept for an order-centered
approach to the Create new order dialog
Object-Oriented Analysis and Design with the Unified Process
44
a) The Main Menu form
b) The Order Summary form
Figure 11-17
Prototype forms for an order-centered approach to the dialog
Object-Oriented Analysis and Design with the Unified Process
45
Dialog Design for the RMO
Web Site
The Web site version provides more information,
flexibility, and ease of use
Browsing capabilities, pictures, organized display
of information, user preferences
Follow guidelines for visibility and affordance
Use a well thought-out visual theme
Favor speed over too much animation or fancy
graphics
Emphasize direct customer interaction
Object-Oriented Analysis and Design with the Unified Process
46
Figure 11-18
Rocky Mountain Outfitters’ home page
Object-Oriented Analysis and Design with the Unified Process
47
Figure 11-20
The shopping cart page from the Rocky Mountain Outfitter Web site
Object-Oriented Analysis and Design with the Unified Process
48
Summary
To the user, the user interface is the system
Design the interaction between the user and the
computer (HCI)
Define an overall user-interface concept for the
system early in the project
Focus on users and their work
Ensure usability
Apply iterative development
Object-Oriented Analysis and Design with the Unified Process
49
Summary (continued)
Metaphors to describe the user interface
Dialog
◘ Emphasizes the interaction between the user and
computer
Document
Desktop
Interface design guidelines and standards
Norman’s visibility and affordance guidelines
Shneiderman’s eight golden rules
Object-Oriented Analysis and Design with the Unified Process
50
Summary (continued)
Dialog design
Identify dialogs based on use cases
Add dialogs and designs for integrity controls, user
preferences, and menu hierarchies
Tools include dialog sequence, storyboards, and
sequence, collaboration, and class diagrams
Form design (window and browser)
Use guidelines for layout, controls, and navigation
Web forms require additional guidelines
Object-Oriented Analysis and Design with the Unified Process
51
Download