Upload
dcumpiua
View
459
Download
2
Tags:
Embed Size (px)
Citation preview
TASK ANALYSIS
Grau en Enginyeria Informàtica
User Centred Design
Roles tasks
• Roles are only a tiny part of the picture when it comes to the needs and behaviors of users. They tell us, approximately, what kind of activities a user may undertake, but they say nothing about how and when tasks are performed. • So, for example, we may identify an accounting or bookkeeping
role, but we would need to do user research to discover that some tasks are performed many times a day while others are relatively rare. The implications of these differences are significant for interactive systems design.
William Hudson. 2013. User stories don't help users: introducing persona stories.
Interactions 20, 6 (November 2013), 50-53. DOI=10.1145/2517668 http://doi.acm.org/10.1145/2517668
Task Analysis - User Centred Design 2 / 48
Task Analysis - User Centred Design
People use computers and computerized equipement to help them carry out tasks, as part of their work or in pursuit of
other goals outside their working life[P. Johnson, Human computer interaction
psychology, task analysis, and software engineering]
Use
of t
ask
mod
els
in th
e de
sign
cyc
leF
abio
Pat
ernò
IST
I-C
.N.R
.
3 / 48
Introduction
• Task analysis is the
• Techniques for task analysis:• decomposition of tasks into subtasks• taxonomic classification of task knowledge• listing things used and actions performed
• Sources of information:• Existing documentation• Observation• Interviews• User profiles
• Using task analysis to design:• Manuals, documentation and New systems
Task Analysis - User Centred Design
study perform existingenvision will perform non-existing of the way people tasks with systems
4 / 48
Definitions
• Task• Goal• Basic Task• Task Analysis <> Activity analysis • Task Modeling
Task Analysis - User Centred Design 5 / 48
What is the point of Task Analysis?
• Determine people's jobs:• what people DO• what THINGS they work with• what is the INFORMATION
they know or/and the information they must know for performing their work
• Cover all/most cases
• Cover all/most users
Task Analysis - User Centred Design
• Example: job of housekeeping
• in order to clean the house• 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
• must know about:• Where vacuum cleaners are• Where are their attachments• How to remove the dust bags• Where are the new bags• Evaluate if the rooms are clean or
need to be cleaned• ...
6 / 48
Task analysis & its relationship to idea generation and development
Task Analysis - User Centred Design
TA
Implementation of first prototype
Test
OK
Modification of prototype
Stop
Y
N
User’s task knowledge Other knowledge
Task Analyst
Software DesignerTask Analyst
User
Idea Generation
Idea Development
Software Expert
7 / 48
Approaches to task analysis
• Task decomposition• splitting task into (ordered) subtasks
• Knowledge based techniques• what the user knows about the task• and how it is organized
• Entity/object based analysis• relationships between objects, actions and the people who perform
them
• Lots of different notations/techniques
Task Analysis - User Centred Design 8 / 48
Differences from other techniques
Systems analysis vs Task analysis
system design focus on the user
Cognitive models vs Task analysis
internal mental state
focus on external actions
practiced ‘unit’ task focus on whole job
Task analysis of word processing would include activities such as fetching documents from the filling cabinet, changing the printer ribbon ... as well as the interaction with the computer.
Task analysis tends to look more at the observable behaviour of users than their internal mental state.
Task Analysis - User Centred Design 9 / 48
Engineering task MODELS
• Flexible and expressive notations• Systematic methods able to indicate how to use
information in the task models• Availability of automatic tools to use such information
efficiently
• Why Model-Based approaches?• Highlight important information• Help to manage complexity • Useful to support methods• One important aspect of most development methods• ...
Task Analysis - User Centred Design 10 / 48
Use of Task Models
• Better understanding of the application (and in particular its use)
• Record discussions (multidisciplinary)• Help design• Help usability evaluation• Help performance evaluation• Help user in performing the tasks (contextual help)• Documentation (content + structure)
Task Analysis - User Centred Design 11 / 48
Representations of Task Models
• GOMS family• Goals, Operators, Methods, and Selection rules
• UAN• User Action Notation
• K-MADe• Kernel of Model for Activity Description environment
• Hierarchical Task Analysis (HTA)• Ex.: AMBOSS (HTA especially for safety critical systems)• Tool: TaskArchitect (http://taskarchitect.com)
• Concur Task Trees (CTT)• uses LOTOS temporal operators
• Human-centered Assessment and Modeling to Support Task Engineering for Resilient Systems (Hamsters)
What in common?• Different syntax (textual vs
graphical)• Different level of formality• Different set of operators for task
composition
http://www.irit.fr/recherches/ICS/softwares/hamsters
• http://www.w3.org/2012/02/ctt• http://giove.isti.cnr.it/tools/CTTE/home
Task Analysis - User Centred Design 12 / 48
GOMS (Goals, Operators, Methods, and Selection rules) Example
GOAL: EDIT-MANUSCRIPTGOAL: EDIT-UNIT-Task repeat until no more unit tasks
GOAL: ACQUIRE-UNIT-TASKGET-NEXT-PAGE if at end of manuscriptGET-NEXT-TASK
GOAL: EXECUTE-UNIT-TASKGOAL:LOCATE-LINE
[select: USE-QS-METHODUSE-LF-METHOD]
GOAL: MODIFY-TEXT[select: USE-S-METHOD
USE-M-METHOD]VERIFY-EDIT
Task Analysis - User Centred Design 13 / 48
Limitations of GOMS
• It does not consider user errors• It does not consider the possibility of interruptions• It considers only sequential tasks• It can be inadequate for distributed applications (such as
web-based applications)
Task Analysis - User Centred Design 14 / 48
UAN - User Action Notation
• 2 complementary set of information• A hierarchy of tasks LOTOS (similar to CTT)• A table for describing states and feedback
• Textual notation • Introduced in 1992 (Hix & Hartson huge success
Developing user interfaces Ensuring, Usability Through Product & Process)
Task Analysis - User Centred Design 15 / 48
Example of UAN specification
Task: SelApplication User Action Interface Feedback Interface State ~[x,y in AppICON] (t<tdoubleClick)
w’!: w’-! UnMap(PrevAppliMenu) Map(AppMenu) UnMap(AppICON)
CurAppli=App CurMenu=AppMenu
Task Analysis - User Centred Design
Task: BuildRequest:((SelR | ClearR | IconifyR)*--> SpecField+)
16 / 48
HTA: Textual description
• Hierarchy description ...0. in order to clean the house
1. get the vacuum cleaner out
2. get the appropriate attachment
3. clean the rooms3.1. clean the hall
3.2. clean the living rooms
3.3. clean the bedrooms
4. empty the dust bag
5. put vacuum cleaner and attachments away
• ... and PLANSPlan 0: do 1 - 2 - 3 - 5 in that order. when the dust bag gets full do 4
Plan 3: do any of 3.1, 3.2 or 3.3 in any order depending on which rooms need cleaning
only the plans denote order
Task Analysis - User Centred Design 17 / 48
Parse scenario using HTA
0. in order to clean the house 1. get the vacuum cleaner out 2. get the appropriate attachment 3. clean the rooms 3.1. clean the hall 3.2. clean the living rooms 3.3. clean the bedrooms 4. empty the dust bag 5. put vacuum cleaner and attachments away
get out cleanerfix carpet headclean dinning roomclean main bedroomempty dustbagclean sitting roomput cleaner away
1.
2.
3.2.
3.3.
3.2.
3.
4.
5.
0.
Task Analysis - User Centred Design 18 / 48
HTA. Graphic notation
Task Analysis - User Centred Design 19 / 48
Diagrammatic HTA
Task Analysis - User Centred Design 20 / 48
waiting …
• is waiting part of a plan?… or a task?
• generally• task – if ‘busy’ wait
• you are actively waiting
• plan – if end of delay is the event• e.g. “when alarm rings”, “when reply arrives”
• in this example …• perhaps a little redundant …• TA not an exact science
Task Analysis - User Centred Design 21 / 48
Refining the description
Given initial HTA (textual or diagram)How to check / improve it?
Some heuristics:paired actions e.g., where is 'turn on gas'
restructure e.g., generate task 'make pot'
balance e.g., is 'pour tea' simpler than making pot?
generalise e.g., make one cup ….. or more
Task Analysis - User Centred Design 22 / 48
Refined HTA for making tea
Task Analysis - User Centred Design 23 / 48
Types of plan
fixed sequence - 1.1 then 1.2 then 1.3
optional tasks - if the pot is full 2
wait for events - when kettle boils 1.4
cycles - do 5.1 5.2 while there are still empty cups
time-sharing - do 1; at the same time ...
discretionary - do any of 3.1, 3.2 or 3.3 in any order
mixtures - most plans involve several of the above
Task Analysis - User Centred Design 24 / 48
ConcurTaskTrees
• Focus on Actions and Tasks • Hierarchical Structure• Graphical Syntax• Rich set of temporal operators• Task allocation• Objects and task attributes
Task Analysis - User Centred Design 25 / 48
Task Models vs Scenarios
• Scenarios are informal descriptions of a specific use in a specific context
• Task models describe the possible activities and their relationships
• Scenarios can support task development• Task models can support scenarios identification
Task Analysis - User Centred Design 26 / 48
Moving from scenarios to tasks
• Find verbs = tasks• Find words = objects • Find adverbs = temporal relationships
Task Analysis - User Centred Design 27 / 48
Moving from scenarios to tasks
Task Analysis - User Centred Design 28 / 48
ConcurTaskTrees Notation
Main features• (very intuitive) Hierarchical structure, has two advantages:
• it provides a large range of granularity allowing large and small task structures to be reused,
• it enables reusable task structures to be defined at both a low and a high semantic level
• Graphical syntax, more easy to interpret, reflecting the logical structure and with a tree-like form
• Concurrent notation, operators for temporal ordering are used to link subtasks at the same abstraction level.
• Focus on activities, it allows designers to concentrate on the most relevant aspects when designing interactive applications
Task Analysis - User Centred Design 29 / 48
CTT. Node notation
Task Analysis - User Centred Design 30 / 48
Temporal Operators
• Enabling T1 >> T2 or T1 [ ]>> T2 • Disabling T1 [> T2 • Interruption T1 |> T2• Choice T1 [ ] T2 • Iteration T1* or T1{n} • Concurrency T1 ||| T2 T1 |[]| T2• Concurrency (must finish first) T1 |=| T2 • Optionality [T]
Task Analysis - User Centred Design 31 / 48
T1 [] T2 Elección. Selección alternativa entre dos tareas. Una vez que se esta realizando una de ellas la otra no esta disponible al menos hasta que termine la que esta activa.
T1 |=| T2 Independiencia de orden. Las acciones de las dos tareas pueden realizarse en cualquier orden.
T1 ||| T2 Entrelazado (concurrencia independiente) Interleaving. Las acciones de las dos tareas concurrentes pueden realizarse en cualquier orden.
T1 |[]| T2 Sincronización (Concurrencia con intercambio de Información). Las dos tareas tiene que sincronizarse en alguna de sus acciones para intercambiar información.
T1 >> T2 Activar (enabling). Cuando termina la T1 se activa la T2. Las dos tareas se realizan de forma secuencial.
T1 []>> T2 Activar con paso de información. Cuando termina T1 genera algún valor que se pasa a T2 antes de ser activada.
T1 [> T2 Desactivación. Cuando se da la primera acción de T2, la tarea T1 se desactiva.
T1* Iteración infinita. La tarea T1 se realiza de forma repetitiva. Se estará realizando hasta que otra tarea la desactive.
[T1] Opcional. No es obligatorio que se realice la tarea. Cuando describimos las subtareas existente en la tarea de rellenar un formulario algunas de las subtareas pueden ser opcionales (las de los campos que sean opcionales).
T1 |> T2 Suspender/Reanudar. Da a T2 la posibilidad de interrumpir T1, y cuando T2 termina se reanuda T1 en el estado en que fue suspendida.
CTT. Relation between nodes
Task Analysis - User Centred Design 32 / 48
Task Analysis - User Centred Design 33 / 48
Task Analysis - User Centred Design 34 / 48
Operators Priority
• Ambiguity in the model
• Ambiguity removed
• Priority: [], |||, [>, >>
Task Analysis - User Centred Design 35 / 48
Interaction tasksSelection
Edit
Control
…
Application taskOverview
Comparison
Locate
Grouping
...
Tasks types
Task Analysis - User Centred Design 36 / 48
Inheritance of relationships
Task Analysis - User Centred Design 37 / 48
Relationships task/subtasks
Task Analysis - User Centred Design 38 / 48
Optional tasks
Task Analysis - User Centred Design 39 / 48
Tool Support in CTTE
• Flexible editing of the task model• Using informal descriptions in modelling • Checking completeness of the specification• Saving the specification in various formats• Simulating the task model • Comparing task models• Running scenarios• http://giove.cnuce.cnr.it/ctte.html• http://giove.isti.cnr.it/CTTE/ctteVis.html
Task Analysis - User Centred Design
Download
CTT tool
40 / 48
CTT Editor
Task Analysis - User Centred Design 41 / 48
Task Simulator
Task Analysis - User Centred Design 42 / 48
User1
User2 User3
Cooperative part
t1t2
t3
t1(User1) t3(User3)
Modelling Multi-User Applications
Task Analysis - User Centred Design 43 / 48
Cooperative aspects
Task Analysis - User Centred Design 44 / 48
The task model structure
• Grouping tasks that share the same parent task• Communicating concurrent tasks (|[]|) are presented close
to each other
Task Analysis - User Centred Design 45 / 48
Supporting enabling operator
• Both sets are shown in the same presentation unit (when they exchange information, []>>)
• The sets are presented at different times• The sets are presented in different presentation unit at the
same time
Jo*
Submit
Name:
Name AgeJohansen 52Jones 27Joxibon 18
Jo*
Submit
Name:
Age:
Name AgeJohansen 52Jones 21
Results:
>20
Results:
Situation 1 Situations 2 and 3
Task Analysis - User Centred Design 46 / 48
Tasks-interface relationships
Task Analysis - User Centred Design 47 / 48
Tasks-interface relationships
Task Analysis - User Centred Design 48 / 48