user interface software projectsdjp3/classes/2012_01_inf134/lectures/...•where users instruct a...

45
User Interface Software Projects The author of this work license copyright to it according to the Creative Commons Attribution-Noncommercial-Share Alike 3.0 United States License http://creativecommons.org/licenses/by-nc-sa/3.0/us/ Assoc. Professor Donald J. Patterson INF 134 Winter 2012 Monday, February 6, 12

Upload: others

Post on 13-Jun-2020

0 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: User Interface Software Projectsdjp3/classes/2012_01_INF134/Lectures/...•Where users instruct a system and tell it what to do • e.g. tell the time, print a file, save a file •

User Interface Software Projects

The author of this work license copyright to it according to theCreative Commons Attribution-Noncommercial-Share Alike 3.0 United States Licensehttp://creativecommons.org/licenses/by-nc-sa/3.0/us/

Assoc. Professor Donald J. PattersonINF 134 Winter 2012

Monday, February 6, 12

Page 2: User Interface Software Projectsdjp3/classes/2012_01_INF134/Lectures/...•Where users instruct a system and tell it what to do • e.g. tell the time, print a file, save a file •

Understanding and

Conceptualizing Interaction

Content derived from Rogers, Sharp and Preece http://www.id-book.com/

Monday, February 6, 12

Page 3: User Interface Software Projectsdjp3/classes/2012_01_INF134/Lectures/...•Where users instruct a system and tell it what to do • e.g. tell the time, print a file, save a file •

• Instructing

• issuing commands and selecting options

• Conversing

• interacting with a system as if having a conversation

• Manipulating

• interacting with objects in a virtual or physical space by

manipulating them

• Exploring

• moving through a virtual environment or a physical

space

Interaction types

Monday, February 6, 12

Page 4: User Interface Software Projectsdjp3/classes/2012_01_INF134/Lectures/...•Where users instruct a system and tell it what to do • e.g. tell the time, print a file, save a file •

• Where users instruct a system and tell it what to do

• e.g. tell the time, print a file, save a file

• Very common conceptual model, underlying a

diversity of devices and systems

• e.g. word processors, VCRs, vending machines

• Main benefit is that instructing supports quick and

efficient interaction

• good for repetitive kinds of actions performed on

multiple objects

Instructing

Monday, February 6, 12

Page 5: User Interface Software Projectsdjp3/classes/2012_01_INF134/Lectures/...•Where users instruct a system and tell it what to do • e.g. tell the time, print a file, save a file •

Which is easier and why?

Monday, February 6, 12

Page 6: User Interface Software Projectsdjp3/classes/2012_01_INF134/Lectures/...•Where users instruct a system and tell it what to do • e.g. tell the time, print a file, save a file •

Which is easier and why?

Monday, February 6, 12

Page 7: User Interface Software Projectsdjp3/classes/2012_01_INF134/Lectures/...•Where users instruct a system and tell it what to do • e.g. tell the time, print a file, save a file •

• Underlying model of having a conversation with

another human

• Range from simple voice recognition menu-driven

systems to more complex ‘natural language’ dialogs

• Examples include timetables, search engines, advice-

giving systems, help systems

• Also virtual agents, toys and pet robots designed to

converse with you

Conversing

Monday, February 6, 12

Page 9: User Interface Software Projectsdjp3/classes/2012_01_INF134/Lectures/...•Where users instruct a system and tell it what to do • e.g. tell the time, print a file, save a file •

• Allows users, especially novices and technophobes, to

interact with the system in a way that is familiar

• makes them feel comfortable, at ease and less

scared

• Misunderstandings can arise when the system does not

know how to parse what the user says

• User doesn’t know what the system is capable of

Pros and cons of conversational model

Monday, February 6, 12

Page 10: User Interface Software Projectsdjp3/classes/2012_01_INF134/Lectures/...•Where users instruct a system and tell it what to do • e.g. tell the time, print a file, save a file •

• Involves dragging, selecting, opening, closing and

zooming actions on virtual objects

• Exploit’s users’ knowledge of how they move and

manipulate in the physical world

• Can involve actions using physical controllers (e.g. Wii) or

air gestures (e.g. Kinect) to control the movements of an

on screen avatar

• Tagged physical objects (e.g. balls) that are manipulated

in a physical world result in physical/digital events (e.g.

animation)

Manipulating

Monday, February 6, 12

Page 11: User Interface Software Projectsdjp3/classes/2012_01_INF134/Lectures/...•Where users instruct a system and tell it what to do • e.g. tell the time, print a file, save a file •

• Shneiderman (1983) coined the term DM, came from his

fascination with computer games at the time

• Continuous representation of objects and actions of

interest

• Physical actions and button pressing instead of issuing

commands with complex syntax

• Rapid reversible actions with immediate feedback on

object of interest

Direct Manipulation

Monday, February 6, 12

Page 12: User Interface Software Projectsdjp3/classes/2012_01_INF134/Lectures/...•Where users instruct a system and tell it what to do • e.g. tell the time, print a file, save a file •

• Novices can learn the basic functionality quickly

• Experienced users can work extremely rapidly to carry

out a wide range of tasks, even defining new functions

• Intermittent users can retain operational concepts over

time

• Error messages rarely needed

• Users can immediately see if their actions are furthering

their goals and if not do something else

• Users experience less anxiety

• Users gain confidence and mastery and feel in control

Why are DM interfaces so enjoyable?

Monday, February 6, 12

Page 13: User Interface Software Projectsdjp3/classes/2012_01_INF134/Lectures/...•Where users instruct a system and tell it what to do • e.g. tell the time, print a file, save a file •

• Some people take the metaphor of direct manipulation too

literally

• Not all tasks can be described by objects and not all actions

can be done directly

• Some tasks are better achieved through delegating

• e.g. spell checking

• Can become screen space ‘gobblers’

• Moving a mouse around the screen can be slower than

pressing function keys to do same actions

What are the disadvantages with DM?

Monday, February 6, 12

Page 14: User Interface Software Projectsdjp3/classes/2012_01_INF134/Lectures/...•Where users instruct a system and tell it what to do • e.g. tell the time, print a file, save a file •

• Involves users moving through virtual or physical

environments

• Physical environments with embedded sensor technologies

• Context aware

Exploring

Monday, February 6, 12

Page 15: User Interface Software Projectsdjp3/classes/2012_01_INF134/Lectures/...•Where users instruct a system and tell it what to do • e.g. tell the time, print a file, save a file •

• Direct manipulation is good for ‘doing’ types of tasks, e.g.

designing, drawing, flying, driving, sizing windows

• Issuing instructions is good for repetitive tasks, e.g. spell-

checking, file management

• Having a conversation is good for children, computer-

phobic, disabled users and specialised applications (e.g.

phone services)

• Hybrid conceptual models are often employed, where

different ways of carrying out the same actions is supported

at the interface - but can take longer to learn

Which conceptual model is best?

Monday, February 6, 12

Page 16: User Interface Software Projectsdjp3/classes/2012_01_INF134/Lectures/...•Where users instruct a system and tell it what to do • e.g. tell the time, print a file, save a file •

• Interaction type:

• what the user is doing when interacting with a system,

e.g. instructing, talking, browsing or other

• Interface type:

• the kind of interface used to support the mode, e.g.

speech, menu-based, gesture

Conceptual models: interaction and interface

Monday, February 6, 12

Page 17: User Interface Software Projectsdjp3/classes/2012_01_INF134/Lectures/...•Where users instruct a system and tell it what to do • e.g. tell the time, print a file, save a file •

• Command

• Speech

• Data-entry

• Form fill-in

• Query

• Graphical

• Web

• Pen

• Augmented reality

• Gesture

• (for more see chapter 6)

Many kinds of interface types available…

Monday, February 6, 12

Page 18: User Interface Software Projectsdjp3/classes/2012_01_INF134/Lectures/...•Where users instruct a system and tell it what to do • e.g. tell the time, print a file, save a file •

• Important to have a good understanding of the problem

space

• Fundamental aspect of interaction design is to develop a

conceptual model

• Interaction modes and interface metaphors provide a

structure for thinking about which kind of conceptual model

to develop

• Interaction styles are specific kinds of interfaces that are

instantiated as part of the conceptual model

• Paradigms, theories, models and frameworks can also

shape a conceptual model

Summary

Monday, February 6, 12

Page 19: User Interface Software Projectsdjp3/classes/2012_01_INF134/Lectures/...•Where users instruct a system and tell it what to do • e.g. tell the time, print a file, save a file •

Interactive Paper Interfaces

Content derived from Buxton, Sketching User Experiences/

Monday, February 6, 12

Page 20: User Interface Software Projectsdjp3/classes/2012_01_INF134/Lectures/...•Where users instruct a system and tell it what to do • e.g. tell the time, print a file, save a file •

• It is a part of a participatory design process

• General Goal:

• Use rapid prototyping to explore the design space

• Works well with brainstorming

• Important that it be sketched

• Sketched is not just about drawing, it’s also an attitude

Interactive Paper Interfaces

Monday, February 6, 12

Page 21: User Interface Software Projectsdjp3/classes/2012_01_INF134/Lectures/...•Where users instruct a system and tell it what to do • e.g. tell the time, print a file, save a file •

Design Process

What is wanted?

Implement and Deploy

Analysis

Design

Prototyping

Evaluation

Monday, February 6, 12

Page 23: User Interface Software Projectsdjp3/classes/2012_01_INF134/Lectures/...•Where users instruct a system and tell it what to do • e.g. tell the time, print a file, save a file •

What is paper prototyping anyway?

Monday, February 6, 12

Page 24: User Interface Software Projectsdjp3/classes/2012_01_INF134/Lectures/...•Where users instruct a system and tell it what to do • e.g. tell the time, print a file, save a file •

• Why sketching?

• Quick

• Timely

• Inexpensive

• Disposable

• Plentiful

• Clear Vocabulary

• Distinct Gesture

• Minimal Detail

• Appropriate degree of refinement

• Suggest and explore, not confirm

• Ambiguity

Interactive Paper Interfaces

Quick to make (at least

after some practice)

Monday, February 6, 12

Page 25: User Interface Software Projectsdjp3/classes/2012_01_INF134/Lectures/...•Where users instruct a system and tell it what to do • e.g. tell the time, print a file, save a file •

• Why sketching?

• Quick

• Timely

• Inexpensive

• Disposable

• Plentiful

• Clear Vocabulary

• Distinct Gesture

• Minimal Detail

• Appropriate degree of refinement

• Suggest and explore, not confirm

• Ambiguity

Interactive Paper Interfaces

Quick to make (at least

after some practice)

Monday, February 6, 12

Page 26: User Interface Software Projectsdjp3/classes/2012_01_INF134/Lectures/...•Where users instruct a system and tell it what to do • e.g. tell the time, print a file, save a file •

• Why sketching?

• Quick

• Timely

• Inexpensive

• Disposable

• Plentiful

• Clear Vocabulary

• Distinct Gesture

• Minimal Detail

• Appropriate degree of refinement

• Suggest and explore, not confirm

• Ambiguity

Interactive Paper Interfaces

Can be provided when

needed

Monday, February 6, 12

Page 27: User Interface Software Projectsdjp3/classes/2012_01_INF134/Lectures/...•Where users instruct a system and tell it what to do • e.g. tell the time, print a file, save a file •

• Why sketching?

• Quick

• Timely

• Inexpensive

• Disposable

• Plentiful

• Clear Vocabulary

• Distinct Gesture

• Minimal Detail

• Appropriate degree of refinement

• Suggest and explore, not confirm

• Ambiguity

Interactive Paper Interfaces

Can be provided when

needed

Monday, February 6, 12

Page 28: User Interface Software Projectsdjp3/classes/2012_01_INF134/Lectures/...•Where users instruct a system and tell it what to do • e.g. tell the time, print a file, save a file •

• Why sketching?

• Quick

• Timely

• Inexpensive

• Disposable

• Plentiful

• Clear Vocabulary

• Distinct Gesture

• Minimal Detail

• Appropriate degree of refinement

• Suggest and explore, not confirm

• Ambiguity

Interactive Paper Interfaces

A sketch is cheap. High

cost inhibits design (early

in the process)

Monday, February 6, 12

Page 29: User Interface Software Projectsdjp3/classes/2012_01_INF134/Lectures/...•Where users instruct a system and tell it what to do • e.g. tell the time, print a file, save a file •

• Why sketching?

• Quick

• Timely

• Inexpensive

• Disposable

• Plentiful

• Clear Vocabulary

• Distinct Gesture

• Minimal Detail

• Appropriate degree of refinement

• Suggest and explore, not confirm

• Ambiguity

Interactive Paper Interfaces

A sketch is cheap. High

cost inhibits design (early

in the process)

Monday, February 6, 12

Page 30: User Interface Software Projectsdjp3/classes/2012_01_INF134/Lectures/...•Where users instruct a system and tell it what to do • e.g. tell the time, print a file, save a file •

• Why sketching?

• Quick

• Timely

• Inexpensive

• Disposable

• Plentiful

• Clear Vocabulary

• Distinct Gesture

• Minimal Detail

• Appropriate degree of refinement

• Suggest and explore, not confirm

• Ambiguity

Interactive Paper Interfaces

If you can’t afford to throw it

away it probably isn’t a sketch.

The investment is in the

concept, not the art. It’s value

depends on its disposability.

Monday, February 6, 12

Page 31: User Interface Software Projectsdjp3/classes/2012_01_INF134/Lectures/...•Where users instruct a system and tell it what to do • e.g. tell the time, print a file, save a file •

• Why sketching?

• Quick

• Timely

• Inexpensive

• Disposable

• Plentiful

• Clear Vocabulary

• Distinct Gesture

• Minimal Detail

• Appropriate degree of refinement

• Suggest and explore, not confirm

• Ambiguity

Interactive Paper Interfaces

If you can’t afford to throw it

away it probably isn’t a sketch.

The investment is in the

concept, not the art. It’s value

depends on its disposability.

Monday, February 6, 12

Page 32: User Interface Software Projectsdjp3/classes/2012_01_INF134/Lectures/...•Where users instruct a system and tell it what to do • e.g. tell the time, print a file, save a file •

• Why sketching?

• Quick

• Timely

• Inexpensive

• Disposable

• Plentiful

• Clear Vocabulary

• Distinct Gesture

• Minimal Detail

• Appropriate degree of refinement

• Suggest and explore, not confirm

• Ambiguity

Interactive Paper Interfaces

Sketched interfaces tend to

work best as a series, in context

with many other sketches.

Monday, February 6, 12

Page 33: User Interface Software Projectsdjp3/classes/2012_01_INF134/Lectures/...•Where users instruct a system and tell it what to do • e.g. tell the time, print a file, save a file •

• Why sketching?

• Quick

• Timely

• Inexpensive

• Disposable

• Plentiful

• Clear Vocabulary

• Distinct Gesture

• Minimal Detail

• Appropriate degree of refinement

• Suggest and explore, not confirm

• Ambiguity

Interactive Paper Interfaces

Sketched interfaces tend to

work best as a series, in context

with many other sketches.

Monday, February 6, 12

Page 34: User Interface Software Projectsdjp3/classes/2012_01_INF134/Lectures/...•Where users instruct a system and tell it what to do • e.g. tell the time, print a file, save a file •

• Why sketching?

• Quick

• Timely

• Inexpensive

• Disposable

• Plentiful

• Clear Vocabulary

• Distinct Gesture

• Minimal Detail

• Appropriate degree of refinement

• Suggest and explore, not confirm

• Ambiguity

Interactive Paper Interfaces

The way a sketch is drawn

distinguishes it from other ways

of rendering. The style signifies

to it’s viewers that it’s “just a

sketch”

Monday, February 6, 12

Page 35: User Interface Software Projectsdjp3/classes/2012_01_INF134/Lectures/...•Where users instruct a system and tell it what to do • e.g. tell the time, print a file, save a file •

• Why sketching?

• Quick

• Timely

• Inexpensive

• Disposable

• Plentiful

• Clear Vocabulary

• Distinct Gesture

• Minimal Detail

• Appropriate degree of refinement

• Suggest and explore, not confirm

• Ambiguity

Interactive Paper Interfaces

The way a sketch is drawn

distinguishes it from other ways

of rendering. The style signifies

to it’s viewers that it’s “just a

sketch”

Monday, February 6, 12

Page 36: User Interface Software Projectsdjp3/classes/2012_01_INF134/Lectures/...•Where users instruct a system and tell it what to do • e.g. tell the time, print a file, save a file •

• Why sketching?

• Quick

• Timely

• Inexpensive

• Disposable

• Plentiful

• Clear Vocabulary

• Distinct Gesture

• Minimal Detail

• Appropriate degree of refinement

• Suggest and explore, not confirm

• Ambiguity

Interactive Paper Interfaces

There is a fluidity to sketches

that gives them a sense of

openness and freedom. They

are not precise like a blueprint

or engineering drawing.

Monday, February 6, 12

Page 37: User Interface Software Projectsdjp3/classes/2012_01_INF134/Lectures/...•Where users instruct a system and tell it what to do • e.g. tell the time, print a file, save a file •

• Why sketching?

• Quick

• Timely

• Inexpensive

• Disposable

• Plentiful

• Clear Vocabulary

• Distinct Gesture

• Minimal Detail

• Appropriate degree of refinement

• Suggest and explore, not confirm

• Ambiguity

Interactive Paper Interfaces

There is a fluidity to sketches

that gives them a sense of

openness and freedom. They

are not precise like a blueprint

or engineering drawing.

Monday, February 6, 12

Page 38: User Interface Software Projectsdjp3/classes/2012_01_INF134/Lectures/...•Where users instruct a system and tell it what to do • e.g. tell the time, print a file, save a file •

• Why sketching?

• Quick

• Timely

• Inexpensive

• Disposable

• Plentiful

• Clear Vocabulary

• Distinct Gesture

• Minimal Detail

• Appropriate degree of refinement

• Suggest and explore, not confirm

• Ambiguity

Interactive Paper Interfaces

They include only what is

necessary to communicate the

concept. Extra detail is

distracting. Going beyond

“good enough” is a bad thing

with sketching.

Monday, February 6, 12

Page 39: User Interface Software Projectsdjp3/classes/2012_01_INF134/Lectures/...•Where users instruct a system and tell it what to do • e.g. tell the time, print a file, save a file •

• Why sketching?

• Quick

• Timely

• Inexpensive

• Disposable

• Plentiful

• Clear Vocabulary

• Distinct Gesture

• Minimal Detail

• Appropriate degree of refinement

• Suggest and explore, not confirm

• Ambiguity

Interactive Paper Interfaces

They include only what is

necessary to communicate the

concept. Extra detail is

distracting. Going beyond

“good enough” is a bad thing

with sketching.

Monday, February 6, 12

Page 40: User Interface Software Projectsdjp3/classes/2012_01_INF134/Lectures/...•Where users instruct a system and tell it what to do • e.g. tell the time, print a file, save a file •

• Why sketching?

• Quick

• Timely

• Inexpensive

• Disposable

• Plentiful

• Clear Vocabulary

• Distinct Gesture

• Minimal Detail

• Appropriate degree of refinement

• Suggest and explore, not confirm

• Ambiguity

Interactive Paper Interfaces

a sketch is helpful because it

suggests only a level of

precision that corresponds to

the level of certainty in the

designer’s minds at the time.

Monday, February 6, 12

Page 41: User Interface Software Projectsdjp3/classes/2012_01_INF134/Lectures/...•Where users instruct a system and tell it what to do • e.g. tell the time, print a file, save a file •

• Why sketching?

• Quick

• Timely

• Inexpensive

• Disposable

• Plentiful

• Clear Vocabulary

• Distinct Gesture

• Minimal Detail

• Appropriate degree of refinement

• Suggest and explore, not confirm

• Ambiguity

Interactive Paper Interfaces

a sketch is helpful because it

suggests only a level of

precision that corresponds to

the level of certainty in the

designer’s minds at the time.

Monday, February 6, 12

Page 42: User Interface Software Projectsdjp3/classes/2012_01_INF134/Lectures/...•Where users instruct a system and tell it what to do • e.g. tell the time, print a file, save a file •

• Why sketching?

• Quick

• Timely

• Inexpensive

• Disposable

• Plentiful

• Clear Vocabulary

• Distinct Gesture

• Minimal Detail

• Appropriate degree of refinement

• Suggest and explore, not confirm

• Ambiguity

Interactive Paper Interfaces

Sketches don’t “tell” they

“suggest”. Their value lies not

in the drawing, but in its ability

to provide a catalyst to the

desired and appropriate

behavior, conversations, and

interactions.

Monday, February 6, 12

Page 43: User Interface Software Projectsdjp3/classes/2012_01_INF134/Lectures/...•Where users instruct a system and tell it what to do • e.g. tell the time, print a file, save a file •

• Why sketching?

• Quick

• Timely

• Inexpensive

• Disposable

• Plentiful

• Clear Vocabulary

• Distinct Gesture

• Minimal Detail

• Appropriate degree of refinement

• Suggest and explore, not confirm

• Ambiguity

Interactive Paper Interfaces

Sketches don’t “tell” they

“suggest”. Their value lies not

in the drawing, but in its ability

to provide a catalyst to the

desired and appropriate

behavior, conversations, and

interactions.

Monday, February 6, 12

Page 44: User Interface Software Projectsdjp3/classes/2012_01_INF134/Lectures/...•Where users instruct a system and tell it what to do • e.g. tell the time, print a file, save a file •

• Why sketching?

• Quick

• Timely

• Inexpensive

• Disposable

• Plentiful

• Clear Vocabulary

• Distinct Gesture

• Minimal Detail

• Appropriate degree of refinement

• Suggest and explore, not confirm

• Ambiguity

Interactive Paper Interfaces

Sketches are intentionally

ambiguous. They can be

interpreted in different ways.

Unexpected relationships

emerge from viewing them,

even for the sketcher.

Monday, February 6, 12

Page 45: User Interface Software Projectsdjp3/classes/2012_01_INF134/Lectures/...•Where users instruct a system and tell it what to do • e.g. tell the time, print a file, save a file •

• Why sketching?

• Quick

• Timely

• Inexpensive

• Disposable

• Plentiful

• Clear Vocabulary

• Distinct Gesture

• Minimal Detail

• Appropriate degree of refinement

• Suggest and explore, not confirm

• Ambiguity

Interactive Paper Interfaces

Sketches are intentionally

ambiguous. They can be

interpreted in different ways.

Unexpected relationships

emerge from viewing them,

even for the sketcher.

Monday, February 6, 12