Se ha denunciado esta presentación.
Utilizamos tu perfil de LinkedIn y tus datos de actividad para personalizar los anuncios y mostrarte publicidad más relevante. Puedes cambiar tus preferencias de publicidad en cualquier momento.

Task analysis

13.816 visualizaciones

Publicado el

Task Analisys for software design

  • Inicia sesión para ver los comentarios

Task analysis

  1. 1. TASK ANALYSIS Grau en Enginyeria Informàtica User Centred Design
  2. 2. 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
  3. 3. 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] Useoftaskmodelsinthedesigncycle FabioPaternò ISTI-C.N.R. 3 / 48
  4. 4. 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 existing envision will perform non-existing of the way people tasks with systems 4 / 48
  5. 5. Definitions • Task • Goal • Basic Task • Task Analysis <> Activity analysis • Task Modeling Task Analysis - User Centred Design 5 / 48
  6. 6. 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
  7. 7. Task analysis & its relationship to idea generation and development Task Analysis - User Centred Design TA Implementation of first prototype Test OK Modification of prototype StopY N User’s task knowledge Other knowledge Task Analyst Software Designer Task Analyst User Idea Generation Idea Development Software Expert 7 / 48
  8. 8. 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
  9. 9. 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
  10. 10. 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
  11. 11. 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
  12. 12. 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
  13. 13. GOMS (Goals, Operators, Methods, and Selection rules) Example GOAL: EDIT-MANUSCRIPT GOAL: EDIT-UNIT-Task repeat until no more unit tasks GOAL: ACQUIRE-UNIT-TASK GET-NEXT-PAGE if at end of manuscript GET-NEXT-TASK GOAL: EXECUTE-UNIT-TASK GOAL:LOCATE-LINE [select: USE-QS-METHOD USE-LF-METHOD] GOAL: MODIFY-TEXT [select: USE-S-METHOD USE-M-METHOD] VERIFY-EDIT Task Analysis - User Centred Design 13 / 48
  14. 14. 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
  15. 15. 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
  16. 16. 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
  17. 17. 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 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 • ... and PLANS Plan 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
  18. 18. 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 cleaner fix carpet head clean dinning room clean main bedroom empty dustbag clean sitting room put cleaner away 1. 2. 3.2. 3.3. 3.2. 3. 4. 5. 0. Task Analysis - User Centred Design 18 / 48
  19. 19. HTA. Graphic notation Task Analysis - User Centred Design 19 / 48
  20. 20. Diagrammatic HTA Task Analysis - User Centred Design 20 / 48
  21. 21. 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
  22. 22. 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
  23. 23. Refined HTA for making tea Task Analysis - User Centred Design 23 / 48
  24. 24. 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
  25. 25. 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
  26. 26. 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
  27. 27. Moving from scenarios to tasks • Find verbs = tasks • Find words = objects • Find adverbs = temporal relationships Task Analysis - User Centred Design 27 / 48
  28. 28. Moving from scenarios to tasks Task Analysis - User Centred Design 28 / 48
  29. 29. 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
  30. 30. CTT. Node notation Task Analysis - User Centred Design 30 / 48
  31. 31. 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
  32. 32. 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
  33. 33. Task Analysis - User Centred Design 33 / 48
  34. 34. Task Analysis - User Centred Design 34 / 48
  35. 35. Operators Priority • Ambiguity in the model • Ambiguity removed • Priority: [], |||, [>, >> Task Analysis - User Centred Design 35 / 48
  36. 36. Interaction tasks Selection Edit Control … Application task Overview Comparison Locate Grouping ... Tasks types Task Analysis - User Centred Design 36 / 48
  37. 37. Inheritance of relationships Task Analysis - User Centred Design 37 / 48
  38. 38. Relationships task/subtasks Task Analysis - User Centred Design 38 / 48
  39. 39. Optional tasks Task Analysis - User Centred Design 39 / 48
  40. 40. 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
  41. 41. CTT Editor Task Analysis - User Centred Design 41 / 48
  42. 42. Task Simulator Task Analysis - User Centred Design 42 / 48
  43. 43. User1 User2 User3 Cooperative part t1 t2 t3 t1(User1) t3(User3) Modelling Multi-User Applications Task Analysis - User Centred Design 43 / 48
  44. 44. Cooperative aspects Task Analysis - User Centred Design 44 / 48
  45. 45. 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
  46. 46. 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 Age Johansen 52 Jones 27 Joxibon 18 Jo* Submit Name: Age: Name Age Johansen 52 Jones 21 Results: >20 Results: Situation 1 Situations 2 and 3 Task Analysis - User Centred Design 46 / 48
  47. 47. Tasks-interface relationships Task Analysis - User Centred Design 47 / 48
  48. 48. Tasks-interface relationships Task Analysis - User Centred Design 48 / 48

×