CMPUT 301: Lecture 15 Task Analysis Lecturer: Martin Jagersand Department of Computing Science...

33
CMPUT 301: Lecture 15 Task Analysis Lecturer: Martin Jagersand Department of Computing Science University of Alberta Notes based on previous courses by Ken Wong, Eleni Stroulia Zach Dodds, Martin Jagersand

Transcript of CMPUT 301: Lecture 15 Task Analysis Lecturer: Martin Jagersand Department of Computing Science...

CMPUT 301: Lecture 15Task Analysis

Lecturer: Martin JagersandDepartment of Computing Science

University of Alberta

Notes based on previous courses byKen Wong, Eleni Stroulia

Zach Dodds, Martin Jagersand

2

Today:

• Some notes on the main course project.

• Hierarchical task analysis

• Temporal execution plans

• Knowledge based analysis

3

Task Analysis

• Process of analyzing the way people perform their jobs:– the things they do– the things they act on– the things they need to know

• Focuses on observable aspects of a task (as opposed to internal cognitive states)

4

Goal:

• For Computer Science: 1. To understand how people solve tasks 2. To be able to map parts of this work

effectively into a computer program (which people still usually interact with)

• But nothing new under the sun: Consider how early capitalist theory (e.g. Adam Smith) and industrialists (e.g. Henry Ford) subdivided and analyzed factory work to increase economic gain

5

Task Analysis

• To clean the house:– get the vacuum cleaner out– attach the appropriate tool– clean the rooms– when the dust bag gets full, replace it– put the vacuum cleaner and tools away

6

Task Analysis

• To vacuum, need to know about:– vacuum cleaners– tool attachments– dust bags– storage closet– rooms to be cleaned– etc.

7

Task Analysis

• Three approaches:– task decomposition (hierarchical and temporal)

– look at splitting a task into subtasks and the order in which these are performed

– knowledge-based analysis– look at what users need to know about objects and

actions involved in a task

– entity-relation-based techniques– look at identifying the actors and objects, the

relationships between them, and the actions performed

8

Task Analysis

• Purpose:– for new systems, helps in capturing and

deriving the requirements, prior to design– for existing systems, helps in clarifying

knowledge about the current situation

• Issues:– may include non-computer activities– focus on observable user behavior

9

Task Decomposition

• Hierarchical task analysis (HTA):1. produce a hierarchy of tasks and subtasks

2. produce temporal plans to describe ordering of (sub)tasks and conditions under which they occur

10

HTATask Decomposition

• 0 To clean the house:– 1 get the vacuum cleaner out– 2 attach the appropriate tool– 3 clean the rooms

– 3.1 clean the hall

– 3.2 clean the living room

– 3.3 clean the bedrooms

– 4 empty the dust bag– 5 put the vacuum cleaner and tools away

11

HTATask Decomposition

• Possible temporal plans for tasks and subtasks:– plan 0

– do 1, 2, 3, 5 in that order

– when the dust bag gets full, do 4

– plan 3:– do any of the rooms 3.1, 3.2, or 3.3 in any order

depending on which rooms need cleaning

12

Task Decomposition

• Temporal refinements:– plan 3

– do 3.1 every day

– do 3.2 once a week

– do 3.3 when visitors are coming

13

Task Decomposition

• When to stop decomposing subtasks?

• Example: Computer assisted training system:– P x C < threshold

– P = probability of making a mistake

– C = cost of the mistake

– depends on intended purpose and audience

14

Task Decomposition

• Other stopping rules:

1. When human is too complex to model:– when the task contains complex motor

responses (human sensory motor)– when the task involves internal decision

making (human cognitive)

2. Benefit analysis of time, economic return etc.

15

Task Decomposition:Add sequential and temporal info

16

Task Decomposition:Refine and add iteration

Note: loop!

17

Temporal Task Decomposition

• Types of plans:– fixed sequence

– e.g., make pot

– optional tasks– e.g., empty pot

– waiting for events– e.g., when kettle boils

– cycles– e.g., pour tea

– time-sharing– e.g., boil water and

empty pot

– discretionary

– combinations

18

Knowledge-Based Analysis

• Understand the knowledge needed to perform a task:– list all objects and actions involved– build taxonomies to structure these– use this understanding for training

19

Knowledge-Based Analysis

• Need to know about: car control classification– steering steering wheel, indicators

– engine/speed– direct ignition, accelerator, foot brake

– gearing clutch, gear stick

– lights– external headlights, hazard lights

– internal courtesy light

– parking hand brake, door lock

– etc.

20

Knowledge-Based Analysis

• Taxonomy:– different structures might be possible,

depending on intended purpose and audience– e.g.,

– driving versus repairing by mechanic

21

Knowledge-Based Analysis

• Task descriptive hierarchy:– XOR |

– object in only one category

– AND /– object in all categories

– OR {– object in at least one category

22

Knowledge-Based Analysis

• car controls XOR– …– wash/wipe AND

– function XOR– wipe front wipers, rear wipers

– wash front washers, rear washers

– position XOR– front front wipers, front washers

– rear rear wipers, rear washers

– …

23

Knowledge-Based Analysis

• kitchen item OR– preparation mixing bowl, plate,

chopping board

– cooking frying pan, casserole,saucepan

– dining plate, soup bowl,casserole, glass

24

Knowledge-Based Analysis

• Uniqueness rule:– must be able to distinguish any two specific

objects– e.g.,

– cannot distinguish mixing bowl and chopping board

– can distinguish mixing bowl and plate

25

Knowledge-Based Analysis

• kitchen item AND– / shape XOR

– | dished mixing bowl, casserole,saucepan, soup bowl, glass

– | flat plate, chopping board,frying pan

– / function OR– …

26

Knowledge-Based Analysis

• kitchen item AND– / shape XOR

– …

– / function OR– { preparation mixing bowl, plate,

chopping board

– { cooking frying pan, casserole,saucepan

– { dining XOR– | for food plate, soup bowl, casserole

– | for drink glass

27

Knowledge-Based Analysis

• Unique path:– each object can be represented by a knowledge

representation grammar (KRG) term– e.g.,

– a casserole dish

– kitchen item/shape(dished)/function{cooking,dining(for food)}/

– kitchen item whose shape is dished AND its function is cooking OR dining for food

28

Knowledge-Based Analysis

• Taxonomy of actions:– can also structure actions, based on genericity

instead of a “how to do it” decomposition– make general statements about tasks

29

Knowledge-Based Analysis

• kitchen job OR– { preparation beating, mixing, pouring

– { cooking frying, boiling, baking

– { dining pouring, eating, drinking

30

Knowledge-Based Analysis

• Taxonomies of objects and actions– crosscheck to look for omissions– perhaps easier to see what people use than to

see what they do– add taxonomies

– e.g., classify foods

31

Knowledge-Based Analysis

• Generic descriptions of simple tasks:– KRG sentence– e.g.,

– eating a carrot off a plate

– kitchen job(dining)using a kitchen item/shape(flat)/function{dining,preparation}/to food(root vegetable)

32

Knowledge-Based Analysis

• Issues:– generification

– not bothering with certain low-level distinctions

– too many different KRG sentences– perhaps more generification needed

– too few different KRG sentences– level of abstraction too great

33

End

• What did I learn today?

• What questions do I still have?