Title: SEG 3210 User Interface Design
1SEG 3210User Interface Design Implementation
- Wael Hassan
- SEG3120 Unit-C Part I
2Unit C Task Analysis
- Introduction to Task Analysis
- Tasks and Goals Revisited
- Approaches to task analysis
- A Procedure for task analysis
- Case Study File Manipulation on Command Line
vs. GUI - Mail-Order Case Study Classes of User
31. Introduction to Task Analysis
- Definitions of task analysis
- The process of analyzing and improving the way
people perform their jobs - What people do ? The things they do
- What things they work with ? The things they act
on - What they must know ? The things they need to know
- Provides an essential basis for
- Early stages of interface design
- Evaluation of design at early and late stages
- Structuring training in system use
- Structuring and design of documentation
4Example TASK Clean the house
- In order to clean the house you need to
- Get the vacuum cleaner out
- Fix the appropriate attachments
- Clean the rooms
- When the dust bag gets full, empty it
- Put the vacuum cleaner and tools away
- You must know about
- Vacuum cleaners, their attachments, dust bags
- Cupboards in which the vacuum cleaner is kept
- rooms to be cleaned, etc.
52. Tasks and Goals Revisited
- Goals and tasks are sometimes equated
- We will separate them
- What is a task?
- A procedure
- Performed by one or more classes of user
- Directed towards a goal
- May have a super-task
- Broken down into subtasks
- With possible loops and alternation (if-then)
- Involves actions (at the bottom level)
- A task that involves no problem solving and
cannot be usefully broken down into components - ? Avoid thinking of a task in terms of what the
computer alone must do
62. Tasks and Goals Revisited
- What is a goal?
- A state the user wants to be in
- Achieved by performing a task
- Sub-goals are the goals of subtasks
- The user has to figure out what task to perform
- May or may not be explicitly known in advance of
task execution - e.g. Implicit goal Writing a letter
- general task is known
- details evolve
- goal is achieved when user is satisfied
- e.g. Explicit goal Adding an item to inventory
- task and goal are known by an experienced user
- ? High level goals are less likely to be explicit
- Other perspectives
- A goal is often equated with its task
73. Approaches to task analysis
- Task decomposition
- Splitting task into (ordered) subtasks
- The order in which these are performed
- Knowledge based techniques
- What the user knows about the objects and actions
involved in a task and how that knowledge is
organised - Focus on
- Objects - used in task
- Actions - performed
- Taxonomies represent levels of abstraction
- Entity-relation based analysis
- Relationships between objects, actions and the
people who perform them - General method
- Observe
- Collect unstructured lists of words and actions
- Organize using notation or diagrams
84. A Procedure for Task Analysis
- (case studies are found in subsequent sections)
- Two basic steps
- Model tasks
- Simplify and improve each task model
- Use the simplified task model as a basis for the
user interface.
9Model tasks
- (easier if there is an existing system)
- Observe and interview users
- and/or brainstorm
- and/or prototype
- and/or study documentation
- Determine the classes of users
- Manager, salesperson, shipper, client, etc.
- b) Create a list of all tasks to be performed by
users - c) Prioritize the tasks by frequency of use and
importance - Later on, perform more detailed analysis on
higher-priority tasks - If there is an existing system, one can measure
the usage of commands -
- ? Note different classes of user will use
tasks with different frequencies
10Model tasks
- d) Gather other detailed information about each
task - Why? Determine the goals
- Determine preconditions
- ... what users need to know to perform the task
- ... what are the data and objects involved
(perhaps from a parallel object oriented
analysis) - How? Decompose the task into subtasks and actions
- Determine side-effects of performing the task
- things changed that are not directly relevant to
the goal state - Determine users mental models
- there may be several
- Determine any interrelationships between tasks
- Determine possible breakdowns
- things that can go wrong
- Iteratively perform this step for subtasks
- e) Diagram each task
- Possible techniques
- hierarchies of subtasks (probably best)
- time-lines (scenario diagrams)
- flow-charts
11Simplify and improve each task model
- a) Abstract task models as much as possible
- Determine what the real top level goals are
- Remove details (lower level subtasks) that can
be changed - i.e. subtasks that are part of this office
environment or user interface - situations where different systems would have
somewhat different subtasks - b) Build or improve conceptual models (discussed
later) to help simplify the users thinking about
tasks - c) Add back detailed layers one-by-one
- Think of several alternative sets of subtasks and
determine which is better
12Simplify and improve each task model
- c) Add back detailed layers one-by-one
- Use the following guidelines
- Standardize subtasks
- so similar subtasks are performed in similar ways
- Rearrange the order of subtasks to make them
easier to perform - Reduce the need for the user to perform subtasks
(i.e. reduce overhead) - Minimize setup and configuration by using
defaults - Reduce the need for users to recall from memory
- Where possible have the computer calculate
whatever it can - Eliminate subtasks if their benefit is less than
their cost - Ensure the system guides the user through the
tasks - The system should know how the user works
- It should help the user set up goals
- Account for the possibility of multitasking
- If a user jumps around among tasks ensure steps
need not be repeated and that the user can pick
up where she left off
135. Case Study File Manipulation on Command Line
vs. GUI
- Goal
- Execute a command
- on a command line that has one or two filename
arguments - To be performed
- frequently
- by
- command-line users (often experts these days)
- Preconditions
- Command verb is known
- Filenames are known
- Decomposition
- Ensure command prompt is displayed
- Type command verb
- Enter first filename
- Decide If no second filename, go to step 6
- Enter second filename
- Verify command
- Press ltreturngt
145. Case Study File Manipulation on Command Line
vs, GUI
- Breakdowns
- Command verb incorrect
- Filenames(s) incorrect
- Wrong number of arguments specified
- Arguments in wrong order
- Operation not allowed on filenames
15Goal Delete a file in DOS
- To be performed
- frequently
- by
- command-line users
- Preconditions
- File to delete is known
- System is displaying the command prompt
- Decomposition
- Retrieve the command verb for deleting a
file,e.g. ERASE or DELETE - Think of directory name and filename
- Enter the command
16Goal Delete a file in DOS
- Analysis to improve task model (Possible real
top-level goals) - Make space on disk for something else
- Possible simplification Automatic compressing /
archiving of old files - Get rid of unwanted clutter
- Possible simplification Build version control
into file system so multiple versions do not
accumulate - Ensure nobody else can read file
- Other possible simplifications
- Eliminate need for recall and typing in step 1 by
providing a menu - Simplify steps 2 and 3 by providing direct
manipulation - Have the system prompt the user if the command is
entered without the file spec
17Goal Drag an item to its destination in a GUI
desktop
- To be performed frequently by all users
- Preconditions
- Item to drag is known
- Effect of dropping item on destination is known
- Decomposition
- Locate icon or name of item on screen
- Move cursor to icon
- Press and hold mouse button
- Locate destination on screen
- Move cursor to destination
- Verify that destination highlighted
- Release mouse button
- Breakdowns
- Item to drag is not draggable
- Cursor not over icon in step 2
- Mouse released early or not over destination
- Destination invalid for item being dragged
18Goal Delete a file in a GUI desktop
- To be performed frequently by all users
- Preconditions
- File to delete is known
- Decomposition
- Bring file manager to the foreground(how to do
this depends on the OS version) - Uncover trash/recycle icon if hidden
- Drag file to the trash/recycle bin
- Users mental model
- File will be sitting in the trash/recycle bin and
can be retrieved - Possible simplifications
- Provide a keyboard shortcut for step 1
- Provide a keyboard shortcut for steps 2 and 3
196. Mail-Order Case Study Classes of User
- Client rep/salesperson
- Takes phone orders and queries
- Needs to be able to work very fast
- Client
- Dials in to place orders/queries
- Needs very simple approach
- Shipper
- Assembles orders to be sent to clients when
sufficient inventory is present - Puts items in crates and sends them to clients
- Records that items have been sent
- Return handler
- Handles returns of merchandise by client
206. Mail-Order Case Study Classes of User
- Supplier orderer
- Sends out orders printed by the system in
response to client orders and/or low inventory - Receiver
- Matches packages received from suppliers to
supplier orders - Updates inventory
- Inventory taker
- Verifies inventory matches system
- Adjusts system as necessary, reporting
discrepancies. - Backorder processor
- Sends polite letters when delays occur
- Pursues suppliers so orders can be fulfilled
- Accounts receivable clerk
- Updates system when accounts have been paid
- Pursues derelict clients
- Sets credit limits
- Inventory management analyst
- Decides how much of each item should be kept in
inventory - Manager
- Performs general queries