Interaction Design Chapter 7

Document Sample
Interaction Design Chapter 7 Powered By Docstoc
					             Establishing requirements




Lecture 4 Establishing Requirements   1   Pablo Romero, Department of Informatics
                                      Overview
   • The importance of requirements
   • Different types of requirements
   • Data gathering for requirements
   • Task descriptions
          •Scenarios
          •Use Cases
   •Task analysis (HTA)
Lecture 4 Establishing Requirements      2       Pablo Romero, Department of Informatics
              Establishing requirements:
               what for, how and why?
     • What for:
                   Understand users, task, context
                   Produce a stable(ish) set of requirements

     • Why? The stage where failure occurs most commonly
     • How:
          Data gathering activities
          Data analysis activities
          Expression as „requirements‟
          All of this is iterative

Lecture 4 Establishing Requirements   3         Pablo Romero, Department of Informatics
                 Establishing requirements
• What do users want? What do users „need‟?
  Requirements need clarification, refinement,
  completion, re-scoping
  Input: requirements document (maybe)
  Output: stable(ish) requirements


• Why „establish‟?
  Requirements arise from understanding users‟ needs
  Requirements can be justified & related to data


 Lecture 4 Establishing Requirements   4   Pablo Romero, Department of Informatics
       A system for “trying on” clothes

 Augmented Reality system
 Combination of webcam,
  paper tags and large
  screen
 What would the
  requirements be if
  implemented for a
  department store?
Lecture 4 Establishing Requirements   5   Pablo Romero, Department of Informatics
  Different kinds of requirements
• Functional:
             —What the system should do
             —Historically the main focus of requirements
             activities
• Non-functional:
             —memory size,
             —response time...
• Data:
             —What kinds of data need to be stored?
             —How will they be stored (e.g. database)?
Lecture 4 Establishing Requirements   6      Pablo Romero, Department of Informatics
  Different kinds of requirements
Environment or context of use:
   — physical: dusty? noisy? vibration? light? heat?
   humidity? …. (e.g. cashpoints, garage, etc.)
   — social: sharing of files, of displays, in paper,
   across great distances, work individually, privacy
   for clients
   — organisational: hierarchy, IT department‟s
   attitude and remit, user support, communications
   structure and infrastructure, availability of training


Lecture 4 Establishing Requirements   7   Pablo Romero, Department of Informatics
  Different kinds of requirements
• Users: Who are they?
   — Characteristics: ability, background, attitude to
   computers
   — System use:
              Novice: step-by-step (prompted), constrained, clear
              information
              Expert: flexibility, access/power
              Frequent: short cuts
              Casual/infrequent: clear instructions, e.g. menu paths




Lecture 4 Establishing Requirements    8            Pablo Romero, Department of Informatics
                                      Exercise

 • How would you
   go about
   establishing the
   requirements for
   the “trying on”
   clothes system?




Lecture 4 Establishing Requirements      9       Pablo Romero, Department of Informatics
Data gathering for requirements
•   Interviews
•   Focus groups
•   Questionnaires
•   Researching similar products
•   Direct observation
•   Indirect observation
•   Studying documentation
•   Contextual enquiry

Lecture 4 Establishing Requirements   10   Pablo Romero, Department of Informatics
                                      Interviews
• Props, e.g. sample scenarios
  of use, prototypes, can be
  used in interviews
• Good for exploring issues
• But are time consuming and
  may be infeasible to visit
  everyone


Lecture 4 Establishing Requirements       11       Pablo Romero, Department of Informatics
                                      Focus groups

• Group interviews
• Good at gaining a
  consensus view and/or
  highlighting areas of
  conflict
• But can be dominated by
  individuals


Lecture 4 Establishing Requirements        12    Pablo Romero, Department of Informatics
                                      Questionnaires

• Often used in conjunction
  with other techniques
• Can give quantitative or
  qualitative data
• Good for answering
  specific questions from a
  large, dispersed group of
  people
Lecture 4 Establishing Requirements         13     Pablo Romero, Department of Informatics
           Researching similar products

• Example: Ideo tech box
• Good for prompting
    requirements




Lecture 4 Establishing Requirements   14   Pablo Romero, Department of Informatics
       Direct and Indirect Observation
• Direct observation:
       Gain insights into stakeholders‟ tasks
       Good for understanding the nature
        and context of the tasks
       Requires time and commitment from
        a member of the design team
       Can result in a huge amount of data
• Indirect observation
       Not often used in requirements
        activity
       Good for logging current tasks

Lecture 4 Establishing Requirements   15         Pablo Romero, Department of Informatics
                   Studying Documentation
• Procedures and rules are often
     written down in manuals
•    Good source of data about the steps
     involved in an activity, and any
     regulations governing a task
•    Not to be used in isolation
•    Good for understanding legislation,
     and getting background information
•    No stakeholder time, which is a
     limiting factor on the other
     techniques
Lecture 4 Establishing Requirements   16   Pablo Romero, Department of Informatics
                                Contextual Inquiry
• An approach to ethnographic study where user is
  expert, designer is apprentice
• A form of interview, but
   — at users‟ workplace (workstation)
   — 2 to 3 hours long
• Four main principles:
   — Context: see workplace & what happens
   — Partnership: user and developer collaborate
   — Interpretation: observations interpreted by user and
    developer together
   — Focus: project focus to understand what to look for
Lecture 4 Establishing Requirements      17     Pablo Romero, Department of Informatics
          Problems with data gathering (1)

 Identifying and involving stakeholders
 Involving stakeholders
 „Real‟ users, not managers
 Requirements management
 Communication between parties
 Domain knowledge distributed and implicit
 Availability of key people

Lecture 4 Establishing Requirements   18   Pablo Romero, Department of Informatics
     Problems with data gathering (2)

    • Political problems within the organisation

    • Dominance of certain stakeholders

    • Economic and business environment changes

    • Balancing functional and usability demands


Lecture 4 Establishing Requirements   19   Pablo Romero, Department of Informatics
                       Some basic guidelines

    • Focus on identifying the stakeholders‟ needs
    • Involve all the stakeholder groups
    • Involve more than one representative from
        each stakeholder group
    • Use a combination of data gathering
        techniques


Lecture 4 Establishing Requirements   20   Pablo Romero, Department of Informatics
                       Some basic guidelines

   • Support the process with props such as prototypes
       and task descriptions
   • Run a pilot session
   • You will need to compromise on the data you
       collect and the analysis to be done, but before you
       can make sensible compromises, you need to know
       what you‟d really like
   • Consider carefully how to record the data


Lecture 4 Establishing Requirements   21   Pablo Romero, Department of Informatics
 Data interpretation and analysis
 • Start soon after data gathering session

 • Initial interpretation before deeper analysis

 • Different approaches emphasize different
   elements e.g. class diagrams for object-
   oriented systems, entity-relationship
   diagrams for data intensive systems
    User descriptions
    Task descriptions
Lecture 4 Establishing Requirements   22   Pablo Romero, Department of Informatics
                                      Personas

      Capture user characteristics
      Not real people, but synthesised from real user
           characteristics
      Should not be idealised
      Bring them to life with a name, characteristics,
           goals, personal background
      Develop multiple personas
Lecture 4 Establishing Requirements      23      Pablo Romero, Department of Informatics
Bob is 52 years old and works as a mechanic with an organisation offering road service
to customers when their car breaks down. He has worked in the job for the past 12
years and knows it well. Many of the younger mechanics ask Bob for advice when they
meet up in the depot as he always knows the answer to tricky mechanical problems.
Bob likes sharing his knowledge with the younger guys, as it makes him feel a valued
part of the team.
Bob works rolling day and night shifts and spends his shifts attending breakdowns and
lockouts (when customers lock their keys in the car). About 20% of the jobs he attends
are complex and he occasionally needs to refer to his standard issue manuals. Bob tries
to avoid using the manuals in front of customers as he thinks it gives the impression he
doesn't know what he's doing.
Bob has seen many changes over the years with the company and has tried his best to
move with the times. However he found it a bit daunting when a new computer was
installed in his van several years ago, and now he has heard rumours that the computer
is going to be upgraded to one with a bigger screen that's meant to be faster and better.
Bob's been told that he will be able to access the intranet on the new computer. He has
heard about the intranet and saw once in an early version on his manager's computer.
He wonders if he will be able to find out want's going on in the company more easily,
especially as customers' seem to know more about the latest company news than he
does when he turns up at a job. This can be embarrassing and has been a source of
frustration for Bob throughout his time with the company.
Bob wonders if he will be able to cope with the new computer system. He doesn't mind
asking his grandchildren for help when he wants to send an email to his brother
overseas, but asking the guys at work for help is another story.
    Lecture 4 Establishing Requirements    24              Pablo Romero, Department of Informatics
                              Task descriptions

   • Scenarios
      ― an informal narrative story, simple, „natural‟,
        personal, not generalisable
   • Use cases
      — assume interaction with a system
      — assume detailed understanding of the
         interaction




Lecture 4 Establishing Requirements   25    Pablo Romero, Department of Informatics
                  A shared travel organiser

  The shared travel organizer is an
  application to support a group of
  people in exploring a joint holiday.                   QuickTime™ and a
                                               TIFF (Un compressed) decompressor
                                                  are neede d to see this picture.
  This might be used by groups of
  friends or family members and could
  be located in a travel agent’s office
  or other public space. The travel
  organizer would help the users to explore different kinds of
  destination, travel, and accommodation options, offer advice for visa
  and vaccination requirements, and identify a set of possible holidays
  that meet the group’s requirements.
Lecture 4 Establishing Requirements      26              Pablo Romero, Department of Informatics
        Scenario for travel organiser
 “The Thomson family enjoy outdoor activity holidays and want to try
their hand at sailing this year. There are four members of the family:
  Sky who is 10 years old, Eamonn who is 15 years old, Claire who is
  35, and Will who is 40. While out on a shopping trip they call by at
the travel agents in their local town to start exploring the possibilities
    ... The travel organizer is located in a quiet corner of the agents‟
  office, where there are comfortable seats and play things for young
  children. They all gather around the organizer and enter their initial
   set of requirements—a sailing holiday for four novices. The stand-
     alone console is designed so that all members of the family can
        interact easily and comfortably with it. The system‟s initial
     suggestion is that they should consider a flotilla holiday, where
 several novice crews go sailing together and provide mutual support
                           for first-time sailors…”
Lecture 4 Establishing Requirements   27          Pablo Romero, Department of Informatics
  Example use case diagram for travel organiser

   Use Cases
                                                                Identify potential
                                                                Holiday options




                                      Update holiday
                                      details
                                                              Retrieve visa
                                                              requirements




                                                         Retrieve vaccination
                                                         requirements


        Travel agent                                                                                         Holidaymaker




Lecture 4 Establishing Requirements
                                                       Actors
                                                          28                         Pablo Romero, Department of Informatics
                            Icons as abstractions


                                                             set of actions


                                                          Update holiday details
                                   possible involvement


role something might play

   Lecture 4 Establishing Requirements           29         Pablo Romero, Department of Informatics
           Retrieve visa requirements
1. The system displays options for investigating visa and vaccination
requirements.
2. The user chooses the option to find out about visa requirements.
3. The system prompts user for the name of the destination country.
4. The user enters the country‟s name.
5. The system checks that the country is valid.
6. The system prompts the user for her nationality.
7. The user enters her nationality.
8. The system checks the visa requirements of the entered country for a
passport holder of her nationality.
9. The system displays the visa requirements.
10. The system displays the option to print out the visa requirements.
11. The user chooses to print the requirements.
Lecture 4 Establishing Requirements   30              Pablo Romero, Department of Informatics
           Alternative courses for retrieving visa
                                      requirements
  Some alternative courses:

  6. If the country name is invalid:
  6.1 The system displays an error message.
  6.2 The system returns to step 3.

  8. If the nationality is invalid:
  8.1 The system displays an error message.
  8.2 The system returns to step 6.

  9. If no information about visa requirements is found:
  9.1 The system displays a suitable message.
  9.2 The system returns to step 1.


Lecture 4 Establishing Requirements       31         Pablo Romero, Department of Informatics
                                      Task analysis
    Task descriptions are often used to envision new systems
        or devices
    Task analysis is used mainly to investigate an existing
        situation
    It is important not to focus on superficial activities
                 What are people trying to achieve?
                 Why are they trying to achieve it?
                 How are they going about it?
    Many techniques, the most popular is Hierarchical Task
        Analysis (HTA)
Lecture 4 Establishing Requirements         32        Pablo Romero, Department of Informatics
           Hierarchical Task Analysis
    Involves breaking a task down into subtasks, then sub-
        sub-tasks and so on. These are grouped as plans which
        specify how the tasks might be performed in practice
    HTA focuses on physical and observable actions, and
        includes looking at actions not related to software or an
        interaction device
    Start with a user goal which is examined and the main
        tasks for achieving it are identified
    Tasks are sub-divided into sub-tasks

Lecture 4 Establishing Requirements   33         Pablo Romero, Department of Informatics
   Example Hierarchical Task Analysis

  0.            In order to borrow a book from the library
                1.    go to the library
                2.    find the required book
                      2.1 access library catalogue
                      2.2 access the search screen
                      2.3 enter search criteria
                      2.4 identify required book
                      2.5 note location
                3.    go to correct shelf and retrieve book
                4.    take book to checkout counter


Lecture 4 Establishing Requirements   34        Pablo Romero, Department of Informatics
   Example Hierarchical Task Analysis
                (plans)

  plan 0: do 1-3-4. If book isn‟t on the shelf
  expected, do 2-3-4.
  plan 2: do 2.1-2.4-2.5. If book not identified
  do 2.2-2.3-2.4.




Lecture 4 Establishing Requirements   35   Pablo Romero, Department of Informatics
    Example Hierarchical Task Analysis
               (graphical)
                                               Borrow a
                                               book from the
                                               library      0
                                                          plan 0:
                                                          do 1-3-4.
                                                          If book isn‟t on the shelf expected, do 2-3-4.




             go to the                find required            retrieve book               take book to
             library                  book                     from shelf                  counter
                          1                       2                           3                            4

                                           plan 2:
                                           do 2.1-2.4-2.5.
                                           If book not identified from information available, do 2.2-2.3-2.4-2.5




           access                     access              enter                identify               note
           catalog                    search              search               required               location
                        2.1           screen 2.2          criteria 2.3         book     2.4                        2.5


Lecture 4 Establishing Requirements                           36                         Pablo Romero, Department of Informatics
                                      Summary

     Getting requirements right is crucial
     There are different kinds of requirement, each is
      significant for interaction design
     The most commonly-used techniques for data gathering
      are: questionnaires, interviews, focus groups, direct
      observation, studying documentation and researching
      similar products
     Scenarios and use cases can be used to articulate
      existing and envisioned work practices.
     Task analysis techniques such as HTA help to investigate
      existing systems and practices
Lecture 4 Establishing Requirements      37     Pablo Romero, Department of Informatics
                                      Further reading

    • Chapter 7 and 10 of the textbook
    • Chapter 13 of Dix, A., Finley, J., Abowd, G., and
         Beale, R. 2004 Human-Computer Interaction (3rd
         Ed.). Prentice-Hall, Inc.
    •    Chapter 9 of Benyon, Turner and Turner (2005).
         Designing Interactive Systems.




Lecture 4 Establishing Requirements          38     Pablo Romero, Department of Informatics

				
DOCUMENT INFO