SlideShare a Scribd company logo
1 of 135
Download to read offline
Master on Software Engineering :: Human-Computer Interaction
Dr. Sabin-Corneliu Buraga – profs.info.uaic.ro/~busaco/
Human-Computer Interaction
from design patterns to flow
Master on Software Engineering :: Human-Computer Interaction
Dr. Sabin-Corneliu Buraga – profs.info.uaic.ro/~busaco/
“It is not the answer that enlightens,
but the question.”
Eugene Ionesco
Master on Software Engineering :: Human-Computer Interaction
Dr. Sabin-Corneliu Buraga – profs.info.uaic.ro/~busaco/
How to present the content to convey
meaning, sequence, and points of interaction?
Master on Software Engineering :: Human-Computer Interaction
Dr. Sabin-Corneliu Buraga – profs.info.uaic.ro/~busaco/
Design Patterns
layout (Jenifer Tidwell)
Master on Software Engineering :: Human-Computer Interaction
Dr. Sabin-Corneliu Buraga – profs.info.uaic.ro/~busaco/
Visual framework
assure the use of layout, color and visual style
in a consistent manner
Master on Software Engineering :: Human-Computer Interaction
Dr. Sabin-Corneliu Buraga – profs.info.uaic.ro/~busaco/
Visual framework
must be flexible regarding the visual design,
depending on the presented content
Master on Software Engineering :: Human-Computer Interaction
Dr. Sabin-Corneliu Buraga – profs.info.uaic.ro/~busaco/
Visual framework
example:
visual consistency of the traditional applications
and Web sites
Master on Software Engineering :: Human-Computer Interaction
Dr. Sabin-Corneliu Buraga – profs.info.uaic.ro/~busaco/
discussion
…good or bad layout?
Master on Software Engineering :: Human-Computer Interaction
Dr. Sabin-Corneliu Buraga – profs.info.uaic.ro/~busaco/
discussion
…good or bad layout?
Master on Software Engineering :: Human-Computer Interaction
Dr. Sabin-Corneliu Buraga – profs.info.uaic.ro/~busaco/
Center stage
most important part of the UI is located in a center zone,
grouping additional tools in small-size areas
Master on Software Engineering :: Human-Computer Interaction
Dr. Sabin-Corneliu Buraga – profs.info.uaic.ro/~busaco/
Master on Software Engineering :: Human-Computer Interaction
Dr. Sabin-Corneliu Buraga – profs.info.uaic.ro/~busaco/
Center stage
designed by using:
size
color
headlines
context
Master on Software Engineering :: Human-Computer Interaction
Dr. Sabin-Corneliu Buraga – profs.info.uaic.ro/~busaco/
Master on Software Engineering :: Human-Computer Interaction
Dr. Sabin-Corneliu Buraga – profs.info.uaic.ro/~busaco/
Center stage
it could be used in conjunction to
other design patterns – e.g., for Web navigation
Master on Software Engineering :: Human-Computer Interaction
Dr. Sabin-Corneliu Buraga – profs.info.uaic.ro/~busaco/
Card stack
content sections are placed on different panels (cards)
that can be stacked
only one card is visible at a given moment
Master on Software Engineering :: Human-Computer Interaction
Dr. Sabin-Corneliu Buraga – profs.info.uaic.ro/~busaco/
Card stack
usually, labeled – horizontal/vertical – tabs are used
the meaning of each label is important
Master on Software Engineering :: Human-Computer Interaction
Dr. Sabin-Corneliu Buraga – profs.info.uaic.ro/~busaco/
Master on Software Engineering :: Human-Computer Interaction
Dr. Sabin-Corneliu Buraga – profs.info.uaic.ro/~busaco/
discussion
Master on Software Engineering :: Human-Computer Interaction
Dr. Sabin-Corneliu Buraga – profs.info.uaic.ro/~busaco/
Closable panels
placing the content in separate labeled containers
that could be expanded
Master on Software Engineering :: Human-Computer Interaction
Dr. Sabin-Corneliu Buraga – profs.info.uaic.ro/~busaco/
variations:
accordion
disclosure triangles
slide drawer
Master on Software Engineering :: Human-Computer Interaction
Dr. Sabin-Corneliu Buraga – profs.info.uaic.ro/~busaco/
Movable panels
put different tools or sections of content onto
separate panels, and let the user move them around
to form a custom layout
Master on Software Engineering :: Human-Computer Interaction
Dr. Sabin-Corneliu Buraga – profs.info.uaic.ro/~busaco/
Movable panels
users have liberty to rearrange their workspace
Master on Software Engineering :: Human-Computer Interaction
Dr. Sabin-Corneliu Buraga – profs.info.uaic.ro/~busaco/
Movable panels
there are situations when it could be inconvenient
why?
Master on Software Engineering :: Human-Computer Interaction
Dr. Sabin-Corneliu Buraga – profs.info.uaic.ro/~busaco/
Right/left alignment
permits alignment of the content within a form/table
Master on Software Engineering :: Human-Computer Interaction
Dr. Sabin-Corneliu Buraga – profs.info.uaic.ro/~busaco/
Master on Software Engineering :: Human-Computer Interaction
Dr. Sabin-Corneliu Buraga – profs.info.uaic.ro/~busaco/
Master on Software Engineering :: Human-Computer Interaction
Dr. Sabin-Corneliu Buraga – profs.info.uaic.ro/~busaco/
Master on Software Engineering :: Human-Computer Interaction
Dr. Sabin-Corneliu Buraga – profs.info.uaic.ro/~busaco/
Master on Software Engineering :: Human-Computer Interaction
Dr. Sabin-Corneliu Buraga – profs.info.uaic.ro/~busaco/
Right/left alignment
for additional considerations, read the article
Andrew Coyle, “Design Better Forms”, UX Design, 2016
uxdesign.cc/design-better-forms-96fadca0f49c
Master on Software Engineering :: Human-Computer Interaction
Dr. Sabin-Corneliu Buraga – profs.info.uaic.ro/~busaco/
Right/left alignment
in certain cases,
it could be substituted by other design patterns
Master on Software Engineering :: Human-Computer Interaction
Dr. Sabin-Corneliu Buraga – profs.info.uaic.ro/~busaco/
discussion
…good or bad design?
Master on Software Engineering :: Human-Computer Interaction
Dr. Sabin-Corneliu Buraga – profs.info.uaic.ro/~busaco/
Diagonal balance
arrange page elements in an asymmetric fashion,
but balance it by putting visual weight into both
the upper-left and lower-right corners
Master on Software Engineering :: Human-Computer Interaction
Dr. Sabin-Corneliu Buraga – profs.info.uaic.ro/~busaco/
example
Science
science.sciencemag.org
Master on Software Engineering :: Human-Computer Interaction
Dr. Sabin-Corneliu Buraga – profs.info.uaic.ro/~busaco/
Diagonal balance
“Asymmetrical layouts can achieve equilibrium as well,
but their tenser, more dramatic form of balance
depends on careful manipulation to compensate visually
for differences in the size, position,
and value of major elements.”
Kevin Mullet & Darrell Sano
Master on Software Engineering :: Human-Computer Interaction
Dr. Sabin-Corneliu Buraga – profs.info.uaic.ro/~busaco/
Property sheet
presenting specific properties of an object
usually, a two-column layout or a form are used
Master on Software Engineering :: Human-Computer Interaction
Dr. Sabin-Corneliu Buraga – profs.info.uaic.ro/~busaco/
Master on Software Engineering :: Human-Computer Interaction
Dr. Sabin-Corneliu Buraga – profs.info.uaic.ro/~busaco/
Liquid layout
permits content regrouping
when the presentation area is resized
Master on Software Engineering :: Human-Computer Interaction
Dr. Sabin-Corneliu Buraga – profs.info.uaic.ro/~busaco/
Liquid layout
in the case of traditional applications,
it could be facilitated by the layout managers
Master on Software Engineering :: Human-Computer Interaction
Dr. Sabin-Corneliu Buraga – profs.info.uaic.ro/~busaco/
Liquid layout
in the case of traditional applications,
it could be facilitated by the layout managers
examples for Universal Windows Platform (UWP) apps:
RelativePanel – an adaptive UI control
PointerPoint – unifies raw touch, mouse, and pen data
Master on Software Engineering :: Human-Computer Interaction
Dr. Sabin-Corneliu Buraga – profs.info.uaic.ro/~busaco/
Liquid layout
multi-device context

responsive design (plasticity)
Master on Software Engineering :: Human-Computer Interaction
Dr. Sabin-Corneliu Buraga – profs.info.uaic.ro/~busaco/
responsive (Web) design
adapting the design to a certain interaction context
(e.g., screen orientation, resolution, pixel density,…)
by using different (Web) design techniques
Ethan Marcotte, 2010
www.alistapart.com/articles/responsive-web-design/
resources of interest:
https://responsivedesign.is/
discussion
Master on Software Engineering :: Human-Computer Interaction
Dr. Sabin-Corneliu Buraga – profs.info.uaic.ro/~busaco/
discussion
reality: different manners of interaction
Aaron Gustafson, “Exploring Adaptive Interfaces”, Generate 2017
www.slideshare.net/AaronGustafson/exploring-adaptive-interfaces-generate-2017
Master on Software Engineering :: Human-Computer Interaction
Dr. Sabin-Corneliu Buraga – profs.info.uaic.ro/~busaco/
discussion
reality: various contexts + changing conditions
Aaron Gustafson, “Exploring Adaptive Interfaces”, Generate 2017
www.slideshare.net/AaronGustafson/exploring-adaptive-interfaces-generate-2017
Master on Software Engineering :: Human-Computer Interaction
Dr. Sabin-Corneliu Buraga – profs.info.uaic.ro/~busaco/
discussion
reality: user variety & needs
Aaron Gustafson, “Exploring Adaptive Interfaces”, Generate 2017
www.slideshare.net/AaronGustafson/exploring-adaptive-interfaces-generate-2017
Master on Software Engineering :: Human-Computer Interaction
Dr. Sabin-Corneliu Buraga – profs.info.uaic.ro/~busaco/
discussion
CSS media queries
flexible content
(fonts, tables, images, multimedia)
flexible/fluid grid
in the Web context, we should consider:
Master on Software Engineering :: Human-Computer Interaction
Dr. Sabin-Corneliu Buraga – profs.info.uaic.ro/~busaco/
discussion
responsive images
responsiveimages.org
responsive data tables
css-tricks.com/responsive-data-tables/
responsive e-mail patterns
responsiveemailpatterns.com
other useful resources:
bradfrost.github.io/this-is-responsive/resources.html
Master on Software Engineering :: Human-Computer Interaction
Dr. Sabin-Corneliu Buraga – profs.info.uaic.ro/~busaco/
graceful
degradation
progressive
enhancement
responsive
(Web)
design
mobile first
discussion
Master on Software Engineering :: Human-Computer Interaction
Dr. Sabin-Corneliu Buraga – profs.info.uaic.ro/~busaco/
bradfrost.github.com/this-is-responsive/patterns.html
responsive Web patterns
(layout, navigation, content, forms,…)
Master on Software Engineering :: Human-Computer Interaction
Dr. Sabin-Corneliu Buraga – profs.info.uaic.ro/~busaco/
Design Patterns
user actions & commands
Master on Software Engineering :: Human-Computer Interaction
Dr. Sabin-Corneliu Buraga – profs.info.uaic.ro/~busaco/
UI offers to its users certain controls
each action that could be performed by user
must be consequently indicated
Master on Software Engineering :: Human-Computer Interaction
Dr. Sabin-Corneliu Buraga – profs.info.uaic.ro/~busaco/
UI offers to its users certain controls
each action that could be performed by user
must be consequently indicated
(perceived) affordance
Donald Norman
Master on Software Engineering :: Human-Computer Interaction
Dr. Sabin-Corneliu Buraga – profs.info.uaic.ro/~busaco/
“Affordances provide strong clues
to the operations of things.
Knobs are for turning. Slots are for inserting things into.
Balls are for throwing or bouncing.
When affordances are taken advantage of,
the user knows what to do just by looking:
no picture, label, or instruction needed.”
Donald Norman (1988)
Master on Software Engineering :: Human-Computer Interaction
Dr. Sabin-Corneliu Buraga – profs.info.uaic.ro/~busaco/
“Affordances provide strong clues
to the operations of things.
Knobs are for turning. Slots are for inserting things into.
Balls are for throwing or bouncing.
When affordances are taken advantage of,
the user knows what to do just by looking:
no picture, label, or instruction needed.”
Donald Norman (1988)
see also Victor Kaptelinin, “Affordances”, The Encyclopedia of
Human-Computer Interaction (2nd Edition), 2015:
www.interaction-design.org/literature/book/the-encyclopedia-of-human-computer-
interaction-2nd-ed/affordances
Master on Software Engineering :: Human-Computer Interaction
Dr. Sabin-Corneliu Buraga – profs.info.uaic.ro/~busaco/
user perception of selection controls’ states
hover, focused, pressed, disabled, disabled focused
example: Material Design (Google)
material.io/guidelines/components/selection-controls.html
discussion
Master on Software Engineering :: Human-Computer Interaction
Dr. Sabin-Corneliu Buraga – profs.info.uaic.ro/~busaco/
discussion
Master on Software Engineering :: Human-Computer Interaction
Dr. Sabin-Corneliu Buraga – profs.info.uaic.ro/~busaco/
There must be a logical reason
for using an interaction control
Master on Software Engineering :: Human-Computer Interaction
Dr. Sabin-Corneliu Buraga – profs.info.uaic.ro/~busaco/
Interaction controls
inspired by reality
Dan Saffer
switch, dial, button, latch, slider, handle
Master on Software Engineering :: Human-Computer Interaction
Dr. Sabin-Corneliu Buraga – profs.info.uaic.ro/~busaco/
Interaction controls
physical only
joystick, trackball, Wiimote,
data glove, current wearable devices,…
Master on Software Engineering :: Human-Computer Interaction
Dr. Sabin-Corneliu Buraga – profs.info.uaic.ro/~busaco/
case study
A. Gharibans et al., “Artifact Rejection Methodology Enables Con-
tinuous, Noninvasive Measurement of Gastric Myoelectric Activity
in Ambulatory Subjects”, Scientific Reports, Vol. 8, March 2018
www.nature.com/articles/s41598-018-23302-9
Master on Software Engineering :: Human-Computer Interaction
Dr. Sabin-Corneliu Buraga – profs.info.uaic.ro/~busaco/
Interaction controls
digital only
scroll bar, checkbox, radio button, text box,
listview, spinner, etc.
Master on Software Engineering :: Human-Computer Interaction
Dr. Sabin-Corneliu Buraga – profs.info.uaic.ro/~busaco/
Master on Software Engineering :: Human-Computer Interaction
Dr. Sabin-Corneliu Buraga – profs.info.uaic.ro/~busaco/
Interaction controls
digital + physical
examples: mixed reality, interactive tables,
multi-user interfaces,…
Master on Software Engineering :: Human-Computer Interaction
Dr. Sabin-Corneliu Buraga – profs.info.uaic.ro/~busaco/
physical + digital retail marketing: PERCH
www.perchinteractive.com/showcase/
case study
Master on Software Engineering :: Human-Computer Interaction
Dr. Sabin-Corneliu Buraga – profs.info.uaic.ro/~busaco/
Interaction controls
“invisible”
especially for natural UIs
examples: gesture-/voice-/motion-based interactions
Master on Software Engineering :: Human-Computer Interaction
Dr. Sabin-Corneliu Buraga – profs.info.uaic.ro/~busaco/
“Be the bird” – a Kinect-based installation allowing users
to retrieve information through full body motion
gagarin.is/work/norwegian_seabird_centre
case study
Master on Software Engineering :: Human-Computer Interaction
Dr. Sabin-Corneliu Buraga – profs.info.uaic.ro/~busaco/
Button groups
to present related actions as a small cluster of buttons,
aligned either horizontally or vertically
revisit
Gestalt
principles
Master on Software Engineering :: Human-Computer Interaction
Dr. Sabin-Corneliu Buraga – profs.info.uaic.ro/~busaco/
Button groups
we must create several of them
if there are more than 3—4 actions
remember
Hick’s Law
Master on Software Engineering :: Human-Computer Interaction
Dr. Sabin-Corneliu Buraga – profs.info.uaic.ro/~busaco/
Button groups
must be consistently placed within the UI
Master on Software Engineering :: Human-Computer Interaction
Dr. Sabin-Corneliu Buraga – profs.info.uaic.ro/~busaco/
Master on Software Engineering :: Human-Computer Interaction
Dr. Sabin-Corneliu Buraga – profs.info.uaic.ro/~busaco/
discussion
Master on Software Engineering :: Human-Computer Interaction
Dr. Sabin-Corneliu Buraga – profs.info.uaic.ro/~busaco/
Prominent “done” button
place the button that finishes a transaction
at the end of the visual flow
Master on Software Engineering :: Human-Computer Interaction
Dr. Sabin-Corneliu Buraga – profs.info.uaic.ro/~busaco/
must focus user’s attention
should be big & well-labeled
usually, the button label
is a textual one,
easy to be noticed
Prominent “done” button
Master on Software Engineering :: Human-Computer Interaction
Dr. Sabin-Corneliu Buraga – profs.info.uaic.ro/~busaco/
Preview
shows users a preview or summary of what will happen
when they perform an action
e.g., printing, committing an on-line purchase, etc.
Master on Software Engineering :: Human-Computer Interaction
Dr. Sabin-Corneliu Buraga – profs.info.uaic.ro/~busaco/
Preview
previews help prevent various errors
it could facilitate to explain users some actions
Master on Software Engineering :: Human-Computer Interaction
Dr. Sabin-Corneliu Buraga – profs.info.uaic.ro/~busaco/
Master on Software Engineering :: Human-Computer Interaction
Dr. Sabin-Corneliu Buraga – profs.info.uaic.ro/~busaco/
Progress indicator
indicating how much progress was made
on a time-consuming operation

feedback to the user should be provided
Master on Software Engineering :: Human-Computer Interaction
Dr. Sabin-Corneliu Buraga – profs.info.uaic.ro/~busaco/
Progress indicator
user must be informed
regarding the system’s current status
e.g., changing mouse cursor, highlighting, progress bar,…
Master on Software Engineering :: Human-Computer Interaction
Dr. Sabin-Corneliu Buraga – profs.info.uaic.ro/~busaco/
Progress indicator
< 0.1 sec (almost) instantaneous
0.1 – 1 sec no feedback is necessary;
the user will notice that must wait
1 – 5 sec waiting – e.g., busy cursor
>1 – 5 sec showing a progress indicator
Master on Software Engineering :: Human-Computer Interaction
Dr. Sabin-Corneliu Buraga – profs.info.uaic.ro/~busaco/
Progress indicator
“Display a progress bar that accurately reflects
the time remaining. If you cannot predict how much time
an operation will take, say so!
Do not lie to or misinform users.”
Jef Raskin, 2000
Master on Software Engineering :: Human-Computer Interaction
Dr. Sabin-Corneliu Buraga – profs.info.uaic.ro/~busaco/
time-remaining (result-based) progress indicator
Master on Software Engineering :: Human-Computer Interaction
Dr. Sabin-Corneliu Buraga – profs.info.uaic.ro/~busaco/
indeterminate-progress indicator
Master on Software Engineering :: Human-Computer Interaction
Dr. Sabin-Corneliu Buraga – profs.info.uaic.ro/~busaco/
Progress indicator
for practical aspects, see also
Progress Bars vs. Spinners: When to Use Which (2016)
uxmovement.com/navigation/progress-bars-vs-spinners-when-to-use-which/
Master on Software Engineering :: Human-Computer Interaction
Dr. Sabin-Corneliu Buraga – profs.info.uaic.ro/~busaco/
discussion
Master on Software Engineering :: Human-Computer Interaction
Dr. Sabin-Corneliu Buraga – profs.info.uaic.ro/~busaco/
Cancelability
provides a way to instantly cancel
a time-consuming operation, with no side effects
Master on Software Engineering :: Human-Computer Interaction
Dr. Sabin-Corneliu Buraga – profs.info.uaic.ro/~busaco/
Cancelability
if there are simultaneous operations,
we must indicate what it could be canceled
Master on Software Engineering :: Human-Computer Interaction
Dr. Sabin-Corneliu Buraga – profs.info.uaic.ro/~busaco/
a hard-to-find Cancel operation (Tidwell, 2005)
Master on Software Engineering :: Human-Computer Interaction
Dr. Sabin-Corneliu Buraga – profs.info.uaic.ro/~busaco/
Multi-level undo
it offers a way to easily reverse
a series of actions performed by the user
Master on Software Engineering :: Human-Computer Interaction
Dr. Sabin-Corneliu Buraga – profs.info.uaic.ro/~busaco/
Multi-level undo
undoable operations:
entered text, database transactions, layout changes,
cut & paste, actions regarding certain resources:
images, e-mail messages, etc.
Master on Software Engineering :: Human-Computer Interaction
Dr. Sabin-Corneliu Buraga – profs.info.uaic.ro/~busaco/
Master on Software Engineering :: Human-Computer Interaction
Dr. Sabin-Corneliu Buraga – profs.info.uaic.ro/~busaco/
Command history
keeping a visible record of what was done,
to what, and when
Master on Software Engineering :: Human-Computer Interaction
Dr. Sabin-Corneliu Buraga – profs.info.uaic.ro/~busaco/
Macros
defining & executing a sequence (group) of small actions
a macro is denoted by a mnemonic
Master on Software Engineering :: Human-Computer Interaction
Dr. Sabin-Corneliu Buraga – profs.info.uaic.ro/~busaco/
Macros
provide a recording mechanism of user actions
to be automatically executed another time
Master on Software Engineering :: Human-Computer Interaction
Dr. Sabin-Corneliu Buraga – profs.info.uaic.ro/~busaco/
discussion
Master on Software Engineering :: Human-Computer Interaction
Dr. Sabin-Corneliu Buraga – profs.info.uaic.ro/~busaco/
Macros
related patterns:
Multi-Level Undo
Command History
Master on Software Engineering :: Human-Computer Interaction
Dr. Sabin-Corneliu Buraga – profs.info.uaic.ro/~busaco/
Design Patterns
data editing
Master on Software Engineering :: Human-Computer Interaction
Dr. Sabin-Corneliu Buraga – profs.info.uaic.ro/~busaco/
A frequent activity performed by users is to edit data
textual, graphical, multimedia (video, sound), etc.
Master on Software Engineering :: Human-Computer Interaction
Dr. Sabin-Corneliu Buraga – profs.info.uaic.ro/~busaco/
WYSIWYG (What You See Is What You Get)
desktop publishing
raster/vector image editing
animation scenes
video content
…
Master on Software Engineering :: Human-Computer Interaction
Dr. Sabin-Corneliu Buraga – profs.info.uaic.ro/~busaco/
WYSIWYG (What You See Is What You Get)
users have some powerful expectations
for how a text/content editor should work
Master on Software Engineering :: Human-Computer Interaction
Dr. Sabin-Corneliu Buraga – profs.info.uaic.ro/~busaco/
discussion
Boxy SVG – a SVG editor for non-technical users
Master on Software Engineering :: Human-Computer Interaction
Dr. Sabin-Corneliu Buraga – profs.info.uaic.ro/~busaco/
Operation: Direct manipulation
permits users to “directly” interact with interface objects
– by performing operations like grab, push, drag, drop,
stack, paint, transform etc. – via some pointing device
Master on Software Engineering :: Human-Computer Interaction
Dr. Sabin-Corneliu Buraga – profs.info.uaic.ro/~busaco/
Master on Software Engineering :: Human-Computer Interaction
Dr. Sabin-Corneliu Buraga – profs.info.uaic.ro/~busaco/
Operation: Direct manipulation
immediate
actions take place with no apparent wait time
Master on Software Engineering :: Human-Computer Interaction
Dr. Sabin-Corneliu Buraga – profs.info.uaic.ro/~busaco/
Operation: Direct manipulation
precise
users need to have fine control over the location of
that pointer and the objects attached to it
Master on Software Engineering :: Human-Computer Interaction
Dr. Sabin-Corneliu Buraga – profs.info.uaic.ro/~busaco/
Operation: Selection
users have certain expectations
regarding the selection of different types of entities:
(non)formatted text, elements of vector graphics,
abstract components, lists, tables, trees, etc.
Master on Software Engineering :: Human-Computer Interaction
Dr. Sabin-Corneliu Buraga – profs.info.uaic.ro/~busaco/
Text
editors
Vector graphics
editors, GUI
builders
Lists, tables,
trees
Single
click
Move text insertion
cursor here
Select just
this item
Select just
this item
Double
click
Select this word
Open or edit
this item
Open or edit
this item
Triple
click
Select this line,
or select this
paragraph
N/A N/A
Click,
drag,
release
Start selection here,
end it there;
select all text
between them
Select
everything inside
the bounding box
(“rubberband”,
“marquee” or
“marching ants”
selection)
Drag this item
from here to
there
Tidwell (2005)
Master on Software Engineering :: Human-Computer Interaction
Dr. Sabin-Corneliu Buraga – profs.info.uaic.ro/~busaco/
Text
editors
Vector graphics
editors, GUI
builders
Lists, tables,
trees
Shift-
click
Start selection
at the text insertion
cursor, end it at
the click point, and
select all text
between them
Add this item to
the selection set
Add this item to
the selection set,
plus all
intervening
items
(“contiguous
selection”)
Control-
click
Varies from
application to
application
Varies from
application to
application
Add this item to
the selection set
(“discontiguous
selection”)
Tidwell (2005)
Master on Software Engineering :: Human-Computer Interaction
Dr. Sabin-Corneliu Buraga – profs.info.uaic.ro/~busaco/
Operation: Selection
regularly, selection of discrete elements is done
by using handles
Master on Software Engineering :: Human-Computer Interaction
Dr. Sabin-Corneliu Buraga – profs.info.uaic.ro/~busaco/
Edit-in-place
offers a minimalist editor directly in the place
where the user could modify a textual data
Master on Software Engineering :: Human-Computer Interaction
Dr. Sabin-Corneliu Buraga – profs.info.uaic.ro/~busaco/
Edit-in-place
used to edit files/objects names,
labels, values of properties,…
Master on Software Engineering :: Human-Computer Interaction
Dr. Sabin-Corneliu Buraga – profs.info.uaic.ro/~busaco/
Smart selection
making the software smart enough to automatically select
a coherent group of items,
rather than making the user do it
examples: text elements, pixels, file names,…
Master on Software Engineering :: Human-Computer Interaction
Dr. Sabin-Corneliu Buraga – profs.info.uaic.ro/~busaco/
Smart selection
when done thoughtlessly,
smart selections can be irritating

anti-pattern
Master on Software Engineering :: Human-Computer Interaction
Dr. Sabin-Corneliu Buraga – profs.info.uaic.ro/~busaco/
Composite selection
permits a global selection for a group of entities
Master on Software Engineering :: Human-Computer Interaction
Dr. Sabin-Corneliu Buraga – profs.info.uaic.ro/~busaco/
Composite selection
use different gestures or clicks/taps in different screen
areas, such as the composite’s edges versus its insides
to determine whether you should select a composite itself
or allow its contained objects to be selected
Master on Software Engineering :: Human-Computer Interaction
Dr. Sabin-Corneliu Buraga – profs.info.uaic.ro/~busaco/
Master on Software Engineering :: Human-Computer Interaction
Dr. Sabin-Corneliu Buraga – profs.info.uaic.ro/~busaco/
Spring-loaded mode
permitting users to change the mode of interaction
by pressing a key or a certain mouse button
typical keys: Shift Alt Ctrl
Master on Software Engineering :: Human-Computer Interaction
Dr. Sabin-Corneliu Buraga – profs.info.uaic.ro/~busaco/
Constrained resize
supply resize modes with different behavior,
such as preserving aspect ratio,
for use under special circumstances
Master on Software Engineering :: Human-Computer Interaction
Dr. Sabin-Corneliu Buraga – profs.info.uaic.ro/~busaco/
Master on Software Engineering :: Human-Computer Interaction
Dr. Sabin-Corneliu Buraga – profs.info.uaic.ro/~busaco/
Magnetism
making the objects “magnetic” to the things
a user positions them against
when the user drags an object very near one of
these things, it should stick
Master on Software Engineering :: Human-Computer Interaction
Dr. Sabin-Corneliu Buraga – profs.info.uaic.ro/~busaco/
Magnetism
it helps compensate for
users’ lack of perfect dexterity
with a pointing device
(typically, the mouse)
Master on Software Engineering :: Human-Computer Interaction
Dr. Sabin-Corneliu Buraga – profs.info.uaic.ro/~busaco/
Guides
it provides horizontal and/or vertical reference lines
in order to facilitate the alignment of certain entities
Master on Software Engineering :: Human-Computer Interaction
Dr. Sabin-Corneliu Buraga – profs.info.uaic.ro/~busaco/
Guides
guides make it easier for a user to see
that alignment is pixel-perfect
Master on Software Engineering :: Human-Computer Interaction
Dr. Sabin-Corneliu Buraga – profs.info.uaic.ro/~busaco/
Paste variations
offers special functionalities – e.g., format conversions –
for the paste operation
a classic example:
Paste Special – Microsoft Office
Master on Software Engineering :: Human-Computer Interaction
Dr. Sabin-Corneliu Buraga – profs.info.uaic.ro/~busaco/
How about maintaining the user’s flow?
Master on Software Engineering :: Human-Computer Interaction
Dr. Sabin-Corneliu Buraga – profs.info.uaic.ro/~busaco/
Remark:
keeping a user happy may, therefore,
not only affect satisfaction,
but may also lead to efficiency and creativity
Master on Software Engineering :: Human-Computer Interaction
Dr. Sabin-Corneliu Buraga – profs.info.uaic.ro/~busaco/
user interaction (Desmet, 2002; van Gorp, 2006)
value – pleasant vs. unpleasant
arousal – anxiety vs. boredom
Master on Software Engineering :: Human-Computer Interaction
Dr. Sabin-Corneliu Buraga – profs.info.uaic.ro/~busaco/
Within interaction, related emotional states
must be connectedflow
Master on Software Engineering :: Human-Computer Interaction
Dr. Sabin-Corneliu Buraga – profs.info.uaic.ro/~busaco/
Flow
the mental state of operation in which a person in
an activity is fully immersed in a feeling of
energized focus, full involvement, and success
in the process of the activity
Master on Software Engineering :: Human-Computer Interaction
Dr. Sabin-Corneliu Buraga – profs.info.uaic.ro/~busaco/
Flow
the global sentiment experienced by a person
when (s)he is totally involved into a certain activity
excitement (arousal)flowcontrolrelaxation
boredomapathyapprehensionanxiety
optimal
experience
Master on Software Engineering :: Human-Computer Interaction
Dr. Sabin-Corneliu Buraga – profs.info.uaic.ro/~busaco/
the first model of the flow state
(Csikszentmihalyi, 1990; van Gorp, 2006; Moneta, 2012)
Master on Software Engineering :: Human-Computer Interaction
Dr. Sabin-Corneliu Buraga – profs.info.uaic.ro/~busaco/
autotelic work
Csikszentmihalyi, 1990, 2008
refers to “work” that is experienced as enjoyable and
is associated with flow or optimal experience
characterized by a sense of well being and harmony
with one’s surroundings
Master on Software Engineering :: Human-Computer Interaction
Dr. Sabin-Corneliu Buraga – profs.info.uaic.ro/~busaco/
Flow
autotelic work
identifying and designing the motivational affordances
in the task and work environment
www.ted.com/talks/mihaly_csikszentmihalyi_on_flow.html
Master on Software Engineering :: Human-Computer Interaction
Dr. Sabin-Corneliu Buraga – profs.info.uaic.ro/~busaco/
Negative example:
providing feedback that is
perceived as controlling rather
than informative tends
to reduce intrinsic motivation
Deci, Ryan & Koestner, 1999
Szalma & Hancock, 2008
discussion
Master on Software Engineering :: Human-Computer Interaction
Dr. Sabin-Corneliu Buraga – profs.info.uaic.ro/~busaco/
Group flow
when a group (team) cooperates to agree on goals,
tasks + behavioral patterns, then the social flow
(group cohesion) is much more likely to occur
Charles Walker (2010)
larger context: crowd psychology
Master on Software Engineering :: Human-Computer Interaction
Dr. Sabin-Corneliu Buraga – profs.info.uaic.ro/~busaco/
“Conclusion”
layout, actions & editing patterns + flow
inspired-ui.com
Master on Software Engineering :: Human-Computer Interaction
Dr. Sabin-Corneliu Buraga – profs.info.uaic.ro/~busaco/
next lecture:
design patterns for social interactions

More Related Content

What's hot

HCI 2018 (9/10) Affective Factors. From Emotion to Persuasive Technologies
HCI 2018 (9/10) Affective Factors. From Emotion to Persuasive TechnologiesHCI 2018 (9/10) Affective Factors. From Emotion to Persuasive Technologies
HCI 2018 (9/10) Affective Factors. From Emotion to Persuasive TechnologiesSabin Buraga
 
HCI 2015 (6/10) Design Patterns: Social Interaction
HCI 2015 (6/10) Design Patterns: Social InteractionHCI 2015 (6/10) Design Patterns: Social Interaction
HCI 2015 (6/10) Design Patterns: Social InteractionSabin Buraga
 
HCI 2015 (4/10) Visual Design. Information Architecture. Design Patterns
HCI 2015 (4/10) Visual Design. Information Architecture. Design PatternsHCI 2015 (4/10) Visual Design. Information Architecture. Design Patterns
HCI 2015 (4/10) Visual Design. Information Architecture. Design PatternsSabin Buraga
 
HCI 2015 (5/10) Information Architecture. Design Patterns. Layout, Actions, D...
HCI 2015 (5/10) Information Architecture. Design Patterns. Layout, Actions, D...HCI 2015 (5/10) Information Architecture. Design Patterns. Layout, Actions, D...
HCI 2015 (5/10) Information Architecture. Design Patterns. Layout, Actions, D...Sabin Buraga
 
HCI 2014 (1 of 10): Overview
HCI 2014 (1 of 10): OverviewHCI 2014 (1 of 10): Overview
HCI 2014 (1 of 10): OverviewSabin Buraga
 
HCI 2014 (3 of 10): Design Models and Methodologies
HCI 2014 (3 of 10): Design Models and MethodologiesHCI 2014 (3 of 10): Design Models and Methodologies
HCI 2014 (3 of 10): Design Models and MethodologiesSabin Buraga
 
HCI 2015 (8/10) Data Visualization (an introduction)
HCI 2015 (8/10) Data Visualization (an introduction)HCI 2015 (8/10) Data Visualization (an introduction)
HCI 2015 (8/10) Data Visualization (an introduction)Sabin Buraga
 
HCI 2015 (7/10) HCI Engineering. UI Evaluation. Models
HCI 2015 (7/10) HCI Engineering. UI Evaluation. ModelsHCI 2015 (7/10) HCI Engineering. UI Evaluation. Models
HCI 2015 (7/10) HCI Engineering. UI Evaluation. ModelsSabin Buraga
 
HCI 2015 (3/10) Design Methodologies
HCI 2015 (3/10) Design MethodologiesHCI 2015 (3/10) Design Methodologies
HCI 2015 (3/10) Design MethodologiesSabin Buraga
 
HCI: Design Patterns for Social Web Interaction
HCI: Design Patterns for Social Web InteractionHCI: Design Patterns for Social Web Interaction
HCI: Design Patterns for Social Web InteractionSabin Buraga
 
HCI 2014 (4 of 10): From Information Architecture to Design Patterns
HCI 2014 (4 of 10): From Information Architecture to Design PatternsHCI 2014 (4 of 10): From Information Architecture to Design Patterns
HCI 2014 (4 of 10): From Information Architecture to Design PatternsSabin Buraga
 
HCI 2014 (2 of 10): Human Factor. Users
HCI 2014 (2 of 10): Human Factor. UsersHCI 2014 (2 of 10): Human Factor. Users
HCI 2014 (2 of 10): Human Factor. UsersSabin Buraga
 
HCI 2014 (8 of 10): Data Visualization
HCI 2014 (8 of 10): Data VisualizationHCI 2014 (8 of 10): Data Visualization
HCI 2014 (8 of 10): Data VisualizationSabin Buraga
 
HCI 2014 (10 of 10): Natural User Interfaces. Ubiquitous Computing
HCI 2014 (10 of 10): Natural User Interfaces. Ubiquitous ComputingHCI 2014 (10 of 10): Natural User Interfaces. Ubiquitous Computing
HCI 2014 (10 of 10): Natural User Interfaces. Ubiquitous ComputingSabin Buraga
 
Human-Computer Interaction: An Overview
Human-Computer Interaction: An OverviewHuman-Computer Interaction: An Overview
Human-Computer Interaction: An OverviewSabin Buraga
 
HCI 2014 (6 of 10): Social (Web) Interactions
HCI 2014 (6 of 10): Social (Web) InteractionsHCI 2014 (6 of 10): Social (Web) Interactions
HCI 2014 (6 of 10): Social (Web) InteractionsSabin Buraga
 
HCI 2015 (9/10) Affective Factors
HCI 2015 (9/10) Affective FactorsHCI 2015 (9/10) Affective Factors
HCI 2015 (9/10) Affective FactorsSabin Buraga
 
HCI 2014 (7 of 10): HCI Engineering. UI Evaluation. Models
HCI 2014 (7 of 10): HCI Engineering. UI Evaluation. ModelsHCI 2014 (7 of 10): HCI Engineering. UI Evaluation. Models
HCI 2014 (7 of 10): HCI Engineering. UI Evaluation. ModelsSabin Buraga
 
HCI 2014 (5 of 10): UI Design. From Design Patterns to Flow
HCI 2014 (5 of 10): UI Design. From Design Patterns to FlowHCI 2014 (5 of 10): UI Design. From Design Patterns to Flow
HCI 2014 (5 of 10): UI Design. From Design Patterns to FlowSabin Buraga
 

What's hot (19)

HCI 2018 (9/10) Affective Factors. From Emotion to Persuasive Technologies
HCI 2018 (9/10) Affective Factors. From Emotion to Persuasive TechnologiesHCI 2018 (9/10) Affective Factors. From Emotion to Persuasive Technologies
HCI 2018 (9/10) Affective Factors. From Emotion to Persuasive Technologies
 
HCI 2015 (6/10) Design Patterns: Social Interaction
HCI 2015 (6/10) Design Patterns: Social InteractionHCI 2015 (6/10) Design Patterns: Social Interaction
HCI 2015 (6/10) Design Patterns: Social Interaction
 
HCI 2015 (4/10) Visual Design. Information Architecture. Design Patterns
HCI 2015 (4/10) Visual Design. Information Architecture. Design PatternsHCI 2015 (4/10) Visual Design. Information Architecture. Design Patterns
HCI 2015 (4/10) Visual Design. Information Architecture. Design Patterns
 
HCI 2015 (5/10) Information Architecture. Design Patterns. Layout, Actions, D...
HCI 2015 (5/10) Information Architecture. Design Patterns. Layout, Actions, D...HCI 2015 (5/10) Information Architecture. Design Patterns. Layout, Actions, D...
HCI 2015 (5/10) Information Architecture. Design Patterns. Layout, Actions, D...
 
HCI 2014 (1 of 10): Overview
HCI 2014 (1 of 10): OverviewHCI 2014 (1 of 10): Overview
HCI 2014 (1 of 10): Overview
 
HCI 2014 (3 of 10): Design Models and Methodologies
HCI 2014 (3 of 10): Design Models and MethodologiesHCI 2014 (3 of 10): Design Models and Methodologies
HCI 2014 (3 of 10): Design Models and Methodologies
 
HCI 2015 (8/10) Data Visualization (an introduction)
HCI 2015 (8/10) Data Visualization (an introduction)HCI 2015 (8/10) Data Visualization (an introduction)
HCI 2015 (8/10) Data Visualization (an introduction)
 
HCI 2015 (7/10) HCI Engineering. UI Evaluation. Models
HCI 2015 (7/10) HCI Engineering. UI Evaluation. ModelsHCI 2015 (7/10) HCI Engineering. UI Evaluation. Models
HCI 2015 (7/10) HCI Engineering. UI Evaluation. Models
 
HCI 2015 (3/10) Design Methodologies
HCI 2015 (3/10) Design MethodologiesHCI 2015 (3/10) Design Methodologies
HCI 2015 (3/10) Design Methodologies
 
HCI: Design Patterns for Social Web Interaction
HCI: Design Patterns for Social Web InteractionHCI: Design Patterns for Social Web Interaction
HCI: Design Patterns for Social Web Interaction
 
HCI 2014 (4 of 10): From Information Architecture to Design Patterns
HCI 2014 (4 of 10): From Information Architecture to Design PatternsHCI 2014 (4 of 10): From Information Architecture to Design Patterns
HCI 2014 (4 of 10): From Information Architecture to Design Patterns
 
HCI 2014 (2 of 10): Human Factor. Users
HCI 2014 (2 of 10): Human Factor. UsersHCI 2014 (2 of 10): Human Factor. Users
HCI 2014 (2 of 10): Human Factor. Users
 
HCI 2014 (8 of 10): Data Visualization
HCI 2014 (8 of 10): Data VisualizationHCI 2014 (8 of 10): Data Visualization
HCI 2014 (8 of 10): Data Visualization
 
HCI 2014 (10 of 10): Natural User Interfaces. Ubiquitous Computing
HCI 2014 (10 of 10): Natural User Interfaces. Ubiquitous ComputingHCI 2014 (10 of 10): Natural User Interfaces. Ubiquitous Computing
HCI 2014 (10 of 10): Natural User Interfaces. Ubiquitous Computing
 
Human-Computer Interaction: An Overview
Human-Computer Interaction: An OverviewHuman-Computer Interaction: An Overview
Human-Computer Interaction: An Overview
 
HCI 2014 (6 of 10): Social (Web) Interactions
HCI 2014 (6 of 10): Social (Web) InteractionsHCI 2014 (6 of 10): Social (Web) Interactions
HCI 2014 (6 of 10): Social (Web) Interactions
 
HCI 2015 (9/10) Affective Factors
HCI 2015 (9/10) Affective FactorsHCI 2015 (9/10) Affective Factors
HCI 2015 (9/10) Affective Factors
 
HCI 2014 (7 of 10): HCI Engineering. UI Evaluation. Models
HCI 2014 (7 of 10): HCI Engineering. UI Evaluation. ModelsHCI 2014 (7 of 10): HCI Engineering. UI Evaluation. Models
HCI 2014 (7 of 10): HCI Engineering. UI Evaluation. Models
 
HCI 2014 (5 of 10): UI Design. From Design Patterns to Flow
HCI 2014 (5 of 10): UI Design. From Design Patterns to FlowHCI 2014 (5 of 10): UI Design. From Design Patterns to Flow
HCI 2014 (5 of 10): UI Design. From Design Patterns to Flow
 

Similar to HCI Design Patterns and Responsive Layouts

Hci03 designmethodologies-150910103121-lva1-app6892
Hci03 designmethodologies-150910103121-lva1-app6892Hci03 designmethodologies-150910103121-lva1-app6892
Hci03 designmethodologies-150910103121-lva1-app6892Ștefan Gordîn
 
HCI 2015 (10/10) Natural User Interfaces. Ubiquitous Computing
HCI 2015 (10/10) Natural User Interfaces. Ubiquitous ComputingHCI 2015 (10/10) Natural User Interfaces. Ubiquitous Computing
HCI 2015 (10/10) Natural User Interfaces. Ubiquitous ComputingSabin Buraga
 
Web Technologies (3/12): Web Programming – Web Application Architecture. Web ...
Web Technologies (3/12): Web Programming – Web Application Architecture. Web ...Web Technologies (3/12): Web Programming – Web Application Architecture. Web ...
Web Technologies (3/12): Web Programming – Web Application Architecture. Web ...Sabin Buraga
 
Web Technologies (9/12): Web Services. From Service-Oriented Architectures to...
Web Technologies (9/12): Web Services. From Service-Oriented Architectures to...Web Technologies (9/12): Web Services. From Service-Oriented Architectures to...
Web Technologies (9/12): Web Services. From Service-Oriented Architectures to...Sabin Buraga
 
What did derhess.de before Liip
What did derhess.de before LiipWhat did derhess.de before Liip
What did derhess.de before LiipFlorian Weil
 
Web search algorithms and user interfaces
Web search algorithms and user interfacesWeb search algorithms and user interfaces
Web search algorithms and user interfacesStefanos Anastasiadis
 
Boscochat- A free Wi-Fi ChatRoom in android final documentation
Boscochat- A free Wi-Fi ChatRoom in android final documentationBoscochat- A free Wi-Fi ChatRoom in android final documentation
Boscochat- A free Wi-Fi ChatRoom in android final documentationSamaresh Debbarma
 
Web Technologies (1/12): World Wide Web – Architectural Aspects
Web Technologies (1/12): World Wide Web – Architectural AspectsWeb Technologies (1/12): World Wide Web – Architectural Aspects
Web Technologies (1/12): World Wide Web – Architectural AspectsSabin Buraga
 
Adaptive Computing Seminar Report - Suyog Potdar
Adaptive Computing Seminar Report - Suyog PotdarAdaptive Computing Seminar Report - Suyog Potdar
Adaptive Computing Seminar Report - Suyog PotdarSuyog Potdar
 
NayLinnKo_BIT_InteractionDesign
NayLinnKo_BIT_InteractionDesignNayLinnKo_BIT_InteractionDesign
NayLinnKo_BIT_InteractionDesignNay Linn Ko
 
The Good the Bad and the Ugly of Dealing with Smelly Code (ITAKE Unconference)
The Good the Bad and the Ugly of Dealing with Smelly Code (ITAKE Unconference)The Good the Bad and the Ugly of Dealing with Smelly Code (ITAKE Unconference)
The Good the Bad and the Ugly of Dealing with Smelly Code (ITAKE Unconference)Radu Marinescu
 

Similar to HCI Design Patterns and Responsive Layouts (13)

Hci03 designmethodologies-150910103121-lva1-app6892
Hci03 designmethodologies-150910103121-lva1-app6892Hci03 designmethodologies-150910103121-lva1-app6892
Hci03 designmethodologies-150910103121-lva1-app6892
 
SS2
SS2SS2
SS2
 
HCI 2015 (10/10) Natural User Interfaces. Ubiquitous Computing
HCI 2015 (10/10) Natural User Interfaces. Ubiquitous ComputingHCI 2015 (10/10) Natural User Interfaces. Ubiquitous Computing
HCI 2015 (10/10) Natural User Interfaces. Ubiquitous Computing
 
Web Technologies (3/12): Web Programming – Web Application Architecture. Web ...
Web Technologies (3/12): Web Programming – Web Application Architecture. Web ...Web Technologies (3/12): Web Programming – Web Application Architecture. Web ...
Web Technologies (3/12): Web Programming – Web Application Architecture. Web ...
 
Web Technologies (9/12): Web Services. From Service-Oriented Architectures to...
Web Technologies (9/12): Web Services. From Service-Oriented Architectures to...Web Technologies (9/12): Web Services. From Service-Oriented Architectures to...
Web Technologies (9/12): Web Services. From Service-Oriented Architectures to...
 
Prashant
PrashantPrashant
Prashant
 
What did derhess.de before Liip
What did derhess.de before LiipWhat did derhess.de before Liip
What did derhess.de before Liip
 
Web search algorithms and user interfaces
Web search algorithms and user interfacesWeb search algorithms and user interfaces
Web search algorithms and user interfaces
 
Boscochat- A free Wi-Fi ChatRoom in android final documentation
Boscochat- A free Wi-Fi ChatRoom in android final documentationBoscochat- A free Wi-Fi ChatRoom in android final documentation
Boscochat- A free Wi-Fi ChatRoom in android final documentation
 
Web Technologies (1/12): World Wide Web – Architectural Aspects
Web Technologies (1/12): World Wide Web – Architectural AspectsWeb Technologies (1/12): World Wide Web – Architectural Aspects
Web Technologies (1/12): World Wide Web – Architectural Aspects
 
Adaptive Computing Seminar Report - Suyog Potdar
Adaptive Computing Seminar Report - Suyog PotdarAdaptive Computing Seminar Report - Suyog Potdar
Adaptive Computing Seminar Report - Suyog Potdar
 
NayLinnKo_BIT_InteractionDesign
NayLinnKo_BIT_InteractionDesignNayLinnKo_BIT_InteractionDesign
NayLinnKo_BIT_InteractionDesign
 
The Good the Bad and the Ugly of Dealing with Smelly Code (ITAKE Unconference)
The Good the Bad and the Ugly of Dealing with Smelly Code (ITAKE Unconference)The Good the Bad and the Ugly of Dealing with Smelly Code (ITAKE Unconference)
The Good the Bad and the Ugly of Dealing with Smelly Code (ITAKE Unconference)
 

More from Sabin Buraga

Web 2020 01/12: World Wide Web – aspecte arhitecturale
Web 2020 01/12: World Wide Web – aspecte arhitecturaleWeb 2020 01/12: World Wide Web – aspecte arhitecturale
Web 2020 01/12: World Wide Web – aspecte arhitecturaleSabin Buraga
 
Web 2020 02/12: Programare Web – HTTP. Cookie-uri. Sesiuni Web
Web 2020 02/12: Programare Web – HTTP. Cookie-uri. Sesiuni WebWeb 2020 02/12: Programare Web – HTTP. Cookie-uri. Sesiuni Web
Web 2020 02/12: Programare Web – HTTP. Cookie-uri. Sesiuni WebSabin Buraga
 
Web 2020 03/12: Programare Web – Arhitectura aplicaţiilor Web. Inginerie Web
Web 2020 03/12: Programare Web – Arhitectura aplicaţiilor Web. Inginerie WebWeb 2020 03/12: Programare Web – Arhitectura aplicaţiilor Web. Inginerie Web
Web 2020 03/12: Programare Web – Arhitectura aplicaţiilor Web. Inginerie WebSabin Buraga
 
Web 2020 04/12: Programare Web – Dezvoltarea aplicaţiilor Web în PHP
Web 2020 04/12: Programare Web – Dezvoltarea aplicaţiilor Web în PHP Web 2020 04/12: Programare Web – Dezvoltarea aplicaţiilor Web în PHP
Web 2020 04/12: Programare Web – Dezvoltarea aplicaţiilor Web în PHP Sabin Buraga
 
Web 2020 05/12: Modelarea datelor. Familia XML. Extragerea datelor cu XPath. ...
Web 2020 05/12: Modelarea datelor. Familia XML. Extragerea datelor cu XPath. ...Web 2020 05/12: Modelarea datelor. Familia XML. Extragerea datelor cu XPath. ...
Web 2020 05/12: Modelarea datelor. Familia XML. Extragerea datelor cu XPath. ...Sabin Buraga
 
Web 2020 06/12: Procesarea datelor XML & HTML. Document Object Model
Web 2020 06/12: Procesarea datelor XML & HTML. Document Object ModelWeb 2020 06/12: Procesarea datelor XML & HTML. Document Object Model
Web 2020 06/12: Procesarea datelor XML & HTML. Document Object ModelSabin Buraga
 
Web 2020 07/12: Procesarea datelor XML & HTML – Simple API for XML. Procesări...
Web 2020 07/12: Procesarea datelor XML & HTML – Simple API for XML. Procesări...Web 2020 07/12: Procesarea datelor XML & HTML – Simple API for XML. Procesări...
Web 2020 07/12: Procesarea datelor XML & HTML – Simple API for XML. Procesări...Sabin Buraga
 
Web 2020 08/12: Servicii Web. De la arhitecturi orientate spre servicii la SO...
Web 2020 08/12: Servicii Web. De la arhitecturi orientate spre servicii la SO...Web 2020 08/12: Servicii Web. De la arhitecturi orientate spre servicii la SO...
Web 2020 08/12: Servicii Web. De la arhitecturi orientate spre servicii la SO...Sabin Buraga
 
Web 2020 09/12: Servicii Web. Paradigma REST
Web 2020 09/12: Servicii Web. Paradigma RESTWeb 2020 09/12: Servicii Web. Paradigma REST
Web 2020 09/12: Servicii Web. Paradigma RESTSabin Buraga
 
Web 2020 10/12: Servicii Web. Micro-servicii. Serverless. Specificarea API-ur...
Web 2020 10/12: Servicii Web. Micro-servicii. Serverless. Specificarea API-ur...Web 2020 10/12: Servicii Web. Micro-servicii. Serverless. Specificarea API-ur...
Web 2020 10/12: Servicii Web. Micro-servicii. Serverless. Specificarea API-ur...Sabin Buraga
 
Web 2020 11/12: Interacţiune Web asincronă. Aplicaţii Web de tip mash-up. JAM...
Web 2020 11/12: Interacţiune Web asincronă. Aplicaţii Web de tip mash-up. JAM...Web 2020 11/12: Interacţiune Web asincronă. Aplicaţii Web de tip mash-up. JAM...
Web 2020 11/12: Interacţiune Web asincronă. Aplicaţii Web de tip mash-up. JAM...Sabin Buraga
 
Web 2020 12/12: Securitatea aplicaţiilor Web. Aspecte esenţiale
Web 2020 12/12: Securitatea aplicaţiilor Web. Aspecte esenţialeWeb 2020 12/12: Securitatea aplicaţiilor Web. Aspecte esenţiale
Web 2020 12/12: Securitatea aplicaţiilor Web. Aspecte esenţialeSabin Buraga
 
STAW 01/12: Arhitectura aplicaţiilor Web
STAW 01/12: Arhitectura aplicaţiilor WebSTAW 01/12: Arhitectura aplicaţiilor Web
STAW 01/12: Arhitectura aplicaţiilor WebSabin Buraga
 
STAW 02/12: Programare Web: Limbajul JavaScript. Aspecte esenţiale
STAW 02/12: Programare Web: Limbajul JavaScript. Aspecte esenţialeSTAW 02/12: Programare Web: Limbajul JavaScript. Aspecte esenţiale
STAW 02/12: Programare Web: Limbajul JavaScript. Aspecte esenţialeSabin Buraga
 
STAW 03/12: Programare Web: Limbajul JavaScript. Aspecte moderne: ES6 et al.
STAW 03/12: Programare Web: Limbajul JavaScript. Aspecte moderne: ES6 et al.STAW 03/12: Programare Web: Limbajul JavaScript. Aspecte moderne: ES6 et al.
STAW 03/12: Programare Web: Limbajul JavaScript. Aspecte moderne: ES6 et al.Sabin Buraga
 
STAW 04/12: Programare Web: Node.js
STAW 04/12: Programare Web: Node.jsSTAW 04/12: Programare Web: Node.js
STAW 04/12: Programare Web: Node.jsSabin Buraga
 
STAW 05/12: Arhitectura navigatorului Web
STAW 05/12: Arhitectura navigatorului WebSTAW 05/12: Arhitectura navigatorului Web
STAW 05/12: Arhitectura navigatorului WebSabin Buraga
 
STAW 06/12: JavaScript în navigatorul Web. De la DOM la Ajax şi mash-up-uri
STAW 06/12: JavaScript în navigatorul Web. De la DOM la Ajax şi mash-up-uriSTAW 06/12: JavaScript în navigatorul Web. De la DOM la Ajax şi mash-up-uri
STAW 06/12: JavaScript în navigatorul Web. De la DOM la Ajax şi mash-up-uriSabin Buraga
 
STAW 07/12: Ingineria dezvoltării aplicaţiilor JavaScript
STAW 07/12: Ingineria dezvoltării aplicaţiilor JavaScriptSTAW 07/12: Ingineria dezvoltării aplicaţiilor JavaScript
STAW 07/12: Ingineria dezvoltării aplicaţiilor JavaScriptSabin Buraga
 
STAW 08/12: Programare Web. Suita de tehnologii HTML5
STAW 08/12: Programare Web. Suita de tehnologii HTML5STAW 08/12: Programare Web. Suita de tehnologii HTML5
STAW 08/12: Programare Web. Suita de tehnologii HTML5Sabin Buraga
 

More from Sabin Buraga (20)

Web 2020 01/12: World Wide Web – aspecte arhitecturale
Web 2020 01/12: World Wide Web – aspecte arhitecturaleWeb 2020 01/12: World Wide Web – aspecte arhitecturale
Web 2020 01/12: World Wide Web – aspecte arhitecturale
 
Web 2020 02/12: Programare Web – HTTP. Cookie-uri. Sesiuni Web
Web 2020 02/12: Programare Web – HTTP. Cookie-uri. Sesiuni WebWeb 2020 02/12: Programare Web – HTTP. Cookie-uri. Sesiuni Web
Web 2020 02/12: Programare Web – HTTP. Cookie-uri. Sesiuni Web
 
Web 2020 03/12: Programare Web – Arhitectura aplicaţiilor Web. Inginerie Web
Web 2020 03/12: Programare Web – Arhitectura aplicaţiilor Web. Inginerie WebWeb 2020 03/12: Programare Web – Arhitectura aplicaţiilor Web. Inginerie Web
Web 2020 03/12: Programare Web – Arhitectura aplicaţiilor Web. Inginerie Web
 
Web 2020 04/12: Programare Web – Dezvoltarea aplicaţiilor Web în PHP
Web 2020 04/12: Programare Web – Dezvoltarea aplicaţiilor Web în PHP Web 2020 04/12: Programare Web – Dezvoltarea aplicaţiilor Web în PHP
Web 2020 04/12: Programare Web – Dezvoltarea aplicaţiilor Web în PHP
 
Web 2020 05/12: Modelarea datelor. Familia XML. Extragerea datelor cu XPath. ...
Web 2020 05/12: Modelarea datelor. Familia XML. Extragerea datelor cu XPath. ...Web 2020 05/12: Modelarea datelor. Familia XML. Extragerea datelor cu XPath. ...
Web 2020 05/12: Modelarea datelor. Familia XML. Extragerea datelor cu XPath. ...
 
Web 2020 06/12: Procesarea datelor XML & HTML. Document Object Model
Web 2020 06/12: Procesarea datelor XML & HTML. Document Object ModelWeb 2020 06/12: Procesarea datelor XML & HTML. Document Object Model
Web 2020 06/12: Procesarea datelor XML & HTML. Document Object Model
 
Web 2020 07/12: Procesarea datelor XML & HTML – Simple API for XML. Procesări...
Web 2020 07/12: Procesarea datelor XML & HTML – Simple API for XML. Procesări...Web 2020 07/12: Procesarea datelor XML & HTML – Simple API for XML. Procesări...
Web 2020 07/12: Procesarea datelor XML & HTML – Simple API for XML. Procesări...
 
Web 2020 08/12: Servicii Web. De la arhitecturi orientate spre servicii la SO...
Web 2020 08/12: Servicii Web. De la arhitecturi orientate spre servicii la SO...Web 2020 08/12: Servicii Web. De la arhitecturi orientate spre servicii la SO...
Web 2020 08/12: Servicii Web. De la arhitecturi orientate spre servicii la SO...
 
Web 2020 09/12: Servicii Web. Paradigma REST
Web 2020 09/12: Servicii Web. Paradigma RESTWeb 2020 09/12: Servicii Web. Paradigma REST
Web 2020 09/12: Servicii Web. Paradigma REST
 
Web 2020 10/12: Servicii Web. Micro-servicii. Serverless. Specificarea API-ur...
Web 2020 10/12: Servicii Web. Micro-servicii. Serverless. Specificarea API-ur...Web 2020 10/12: Servicii Web. Micro-servicii. Serverless. Specificarea API-ur...
Web 2020 10/12: Servicii Web. Micro-servicii. Serverless. Specificarea API-ur...
 
Web 2020 11/12: Interacţiune Web asincronă. Aplicaţii Web de tip mash-up. JAM...
Web 2020 11/12: Interacţiune Web asincronă. Aplicaţii Web de tip mash-up. JAM...Web 2020 11/12: Interacţiune Web asincronă. Aplicaţii Web de tip mash-up. JAM...
Web 2020 11/12: Interacţiune Web asincronă. Aplicaţii Web de tip mash-up. JAM...
 
Web 2020 12/12: Securitatea aplicaţiilor Web. Aspecte esenţiale
Web 2020 12/12: Securitatea aplicaţiilor Web. Aspecte esenţialeWeb 2020 12/12: Securitatea aplicaţiilor Web. Aspecte esenţiale
Web 2020 12/12: Securitatea aplicaţiilor Web. Aspecte esenţiale
 
STAW 01/12: Arhitectura aplicaţiilor Web
STAW 01/12: Arhitectura aplicaţiilor WebSTAW 01/12: Arhitectura aplicaţiilor Web
STAW 01/12: Arhitectura aplicaţiilor Web
 
STAW 02/12: Programare Web: Limbajul JavaScript. Aspecte esenţiale
STAW 02/12: Programare Web: Limbajul JavaScript. Aspecte esenţialeSTAW 02/12: Programare Web: Limbajul JavaScript. Aspecte esenţiale
STAW 02/12: Programare Web: Limbajul JavaScript. Aspecte esenţiale
 
STAW 03/12: Programare Web: Limbajul JavaScript. Aspecte moderne: ES6 et al.
STAW 03/12: Programare Web: Limbajul JavaScript. Aspecte moderne: ES6 et al.STAW 03/12: Programare Web: Limbajul JavaScript. Aspecte moderne: ES6 et al.
STAW 03/12: Programare Web: Limbajul JavaScript. Aspecte moderne: ES6 et al.
 
STAW 04/12: Programare Web: Node.js
STAW 04/12: Programare Web: Node.jsSTAW 04/12: Programare Web: Node.js
STAW 04/12: Programare Web: Node.js
 
STAW 05/12: Arhitectura navigatorului Web
STAW 05/12: Arhitectura navigatorului WebSTAW 05/12: Arhitectura navigatorului Web
STAW 05/12: Arhitectura navigatorului Web
 
STAW 06/12: JavaScript în navigatorul Web. De la DOM la Ajax şi mash-up-uri
STAW 06/12: JavaScript în navigatorul Web. De la DOM la Ajax şi mash-up-uriSTAW 06/12: JavaScript în navigatorul Web. De la DOM la Ajax şi mash-up-uri
STAW 06/12: JavaScript în navigatorul Web. De la DOM la Ajax şi mash-up-uri
 
STAW 07/12: Ingineria dezvoltării aplicaţiilor JavaScript
STAW 07/12: Ingineria dezvoltării aplicaţiilor JavaScriptSTAW 07/12: Ingineria dezvoltării aplicaţiilor JavaScript
STAW 07/12: Ingineria dezvoltării aplicaţiilor JavaScript
 
STAW 08/12: Programare Web. Suita de tehnologii HTML5
STAW 08/12: Programare Web. Suita de tehnologii HTML5STAW 08/12: Programare Web. Suita de tehnologii HTML5
STAW 08/12: Programare Web. Suita de tehnologii HTML5
 

Recently uploaded

Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 3652toLead Limited
 
costume and set research powerpoint presentation
costume and set research powerpoint presentationcostume and set research powerpoint presentation
costume and set research powerpoint presentationphoebematthew05
 
Vertex AI Gemini Prompt Engineering Tips
Vertex AI Gemini Prompt Engineering TipsVertex AI Gemini Prompt Engineering Tips
Vertex AI Gemini Prompt Engineering TipsMiki Katsuragi
 
CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):comworks
 
Pigging Solutions in Pet Food Manufacturing
Pigging Solutions in Pet Food ManufacturingPigging Solutions in Pet Food Manufacturing
Pigging Solutions in Pet Food ManufacturingPigging Solutions
 
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...shyamraj55
 
Unleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding ClubUnleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding ClubKalema Edgar
 
My INSURER PTE LTD - Insurtech Innovation Award 2024
My INSURER PTE LTD - Insurtech Innovation Award 2024My INSURER PTE LTD - Insurtech Innovation Award 2024
My INSURER PTE LTD - Insurtech Innovation Award 2024The Digital Insurer
 
"Federated learning: out of reach no matter how close",Oleksandr Lapshyn
"Federated learning: out of reach no matter how close",Oleksandr Lapshyn"Federated learning: out of reach no matter how close",Oleksandr Lapshyn
"Federated learning: out of reach no matter how close",Oleksandr LapshynFwdays
 
SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024Lorenzo Miniero
 
Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024Scott Keck-Warren
 
Install Stable Diffusion in windows machine
Install Stable Diffusion in windows machineInstall Stable Diffusion in windows machine
Install Stable Diffusion in windows machinePadma Pradeep
 
Benefits Of Flutter Compared To Other Frameworks
Benefits Of Flutter Compared To Other FrameworksBenefits Of Flutter Compared To Other Frameworks
Benefits Of Flutter Compared To Other FrameworksSoftradix Technologies
 
Beyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry InnovationBeyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry InnovationSafe Software
 
My Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationMy Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationRidwan Fadjar
 
APIForce Zurich 5 April Automation LPDG
APIForce Zurich 5 April  Automation LPDGAPIForce Zurich 5 April  Automation LPDG
APIForce Zurich 5 April Automation LPDGMarianaLemus7
 
Streamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupStreamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupFlorian Wilhelm
 

Recently uploaded (20)

Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
 
costume and set research powerpoint presentation
costume and set research powerpoint presentationcostume and set research powerpoint presentation
costume and set research powerpoint presentation
 
Vulnerability_Management_GRC_by Sohang Sengupta.pptx
Vulnerability_Management_GRC_by Sohang Sengupta.pptxVulnerability_Management_GRC_by Sohang Sengupta.pptx
Vulnerability_Management_GRC_by Sohang Sengupta.pptx
 
Vertex AI Gemini Prompt Engineering Tips
Vertex AI Gemini Prompt Engineering TipsVertex AI Gemini Prompt Engineering Tips
Vertex AI Gemini Prompt Engineering Tips
 
DMCC Future of Trade Web3 - Special Edition
DMCC Future of Trade Web3 - Special EditionDMCC Future of Trade Web3 - Special Edition
DMCC Future of Trade Web3 - Special Edition
 
CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):
 
Pigging Solutions in Pet Food Manufacturing
Pigging Solutions in Pet Food ManufacturingPigging Solutions in Pet Food Manufacturing
Pigging Solutions in Pet Food Manufacturing
 
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
 
E-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptx
E-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptxE-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptx
E-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptx
 
Unleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding ClubUnleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding Club
 
My INSURER PTE LTD - Insurtech Innovation Award 2024
My INSURER PTE LTD - Insurtech Innovation Award 2024My INSURER PTE LTD - Insurtech Innovation Award 2024
My INSURER PTE LTD - Insurtech Innovation Award 2024
 
"Federated learning: out of reach no matter how close",Oleksandr Lapshyn
"Federated learning: out of reach no matter how close",Oleksandr Lapshyn"Federated learning: out of reach no matter how close",Oleksandr Lapshyn
"Federated learning: out of reach no matter how close",Oleksandr Lapshyn
 
SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024
 
Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024
 
Install Stable Diffusion in windows machine
Install Stable Diffusion in windows machineInstall Stable Diffusion in windows machine
Install Stable Diffusion in windows machine
 
Benefits Of Flutter Compared To Other Frameworks
Benefits Of Flutter Compared To Other FrameworksBenefits Of Flutter Compared To Other Frameworks
Benefits Of Flutter Compared To Other Frameworks
 
Beyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry InnovationBeyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
 
My Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationMy Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 Presentation
 
APIForce Zurich 5 April Automation LPDG
APIForce Zurich 5 April  Automation LPDGAPIForce Zurich 5 April  Automation LPDG
APIForce Zurich 5 April Automation LPDG
 
Streamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupStreamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project Setup
 

HCI Design Patterns and Responsive Layouts

  • 1. Master on Software Engineering :: Human-Computer Interaction Dr. Sabin-Corneliu Buraga – profs.info.uaic.ro/~busaco/ Human-Computer Interaction from design patterns to flow
  • 2. Master on Software Engineering :: Human-Computer Interaction Dr. Sabin-Corneliu Buraga – profs.info.uaic.ro/~busaco/ “It is not the answer that enlightens, but the question.” Eugene Ionesco
  • 3. Master on Software Engineering :: Human-Computer Interaction Dr. Sabin-Corneliu Buraga – profs.info.uaic.ro/~busaco/ How to present the content to convey meaning, sequence, and points of interaction?
  • 4. Master on Software Engineering :: Human-Computer Interaction Dr. Sabin-Corneliu Buraga – profs.info.uaic.ro/~busaco/ Design Patterns layout (Jenifer Tidwell)
  • 5. Master on Software Engineering :: Human-Computer Interaction Dr. Sabin-Corneliu Buraga – profs.info.uaic.ro/~busaco/ Visual framework assure the use of layout, color and visual style in a consistent manner
  • 6. Master on Software Engineering :: Human-Computer Interaction Dr. Sabin-Corneliu Buraga – profs.info.uaic.ro/~busaco/ Visual framework must be flexible regarding the visual design, depending on the presented content
  • 7. Master on Software Engineering :: Human-Computer Interaction Dr. Sabin-Corneliu Buraga – profs.info.uaic.ro/~busaco/ Visual framework example: visual consistency of the traditional applications and Web sites
  • 8. Master on Software Engineering :: Human-Computer Interaction Dr. Sabin-Corneliu Buraga – profs.info.uaic.ro/~busaco/ discussion …good or bad layout?
  • 9. Master on Software Engineering :: Human-Computer Interaction Dr. Sabin-Corneliu Buraga – profs.info.uaic.ro/~busaco/ discussion …good or bad layout?
  • 10. Master on Software Engineering :: Human-Computer Interaction Dr. Sabin-Corneliu Buraga – profs.info.uaic.ro/~busaco/ Center stage most important part of the UI is located in a center zone, grouping additional tools in small-size areas
  • 11. Master on Software Engineering :: Human-Computer Interaction Dr. Sabin-Corneliu Buraga – profs.info.uaic.ro/~busaco/
  • 12. Master on Software Engineering :: Human-Computer Interaction Dr. Sabin-Corneliu Buraga – profs.info.uaic.ro/~busaco/ Center stage designed by using: size color headlines context
  • 13. Master on Software Engineering :: Human-Computer Interaction Dr. Sabin-Corneliu Buraga – profs.info.uaic.ro/~busaco/
  • 14. Master on Software Engineering :: Human-Computer Interaction Dr. Sabin-Corneliu Buraga – profs.info.uaic.ro/~busaco/ Center stage it could be used in conjunction to other design patterns – e.g., for Web navigation
  • 15. Master on Software Engineering :: Human-Computer Interaction Dr. Sabin-Corneliu Buraga – profs.info.uaic.ro/~busaco/ Card stack content sections are placed on different panels (cards) that can be stacked only one card is visible at a given moment
  • 16. Master on Software Engineering :: Human-Computer Interaction Dr. Sabin-Corneliu Buraga – profs.info.uaic.ro/~busaco/ Card stack usually, labeled – horizontal/vertical – tabs are used the meaning of each label is important
  • 17. Master on Software Engineering :: Human-Computer Interaction Dr. Sabin-Corneliu Buraga – profs.info.uaic.ro/~busaco/
  • 18. Master on Software Engineering :: Human-Computer Interaction Dr. Sabin-Corneliu Buraga – profs.info.uaic.ro/~busaco/ discussion
  • 19. Master on Software Engineering :: Human-Computer Interaction Dr. Sabin-Corneliu Buraga – profs.info.uaic.ro/~busaco/ Closable panels placing the content in separate labeled containers that could be expanded
  • 20. Master on Software Engineering :: Human-Computer Interaction Dr. Sabin-Corneliu Buraga – profs.info.uaic.ro/~busaco/ variations: accordion disclosure triangles slide drawer
  • 21. Master on Software Engineering :: Human-Computer Interaction Dr. Sabin-Corneliu Buraga – profs.info.uaic.ro/~busaco/ Movable panels put different tools or sections of content onto separate panels, and let the user move them around to form a custom layout
  • 22. Master on Software Engineering :: Human-Computer Interaction Dr. Sabin-Corneliu Buraga – profs.info.uaic.ro/~busaco/ Movable panels users have liberty to rearrange their workspace
  • 23. Master on Software Engineering :: Human-Computer Interaction Dr. Sabin-Corneliu Buraga – profs.info.uaic.ro/~busaco/ Movable panels there are situations when it could be inconvenient why?
  • 24. Master on Software Engineering :: Human-Computer Interaction Dr. Sabin-Corneliu Buraga – profs.info.uaic.ro/~busaco/ Right/left alignment permits alignment of the content within a form/table
  • 25. Master on Software Engineering :: Human-Computer Interaction Dr. Sabin-Corneliu Buraga – profs.info.uaic.ro/~busaco/
  • 26. Master on Software Engineering :: Human-Computer Interaction Dr. Sabin-Corneliu Buraga – profs.info.uaic.ro/~busaco/
  • 27. Master on Software Engineering :: Human-Computer Interaction Dr. Sabin-Corneliu Buraga – profs.info.uaic.ro/~busaco/
  • 28. Master on Software Engineering :: Human-Computer Interaction Dr. Sabin-Corneliu Buraga – profs.info.uaic.ro/~busaco/
  • 29. Master on Software Engineering :: Human-Computer Interaction Dr. Sabin-Corneliu Buraga – profs.info.uaic.ro/~busaco/ Right/left alignment for additional considerations, read the article Andrew Coyle, “Design Better Forms”, UX Design, 2016 uxdesign.cc/design-better-forms-96fadca0f49c
  • 30. Master on Software Engineering :: Human-Computer Interaction Dr. Sabin-Corneliu Buraga – profs.info.uaic.ro/~busaco/ Right/left alignment in certain cases, it could be substituted by other design patterns
  • 31. Master on Software Engineering :: Human-Computer Interaction Dr. Sabin-Corneliu Buraga – profs.info.uaic.ro/~busaco/ discussion …good or bad design?
  • 32. Master on Software Engineering :: Human-Computer Interaction Dr. Sabin-Corneliu Buraga – profs.info.uaic.ro/~busaco/ Diagonal balance arrange page elements in an asymmetric fashion, but balance it by putting visual weight into both the upper-left and lower-right corners
  • 33. Master on Software Engineering :: Human-Computer Interaction Dr. Sabin-Corneliu Buraga – profs.info.uaic.ro/~busaco/ example Science science.sciencemag.org
  • 34. Master on Software Engineering :: Human-Computer Interaction Dr. Sabin-Corneliu Buraga – profs.info.uaic.ro/~busaco/ Diagonal balance “Asymmetrical layouts can achieve equilibrium as well, but their tenser, more dramatic form of balance depends on careful manipulation to compensate visually for differences in the size, position, and value of major elements.” Kevin Mullet & Darrell Sano
  • 35. Master on Software Engineering :: Human-Computer Interaction Dr. Sabin-Corneliu Buraga – profs.info.uaic.ro/~busaco/ Property sheet presenting specific properties of an object usually, a two-column layout or a form are used
  • 36. Master on Software Engineering :: Human-Computer Interaction Dr. Sabin-Corneliu Buraga – profs.info.uaic.ro/~busaco/
  • 37. Master on Software Engineering :: Human-Computer Interaction Dr. Sabin-Corneliu Buraga – profs.info.uaic.ro/~busaco/ Liquid layout permits content regrouping when the presentation area is resized
  • 38. Master on Software Engineering :: Human-Computer Interaction Dr. Sabin-Corneliu Buraga – profs.info.uaic.ro/~busaco/ Liquid layout in the case of traditional applications, it could be facilitated by the layout managers
  • 39. Master on Software Engineering :: Human-Computer Interaction Dr. Sabin-Corneliu Buraga – profs.info.uaic.ro/~busaco/ Liquid layout in the case of traditional applications, it could be facilitated by the layout managers examples for Universal Windows Platform (UWP) apps: RelativePanel – an adaptive UI control PointerPoint – unifies raw touch, mouse, and pen data
  • 40. Master on Software Engineering :: Human-Computer Interaction Dr. Sabin-Corneliu Buraga – profs.info.uaic.ro/~busaco/ Liquid layout multi-device context  responsive design (plasticity)
  • 41. Master on Software Engineering :: Human-Computer Interaction Dr. Sabin-Corneliu Buraga – profs.info.uaic.ro/~busaco/ responsive (Web) design adapting the design to a certain interaction context (e.g., screen orientation, resolution, pixel density,…) by using different (Web) design techniques Ethan Marcotte, 2010 www.alistapart.com/articles/responsive-web-design/ resources of interest: https://responsivedesign.is/ discussion
  • 42. Master on Software Engineering :: Human-Computer Interaction Dr. Sabin-Corneliu Buraga – profs.info.uaic.ro/~busaco/ discussion reality: different manners of interaction Aaron Gustafson, “Exploring Adaptive Interfaces”, Generate 2017 www.slideshare.net/AaronGustafson/exploring-adaptive-interfaces-generate-2017
  • 43. Master on Software Engineering :: Human-Computer Interaction Dr. Sabin-Corneliu Buraga – profs.info.uaic.ro/~busaco/ discussion reality: various contexts + changing conditions Aaron Gustafson, “Exploring Adaptive Interfaces”, Generate 2017 www.slideshare.net/AaronGustafson/exploring-adaptive-interfaces-generate-2017
  • 44. Master on Software Engineering :: Human-Computer Interaction Dr. Sabin-Corneliu Buraga – profs.info.uaic.ro/~busaco/ discussion reality: user variety & needs Aaron Gustafson, “Exploring Adaptive Interfaces”, Generate 2017 www.slideshare.net/AaronGustafson/exploring-adaptive-interfaces-generate-2017
  • 45. Master on Software Engineering :: Human-Computer Interaction Dr. Sabin-Corneliu Buraga – profs.info.uaic.ro/~busaco/ discussion CSS media queries flexible content (fonts, tables, images, multimedia) flexible/fluid grid in the Web context, we should consider:
  • 46. Master on Software Engineering :: Human-Computer Interaction Dr. Sabin-Corneliu Buraga – profs.info.uaic.ro/~busaco/ discussion responsive images responsiveimages.org responsive data tables css-tricks.com/responsive-data-tables/ responsive e-mail patterns responsiveemailpatterns.com other useful resources: bradfrost.github.io/this-is-responsive/resources.html
  • 47. Master on Software Engineering :: Human-Computer Interaction Dr. Sabin-Corneliu Buraga – profs.info.uaic.ro/~busaco/ graceful degradation progressive enhancement responsive (Web) design mobile first discussion
  • 48. Master on Software Engineering :: Human-Computer Interaction Dr. Sabin-Corneliu Buraga – profs.info.uaic.ro/~busaco/ bradfrost.github.com/this-is-responsive/patterns.html responsive Web patterns (layout, navigation, content, forms,…)
  • 49. Master on Software Engineering :: Human-Computer Interaction Dr. Sabin-Corneliu Buraga – profs.info.uaic.ro/~busaco/ Design Patterns user actions & commands
  • 50. Master on Software Engineering :: Human-Computer Interaction Dr. Sabin-Corneliu Buraga – profs.info.uaic.ro/~busaco/ UI offers to its users certain controls each action that could be performed by user must be consequently indicated
  • 51. Master on Software Engineering :: Human-Computer Interaction Dr. Sabin-Corneliu Buraga – profs.info.uaic.ro/~busaco/ UI offers to its users certain controls each action that could be performed by user must be consequently indicated (perceived) affordance Donald Norman
  • 52. Master on Software Engineering :: Human-Computer Interaction Dr. Sabin-Corneliu Buraga – profs.info.uaic.ro/~busaco/ “Affordances provide strong clues to the operations of things. Knobs are for turning. Slots are for inserting things into. Balls are for throwing or bouncing. When affordances are taken advantage of, the user knows what to do just by looking: no picture, label, or instruction needed.” Donald Norman (1988)
  • 53. Master on Software Engineering :: Human-Computer Interaction Dr. Sabin-Corneliu Buraga – profs.info.uaic.ro/~busaco/ “Affordances provide strong clues to the operations of things. Knobs are for turning. Slots are for inserting things into. Balls are for throwing or bouncing. When affordances are taken advantage of, the user knows what to do just by looking: no picture, label, or instruction needed.” Donald Norman (1988) see also Victor Kaptelinin, “Affordances”, The Encyclopedia of Human-Computer Interaction (2nd Edition), 2015: www.interaction-design.org/literature/book/the-encyclopedia-of-human-computer- interaction-2nd-ed/affordances
  • 54. Master on Software Engineering :: Human-Computer Interaction Dr. Sabin-Corneliu Buraga – profs.info.uaic.ro/~busaco/ user perception of selection controls’ states hover, focused, pressed, disabled, disabled focused example: Material Design (Google) material.io/guidelines/components/selection-controls.html discussion
  • 55. Master on Software Engineering :: Human-Computer Interaction Dr. Sabin-Corneliu Buraga – profs.info.uaic.ro/~busaco/ discussion
  • 56. Master on Software Engineering :: Human-Computer Interaction Dr. Sabin-Corneliu Buraga – profs.info.uaic.ro/~busaco/ There must be a logical reason for using an interaction control
  • 57. Master on Software Engineering :: Human-Computer Interaction Dr. Sabin-Corneliu Buraga – profs.info.uaic.ro/~busaco/ Interaction controls inspired by reality Dan Saffer switch, dial, button, latch, slider, handle
  • 58. Master on Software Engineering :: Human-Computer Interaction Dr. Sabin-Corneliu Buraga – profs.info.uaic.ro/~busaco/ Interaction controls physical only joystick, trackball, Wiimote, data glove, current wearable devices,…
  • 59. Master on Software Engineering :: Human-Computer Interaction Dr. Sabin-Corneliu Buraga – profs.info.uaic.ro/~busaco/ case study A. Gharibans et al., “Artifact Rejection Methodology Enables Con- tinuous, Noninvasive Measurement of Gastric Myoelectric Activity in Ambulatory Subjects”, Scientific Reports, Vol. 8, March 2018 www.nature.com/articles/s41598-018-23302-9
  • 60. Master on Software Engineering :: Human-Computer Interaction Dr. Sabin-Corneliu Buraga – profs.info.uaic.ro/~busaco/ Interaction controls digital only scroll bar, checkbox, radio button, text box, listview, spinner, etc.
  • 61. Master on Software Engineering :: Human-Computer Interaction Dr. Sabin-Corneliu Buraga – profs.info.uaic.ro/~busaco/
  • 62. Master on Software Engineering :: Human-Computer Interaction Dr. Sabin-Corneliu Buraga – profs.info.uaic.ro/~busaco/ Interaction controls digital + physical examples: mixed reality, interactive tables, multi-user interfaces,…
  • 63. Master on Software Engineering :: Human-Computer Interaction Dr. Sabin-Corneliu Buraga – profs.info.uaic.ro/~busaco/ physical + digital retail marketing: PERCH www.perchinteractive.com/showcase/ case study
  • 64. Master on Software Engineering :: Human-Computer Interaction Dr. Sabin-Corneliu Buraga – profs.info.uaic.ro/~busaco/ Interaction controls “invisible” especially for natural UIs examples: gesture-/voice-/motion-based interactions
  • 65. Master on Software Engineering :: Human-Computer Interaction Dr. Sabin-Corneliu Buraga – profs.info.uaic.ro/~busaco/ “Be the bird” – a Kinect-based installation allowing users to retrieve information through full body motion gagarin.is/work/norwegian_seabird_centre case study
  • 66. Master on Software Engineering :: Human-Computer Interaction Dr. Sabin-Corneliu Buraga – profs.info.uaic.ro/~busaco/ Button groups to present related actions as a small cluster of buttons, aligned either horizontally or vertically revisit Gestalt principles
  • 67. Master on Software Engineering :: Human-Computer Interaction Dr. Sabin-Corneliu Buraga – profs.info.uaic.ro/~busaco/ Button groups we must create several of them if there are more than 3—4 actions remember Hick’s Law
  • 68. Master on Software Engineering :: Human-Computer Interaction Dr. Sabin-Corneliu Buraga – profs.info.uaic.ro/~busaco/ Button groups must be consistently placed within the UI
  • 69. Master on Software Engineering :: Human-Computer Interaction Dr. Sabin-Corneliu Buraga – profs.info.uaic.ro/~busaco/
  • 70. Master on Software Engineering :: Human-Computer Interaction Dr. Sabin-Corneliu Buraga – profs.info.uaic.ro/~busaco/ discussion
  • 71. Master on Software Engineering :: Human-Computer Interaction Dr. Sabin-Corneliu Buraga – profs.info.uaic.ro/~busaco/ Prominent “done” button place the button that finishes a transaction at the end of the visual flow
  • 72. Master on Software Engineering :: Human-Computer Interaction Dr. Sabin-Corneliu Buraga – profs.info.uaic.ro/~busaco/ must focus user’s attention should be big & well-labeled usually, the button label is a textual one, easy to be noticed Prominent “done” button
  • 73. Master on Software Engineering :: Human-Computer Interaction Dr. Sabin-Corneliu Buraga – profs.info.uaic.ro/~busaco/ Preview shows users a preview or summary of what will happen when they perform an action e.g., printing, committing an on-line purchase, etc.
  • 74. Master on Software Engineering :: Human-Computer Interaction Dr. Sabin-Corneliu Buraga – profs.info.uaic.ro/~busaco/ Preview previews help prevent various errors it could facilitate to explain users some actions
  • 75. Master on Software Engineering :: Human-Computer Interaction Dr. Sabin-Corneliu Buraga – profs.info.uaic.ro/~busaco/
  • 76. Master on Software Engineering :: Human-Computer Interaction Dr. Sabin-Corneliu Buraga – profs.info.uaic.ro/~busaco/ Progress indicator indicating how much progress was made on a time-consuming operation  feedback to the user should be provided
  • 77. Master on Software Engineering :: Human-Computer Interaction Dr. Sabin-Corneliu Buraga – profs.info.uaic.ro/~busaco/ Progress indicator user must be informed regarding the system’s current status e.g., changing mouse cursor, highlighting, progress bar,…
  • 78. Master on Software Engineering :: Human-Computer Interaction Dr. Sabin-Corneliu Buraga – profs.info.uaic.ro/~busaco/ Progress indicator < 0.1 sec (almost) instantaneous 0.1 – 1 sec no feedback is necessary; the user will notice that must wait 1 – 5 sec waiting – e.g., busy cursor >1 – 5 sec showing a progress indicator
  • 79. Master on Software Engineering :: Human-Computer Interaction Dr. Sabin-Corneliu Buraga – profs.info.uaic.ro/~busaco/ Progress indicator “Display a progress bar that accurately reflects the time remaining. If you cannot predict how much time an operation will take, say so! Do not lie to or misinform users.” Jef Raskin, 2000
  • 80. Master on Software Engineering :: Human-Computer Interaction Dr. Sabin-Corneliu Buraga – profs.info.uaic.ro/~busaco/ time-remaining (result-based) progress indicator
  • 81. Master on Software Engineering :: Human-Computer Interaction Dr. Sabin-Corneliu Buraga – profs.info.uaic.ro/~busaco/ indeterminate-progress indicator
  • 82. Master on Software Engineering :: Human-Computer Interaction Dr. Sabin-Corneliu Buraga – profs.info.uaic.ro/~busaco/ Progress indicator for practical aspects, see also Progress Bars vs. Spinners: When to Use Which (2016) uxmovement.com/navigation/progress-bars-vs-spinners-when-to-use-which/
  • 83. Master on Software Engineering :: Human-Computer Interaction Dr. Sabin-Corneliu Buraga – profs.info.uaic.ro/~busaco/ discussion
  • 84. Master on Software Engineering :: Human-Computer Interaction Dr. Sabin-Corneliu Buraga – profs.info.uaic.ro/~busaco/ Cancelability provides a way to instantly cancel a time-consuming operation, with no side effects
  • 85. Master on Software Engineering :: Human-Computer Interaction Dr. Sabin-Corneliu Buraga – profs.info.uaic.ro/~busaco/ Cancelability if there are simultaneous operations, we must indicate what it could be canceled
  • 86. Master on Software Engineering :: Human-Computer Interaction Dr. Sabin-Corneliu Buraga – profs.info.uaic.ro/~busaco/ a hard-to-find Cancel operation (Tidwell, 2005)
  • 87. Master on Software Engineering :: Human-Computer Interaction Dr. Sabin-Corneliu Buraga – profs.info.uaic.ro/~busaco/ Multi-level undo it offers a way to easily reverse a series of actions performed by the user
  • 88. Master on Software Engineering :: Human-Computer Interaction Dr. Sabin-Corneliu Buraga – profs.info.uaic.ro/~busaco/ Multi-level undo undoable operations: entered text, database transactions, layout changes, cut & paste, actions regarding certain resources: images, e-mail messages, etc.
  • 89. Master on Software Engineering :: Human-Computer Interaction Dr. Sabin-Corneliu Buraga – profs.info.uaic.ro/~busaco/
  • 90. Master on Software Engineering :: Human-Computer Interaction Dr. Sabin-Corneliu Buraga – profs.info.uaic.ro/~busaco/ Command history keeping a visible record of what was done, to what, and when
  • 91. Master on Software Engineering :: Human-Computer Interaction Dr. Sabin-Corneliu Buraga – profs.info.uaic.ro/~busaco/ Macros defining & executing a sequence (group) of small actions a macro is denoted by a mnemonic
  • 92. Master on Software Engineering :: Human-Computer Interaction Dr. Sabin-Corneliu Buraga – profs.info.uaic.ro/~busaco/ Macros provide a recording mechanism of user actions to be automatically executed another time
  • 93. Master on Software Engineering :: Human-Computer Interaction Dr. Sabin-Corneliu Buraga – profs.info.uaic.ro/~busaco/ discussion
  • 94. Master on Software Engineering :: Human-Computer Interaction Dr. Sabin-Corneliu Buraga – profs.info.uaic.ro/~busaco/ Macros related patterns: Multi-Level Undo Command History
  • 95. Master on Software Engineering :: Human-Computer Interaction Dr. Sabin-Corneliu Buraga – profs.info.uaic.ro/~busaco/ Design Patterns data editing
  • 96. Master on Software Engineering :: Human-Computer Interaction Dr. Sabin-Corneliu Buraga – profs.info.uaic.ro/~busaco/ A frequent activity performed by users is to edit data textual, graphical, multimedia (video, sound), etc.
  • 97. Master on Software Engineering :: Human-Computer Interaction Dr. Sabin-Corneliu Buraga – profs.info.uaic.ro/~busaco/ WYSIWYG (What You See Is What You Get) desktop publishing raster/vector image editing animation scenes video content …
  • 98. Master on Software Engineering :: Human-Computer Interaction Dr. Sabin-Corneliu Buraga – profs.info.uaic.ro/~busaco/ WYSIWYG (What You See Is What You Get) users have some powerful expectations for how a text/content editor should work
  • 99. Master on Software Engineering :: Human-Computer Interaction Dr. Sabin-Corneliu Buraga – profs.info.uaic.ro/~busaco/ discussion Boxy SVG – a SVG editor for non-technical users
  • 100. Master on Software Engineering :: Human-Computer Interaction Dr. Sabin-Corneliu Buraga – profs.info.uaic.ro/~busaco/ Operation: Direct manipulation permits users to “directly” interact with interface objects – by performing operations like grab, push, drag, drop, stack, paint, transform etc. – via some pointing device
  • 101. Master on Software Engineering :: Human-Computer Interaction Dr. Sabin-Corneliu Buraga – profs.info.uaic.ro/~busaco/
  • 102. Master on Software Engineering :: Human-Computer Interaction Dr. Sabin-Corneliu Buraga – profs.info.uaic.ro/~busaco/ Operation: Direct manipulation immediate actions take place with no apparent wait time
  • 103. Master on Software Engineering :: Human-Computer Interaction Dr. Sabin-Corneliu Buraga – profs.info.uaic.ro/~busaco/ Operation: Direct manipulation precise users need to have fine control over the location of that pointer and the objects attached to it
  • 104. Master on Software Engineering :: Human-Computer Interaction Dr. Sabin-Corneliu Buraga – profs.info.uaic.ro/~busaco/ Operation: Selection users have certain expectations regarding the selection of different types of entities: (non)formatted text, elements of vector graphics, abstract components, lists, tables, trees, etc.
  • 105. Master on Software Engineering :: Human-Computer Interaction Dr. Sabin-Corneliu Buraga – profs.info.uaic.ro/~busaco/ Text editors Vector graphics editors, GUI builders Lists, tables, trees Single click Move text insertion cursor here Select just this item Select just this item Double click Select this word Open or edit this item Open or edit this item Triple click Select this line, or select this paragraph N/A N/A Click, drag, release Start selection here, end it there; select all text between them Select everything inside the bounding box (“rubberband”, “marquee” or “marching ants” selection) Drag this item from here to there Tidwell (2005)
  • 106. Master on Software Engineering :: Human-Computer Interaction Dr. Sabin-Corneliu Buraga – profs.info.uaic.ro/~busaco/ Text editors Vector graphics editors, GUI builders Lists, tables, trees Shift- click Start selection at the text insertion cursor, end it at the click point, and select all text between them Add this item to the selection set Add this item to the selection set, plus all intervening items (“contiguous selection”) Control- click Varies from application to application Varies from application to application Add this item to the selection set (“discontiguous selection”) Tidwell (2005)
  • 107. Master on Software Engineering :: Human-Computer Interaction Dr. Sabin-Corneliu Buraga – profs.info.uaic.ro/~busaco/ Operation: Selection regularly, selection of discrete elements is done by using handles
  • 108. Master on Software Engineering :: Human-Computer Interaction Dr. Sabin-Corneliu Buraga – profs.info.uaic.ro/~busaco/ Edit-in-place offers a minimalist editor directly in the place where the user could modify a textual data
  • 109. Master on Software Engineering :: Human-Computer Interaction Dr. Sabin-Corneliu Buraga – profs.info.uaic.ro/~busaco/ Edit-in-place used to edit files/objects names, labels, values of properties,…
  • 110. Master on Software Engineering :: Human-Computer Interaction Dr. Sabin-Corneliu Buraga – profs.info.uaic.ro/~busaco/ Smart selection making the software smart enough to automatically select a coherent group of items, rather than making the user do it examples: text elements, pixels, file names,…
  • 111. Master on Software Engineering :: Human-Computer Interaction Dr. Sabin-Corneliu Buraga – profs.info.uaic.ro/~busaco/ Smart selection when done thoughtlessly, smart selections can be irritating  anti-pattern
  • 112. Master on Software Engineering :: Human-Computer Interaction Dr. Sabin-Corneliu Buraga – profs.info.uaic.ro/~busaco/ Composite selection permits a global selection for a group of entities
  • 113. Master on Software Engineering :: Human-Computer Interaction Dr. Sabin-Corneliu Buraga – profs.info.uaic.ro/~busaco/ Composite selection use different gestures or clicks/taps in different screen areas, such as the composite’s edges versus its insides to determine whether you should select a composite itself or allow its contained objects to be selected
  • 114. Master on Software Engineering :: Human-Computer Interaction Dr. Sabin-Corneliu Buraga – profs.info.uaic.ro/~busaco/
  • 115. Master on Software Engineering :: Human-Computer Interaction Dr. Sabin-Corneliu Buraga – profs.info.uaic.ro/~busaco/ Spring-loaded mode permitting users to change the mode of interaction by pressing a key or a certain mouse button typical keys: Shift Alt Ctrl
  • 116. Master on Software Engineering :: Human-Computer Interaction Dr. Sabin-Corneliu Buraga – profs.info.uaic.ro/~busaco/ Constrained resize supply resize modes with different behavior, such as preserving aspect ratio, for use under special circumstances
  • 117. Master on Software Engineering :: Human-Computer Interaction Dr. Sabin-Corneliu Buraga – profs.info.uaic.ro/~busaco/
  • 118. Master on Software Engineering :: Human-Computer Interaction Dr. Sabin-Corneliu Buraga – profs.info.uaic.ro/~busaco/ Magnetism making the objects “magnetic” to the things a user positions them against when the user drags an object very near one of these things, it should stick
  • 119. Master on Software Engineering :: Human-Computer Interaction Dr. Sabin-Corneliu Buraga – profs.info.uaic.ro/~busaco/ Magnetism it helps compensate for users’ lack of perfect dexterity with a pointing device (typically, the mouse)
  • 120. Master on Software Engineering :: Human-Computer Interaction Dr. Sabin-Corneliu Buraga – profs.info.uaic.ro/~busaco/ Guides it provides horizontal and/or vertical reference lines in order to facilitate the alignment of certain entities
  • 121. Master on Software Engineering :: Human-Computer Interaction Dr. Sabin-Corneliu Buraga – profs.info.uaic.ro/~busaco/ Guides guides make it easier for a user to see that alignment is pixel-perfect
  • 122. Master on Software Engineering :: Human-Computer Interaction Dr. Sabin-Corneliu Buraga – profs.info.uaic.ro/~busaco/ Paste variations offers special functionalities – e.g., format conversions – for the paste operation a classic example: Paste Special – Microsoft Office
  • 123. Master on Software Engineering :: Human-Computer Interaction Dr. Sabin-Corneliu Buraga – profs.info.uaic.ro/~busaco/ How about maintaining the user’s flow?
  • 124. Master on Software Engineering :: Human-Computer Interaction Dr. Sabin-Corneliu Buraga – profs.info.uaic.ro/~busaco/ Remark: keeping a user happy may, therefore, not only affect satisfaction, but may also lead to efficiency and creativity
  • 125. Master on Software Engineering :: Human-Computer Interaction Dr. Sabin-Corneliu Buraga – profs.info.uaic.ro/~busaco/ user interaction (Desmet, 2002; van Gorp, 2006) value – pleasant vs. unpleasant arousal – anxiety vs. boredom
  • 126. Master on Software Engineering :: Human-Computer Interaction Dr. Sabin-Corneliu Buraga – profs.info.uaic.ro/~busaco/ Within interaction, related emotional states must be connectedflow
  • 127. Master on Software Engineering :: Human-Computer Interaction Dr. Sabin-Corneliu Buraga – profs.info.uaic.ro/~busaco/ Flow the mental state of operation in which a person in an activity is fully immersed in a feeling of energized focus, full involvement, and success in the process of the activity
  • 128. Master on Software Engineering :: Human-Computer Interaction Dr. Sabin-Corneliu Buraga – profs.info.uaic.ro/~busaco/ Flow the global sentiment experienced by a person when (s)he is totally involved into a certain activity excitement (arousal)flowcontrolrelaxation boredomapathyapprehensionanxiety optimal experience
  • 129. Master on Software Engineering :: Human-Computer Interaction Dr. Sabin-Corneliu Buraga – profs.info.uaic.ro/~busaco/ the first model of the flow state (Csikszentmihalyi, 1990; van Gorp, 2006; Moneta, 2012)
  • 130. Master on Software Engineering :: Human-Computer Interaction Dr. Sabin-Corneliu Buraga – profs.info.uaic.ro/~busaco/ autotelic work Csikszentmihalyi, 1990, 2008 refers to “work” that is experienced as enjoyable and is associated with flow or optimal experience characterized by a sense of well being and harmony with one’s surroundings
  • 131. Master on Software Engineering :: Human-Computer Interaction Dr. Sabin-Corneliu Buraga – profs.info.uaic.ro/~busaco/ Flow autotelic work identifying and designing the motivational affordances in the task and work environment www.ted.com/talks/mihaly_csikszentmihalyi_on_flow.html
  • 132. Master on Software Engineering :: Human-Computer Interaction Dr. Sabin-Corneliu Buraga – profs.info.uaic.ro/~busaco/ Negative example: providing feedback that is perceived as controlling rather than informative tends to reduce intrinsic motivation Deci, Ryan & Koestner, 1999 Szalma & Hancock, 2008 discussion
  • 133. Master on Software Engineering :: Human-Computer Interaction Dr. Sabin-Corneliu Buraga – profs.info.uaic.ro/~busaco/ Group flow when a group (team) cooperates to agree on goals, tasks + behavioral patterns, then the social flow (group cohesion) is much more likely to occur Charles Walker (2010) larger context: crowd psychology
  • 134. Master on Software Engineering :: Human-Computer Interaction Dr. Sabin-Corneliu Buraga – profs.info.uaic.ro/~busaco/ “Conclusion” layout, actions & editing patterns + flow inspired-ui.com
  • 135. Master on Software Engineering :: Human-Computer Interaction Dr. Sabin-Corneliu Buraga – profs.info.uaic.ro/~busaco/ next lecture: design patterns for social interactions