0% found this document useful (0 votes)
70 views

LECTURE 7 Objects-Actions Interface Model

Definitions Software Process Software Process Model (Humphrey 1990) the set of activities, methods, and practices that are used in the production and evolution of software Software Process Model one specific embodiment of a software process architecture (Humphrey 1990) Software project management
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
70 views

LECTURE 7 Objects-Actions Interface Model

Definitions Software Process Software Process Model (Humphrey 1990) the set of activities, methods, and practices that are used in the production and evolution of software Software Process Model one specific embodiment of a software process architecture (Humphrey 1990) Software project management
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 40

GOMS I –

OBJECTS-ACTIONS
INTERFACE MODEL

1
5/31/2020
OVERVIEW

• There exist two basic interaction models for any


given system :
– Object-Action model : The user first selects an object
and then selects the action to be performed on the
selected object
– Action-Object model : The user first selects an action to
be performed and then selects the objects on which this
action will be performed.

2
5/31/2020
OVERVIEW

• As Graphical User Interfaces (GUI) are replacing the text


mode command based languages, the concern is now
shifted to the visual representation and display of the user's
tasks, objects and actions
• In early days' command based language, users used to
maintain a big load of device dependent syntactic details in
their memory.
• Sometimes this load becomes a burden on performing a
certain task since the users shift their mind mode from the
task domain to the tool domain to remember the
appropriate actions to be performed to get the required
results
3
5/31/2020
OVERVIEW

• This problem still arises sometimes in command based


languages when users try to perform a task through a
sequence of commands.
• If some of these commands are not frequently used, users
will be forced to shift their mind mode from the task they
are performing to the context of the operating system and
try to remember the appropriate command and even
sometimes consulting the manual (help) pages.

4
5/31/2020
SCOPE/APPLICATION

• There has been always distinction between those two models in


several domains starting long ago by compiler designers.
• These designers always wanted to distinguish between;
– syntax, which is the different tokens parsed from a source
code file,
– and the semantics, which are the actual operations invoked
by that text.
• Different areas use the syntactic-semantic model of human
behavior, such as programming, database manipulation facilities and
direct manipulation (Shneiderman 1980,1981)
• The OAI model is also in harmony with the software engineering
model of Object Oriented programming model that has been popular
in the past decades. 5
5/31/2020
EXAMPLE

• To distinguish the difference between the two


models, consider the course of interaction of a user
using a command based system (UNIX) versus
using a direct manipulation GUI environment
(WINDOWS).
• The task is to copy a file from a directory (Unix) or
folder (Windows) to another location

6
5/31/2020
EXAMPLE

• In the command based system which is based on the


Action-Object model, the user starts by specifying the
action to be performed, which is "copy" in our case, next he
specifies the objects on which this action will be performed,
which are the file name and the destination folder
• In contrast, a user on a GUI based environment like
windows chooses the object by clicking on the file
name, and then performs the copy action by dragging the
file from the current folder to the new folder
• Which is synonymous with real life action?
7
5/31/2020
PRINCIPLES

Syntactic knowledge:
• This is the information necessary to be maintained
and memorized by a user to be able to use a certain
system efficiently.
• For example a user of a certain programming
language can use it efficiently only when he knows
a good deal of commands and syntax specific to
this language.
• This kind of knowledge has the following
drawbacks:
8
5/31/2020
PRINCIPLES

• Places a considerable memory load on the


user, which is hard to retain over time unless
that knowledge is applied frequently
(automated to a high level).
– Recognition is usually preferred over recall.
– Most of the time, it is better to provide visual clues in
the interface that make the user recall the underlying
functionality.
9
5/31/2020
PRINCIPLES

• Hard to provide hierarchical or modular structure to


cope with complexity of the system.
– For example, a user using a mail system can have
several modes of termination : ENTER to terminate a
paragraph, CTRL-D to terminate a letter, CTRL-C to
cancel a letter, Q to quit the system, and so on .
– A novice user might be confused by those different
modes of operations having a pretty similar syntactic
structure.
10
5/31/2020
PRINCIPLES

• Syntactic knowledge is system dependent. It's hard to


apply previous system knowledge to the new one.
• This goes from using different keyboard layout to the
different syntax necessary to perform each task
– The reason behind that is that the user builds a mental
model of a system while interacting with it.
– Shifting to a new system, supposedly similar in
functionality, the user tries to apply the previous model
to that system and faces frustration when the results he
gets are not the ones he is expecting. 11
5/31/2020
THE OAI MODEL:

• In the Action-Object model, the computer is seen as


a tool to perform different actions.
• Whereas in the Object-Action model, the user gains
a great sense of control from the feeling of a direct
involvement.
• The computer in this case is seen as a medium
through which different tools are represented, which
is isomorphic to interacting with objects in the real
world.
12
5/31/2020
THE OAI MODEL:

• Designing an OAI model starts with examining and


understanding the tasks to be performed by the system.
• The domain of tasks include the universe of objects
within which the user works to accomplish a certain
goal as well as the domain of all possible actions
performed by the user.
• Once these tasks, objects and actions are agreed
upon, the designer starts by creating an isomorphic
representation of the corresponding interface objects
and actions.
13
5/31/2020
THE OAI MODEL

• The figure (next slide) shows the designer mapping


from the real world universe of objects and
intentions to the interface world universe of
metaphors (representing objects) and plans (of
actions).
• The interface actions are usually performed by
pointing device or keyboard and hence have to be
visual to the user so that the later can decompose
his plan into steps of actions such as pointing,
clicking, dragging, etc... 14
5/31/2020
15
5/31/2020
OAI MODEL

• One major factor that governs the design of direct


manipulation interfaces is that they have to provide a
snapshot of the real world situation through the objects
provided to the user.
• The biggest advantage of direct manipulation systems,
besides being easy to learn and providing immediate
feedback, is that they minimize the syntactic details and
hence minimize the memory load of the user.
• Someone who knows the objects and tasks domains
can learn easily and perform well on such an interface.
16
5/31/2020
TASK HIERARCHIES OF OBJECTS
AND ACTIONS:
• Tasks include hierarchies of objects and actions at
different high and low levels.
• For a certain user, these hierarchies might not be
perfect, but since they are comprehensible, they
provide a great deal of usefulness.

17
5/31/2020
TASK HIERARCHIES OF OBJECTS
AND ACTIONS:
For the user:
• Hierarchical decomposition of a complex task into several
simpler tasks has been a successful way in problem solving
especially when dealing with large complex problems.
• Most real world entities and objects have this property of
being built of hierarchical simple structures.
• Similarly, intentions can be decomposed into a plan of
small action steps.
• People learn tasks, actions and objects through their
course of life while interacting with these objects and
learning about their properties, functionalities and
limitations. 18
5/31/2020
TASK HIERARCHIES OF OBJECTS
AND ACTIONS:
• It is easy to conclude that people learn these issues
independently from the underlying implementation
on a certain system.
• We note that a user has to be first proficient in the
task domain before using an interface to accomplish
those real-world tasks

19
5/31/2020
TASK HIERARCHIES OF OBJECTS
AND ACTIONS:
For the designer:
The following steps are recommended (Shneiderman)
in order to build correct tasks hierarchies by
designers for a system:
– 1 - Know about the users and their tasks (Interviewing
users, reading workbooks and taking training sessions)
– 2 - Generate hierarchies of tasks and objects to model
the users' tasks
– 3 - Design interface objects and actions that
metaphorically map to the real world universe 20
5/31/2020
INTERFACE HIERARCHIES OF OBJECTS
AND ACTIONS:
• Similar to the task domain, the interface domain
contains hierarchies of objects and tasks at different
levels
Interface Objects:
– Users interacting with a computer get to understand
some high level concepts relevant to that system. As an
example, they learn that computer stores information,
that these information are stored in files contained within
a hierarchy of directories, and that each file has its own
attributes like name, size, date, etc ...
21
5/31/2020
INTERFACE HIERARCHIES OF OBJECTS
AND ACTIONS:
Interface Actions:
– These are also hierarchies of lower levels actions.
– A high level plan to create a text file might involve
mid-level actions such as creating a file, inserting text
and saving that file.
– The mid-level action of saving a file the file can be
decomposed into lower level actions such as storing
the file with a backup copy and may be applying the
access control rights.
– Further lower level actions might involve choosing the
name of the file, the location folder to be saved in,
dealing with errors such as space shortage, and so
on...
22
5/31/2020
INTERFACE HIERARCHIES OF OBJECTS
AND ACTIONS:
For the user:
– There are several ways users learn interface objects and
actions such as demonstrations, sessions, or trial and error
sessions. When these objects and actions have logical
structure that can be related to other familiar task objects
and actions, this knowledge becomes stable in the user's
memory.
For the designer:
– The OAI model helps a designer to understand the complex
processes that a user has to perform in order to successfully
use an interface to perform a certain task.
– Designers model the interface actions and objects based on
familiar example and then fine tune these models to fit the23
5/31/2020

task and the user.


• People are different, and individuals have their own
way in performing a particular task.
• Of course there are lots of standards governing the
way people accomplishing certain missions or
activities but the whole picture for everyone is pretty
much diverse.
• It is true that direct manipulation environments are
proven to be efficient
LIMITATIONS for most users but they have
AND CHALLENGES:
their limitations.
24
5/31/2020
• It's hard to apply a series of actions, that you
already performed on an object, to another set of
objects (what command line users call "batching") ..
• It is hard to integrate batching techniques in visual
environments since those techniques rely mainly on
the concept of applying a sequence of actions on
some objects, some of which exist only as
intermediate results from an action in the same
LIMITATIONS
sequence AND CHALLENGES:
25
5/31/2020
• It's also hard in the object-action model to perform
pipelining .
• In a pipeline, outputs of previous action-object command
can be fed to another action and so on .
• Constructing a pipeline in Unix is simple and proven very
efficient ,again because of the nature of the model used.
• In an objects-actions model environment, it is hard to
construct pipelines and the way people accomplish such
tasks is creating AND
LIMITATIONS intermediate objects and applying
CHALLENGES:
subsequent actions on these objects.
26
5/31/2020
• One last challenge appears when users start to become
proficient using a certain system, and their performance
curve start to rise.
• At a certain time, in a visual environment, and for certain
natures of tasks, objects-action model will perform poorly.
• One of the examples is programmers using a visual tool to
design an object oriented program by visually drawing
classes, objects and relationships.
• A skilled programmer is much faster typing than using a
mouse. Shifting hands between the keyboard and mouse
LIMITATIONS
(to draw an objectAND CHALLENGES:
and name it) introduces certain delay
27
5/31/2020
APPLICATIONS TO DESIGN

28
5/31/2020
THREE ASPECTS OF MENTAL MODELS

• The design model


– what the designer has in
mind about the system
• the user’s model
– what the user think about
the system might work
• the system image
– how the system actually
works

29
5/31/2020
Designers

THE USER-NEEDS
cooperateGAP
primarily with the
paying clients
 Designers often
 do not know
the end- users
 Paying clients
often do not
know the end-
users

30
5/31/2020
PRINCIPLE #1: KNOW YOUR USERS

• Who are they?


• What do they do?
• How do they do it? etc

31
5/31/2020
PRINCIPLE #2: INVOLVE USERS
EARLY AND CONTINUOUSLY

• answer the following questions:


– What kind of living environment / product /
service do you want to investigate?
– What kind of futuristic scenario do you want to
develop?

32
5/31/2020
WHY ARE USERS SIMILAR?

33
5/31/2020
WHY ARE USERS DIFFERENT?

• genetic differences
– gender, color of the skin, size, etc.
• family background
– traditions, social status, religion, prosperity, etc.
• peer group background
– age, interests, habits, attitudes, etc.
• society/nationality
– culture, language, habits, attitudes, laws, etc. 34
5/31/2020
 External factors
CAUSES FOR INDIVIDUAL BEHAVIOR
 family

 school/education
• Internal factors  peer group
– genes  work environment
– physiological aspects
 living environment
– psychological aspects
 written laws
– cognitive experiences
– emotional experiences  unwritten “laws”

 taboos

35
5/31/2020
HOW DO WE PERCEIVE THE WORLD?

• Senses
– eyes
– ears
– nose
– taste
– skin
• mind & memory
• “heart”
36
5/31/2020
GET FAMILIAR WITH FEELINGS

• Exercise-4
– talk to your neighbor 3 minutes about some
emotional experiences in your life
– your neighbor has to listen carefully, and to
give feedback about his/her impression of
your actual feelings now here in this room
while you are talking

– do this exercise again with changed roles


37
5/31/2020
MODELS OF USERS

• the naive vis-à-vis prototype (don’t use this for


design!)
• a known system with structure and behavior analogous
to the system under consideration
• a prototypical system (the ideal user)
• an abstract description of the relevant aspects of a
system (e.g., a mental model)

38
5/31/2020
REMEMBER THE COGNITIVE
SCIENCE VIEW

39
5/31/2020
SUMMARY

• The decision to use Object –Action or Action-


Object Model is driven by the users skills, the
tasks they are to perform and the mode of
interaction.
• It is the designer’s duty to ensure that the
model used is isomorphic to interaction with
objects in the real world, within the context of
the user
40
5/31/2020

You might also like