Return to Video

Lecture 3.2: Faking it – Wizard of Oz (14:30)

  • 0:01 - 0:04
    There’s an intrinsic tension in design:
  • 0:04 - 0:10
    On one hand, you’ll want to be able to get feedback from people as soon as you possibly can.
  • 0:10 - 0:16
    On the other, in order to be able to get that feedback you need to make something that works.
  • 0:16 - 0:19
    You’ve learned how to rapidly prototype things with paper prototyping.
  • 0:19 - 0:24
    And today what we’re going to talk about is how you can test rapid prototypes with users.
  • 0:25 - 0:27
    So, let’s imagine for a moment —
  • 0:27 - 0:32
    What if it was possible to create an interactive application without writing much or any code
  • 0:32 - 0:36
    and get feedback on that interactive application quickly?
  • 0:36 - 0:41
    I think that’s a pretty powerful dream, and, like Dorothy learned in « The Wizard of Oz »,
  • 0:41 - 0:46
    dreams can be really powerful, and, sometimes, they can even come true.
  • 0:46 - 0:49
    And there’s something else that Dorothy learned that we’re going to use in the lecture:
  • 0:49 - 0:51
    If you’ve seen the movie « The Wizard of Oz », you’ll know that
  • 0:51 - 0:55
    when Dorothy and her compatriots arrived in the Emerald City,
  • 0:55 - 0:59
    they saw a big giant wizard that was really scary and freaked them out.
  • 1:00 - 1:03
    But eventually they learned that that wizard was just a little man behind a curtain,
  • 1:04 - 1:08
    and the ability of that little man behind the curtain to put on a big realistic show
  • 1:08 - 1:13
    that, to the visitors to the Emerald City, seemed completely real and immersive,
  • 1:13 - 1:18
    is exactly what we’re going to accomplish with this video’s prototyping technique.
  • 1:19 - 1:21
    So, the idea behind Wizard-of-Oz Prototyping
  • 1:21 - 1:24
    is that we’re going to simulate interactive behaviour and machine functionality
  • 1:24 - 1:29
    by having a human operator manipulate the levers behind the scenes.
  • 1:30 - 1:33
    If you want to get a sense for just how this realistic this can be,
  • 1:33 - 1:36
    watch our friend from « Seinfeld » call a “Movie Phone application”
  • 1:36 - 1:40
    to try and find out when and where movies are playing.
  • 1:41 - 1:45
    (Hello, and welcome to Movie Phone.
  • 1:45 - 1:49
    If you know the name of the movie you’d like to see, press 1.
  • 1:49 - 1:50
    [beep] C’mon, c’mon…
  • 1:50 - 1:56
    Using the touch-tone keypad, please enter the first three letters of the movie title, now!
  • 1:56 - 1:58
    [beep, beep]
  • 1:58 - 2:06
    You’ve selected « Agent Zero ». If that’s correct, press 1.
  • 2:06 - 2:08
    What?!
  • 2:08 - 2:10
    Ugh…)
  • 2:10 - 2:13
    So George thinks that he’s calling this automated Movie Phone application,
  • 2:13 - 2:17
    but it turns out that, behind the scenes, it’s just Kramer who’s playing a wizard
  • 2:17 - 2:20
    and behaving as if he were the machine.
  • 2:20 - 2:24
    To be honest, he’s not very good — I think that you’d all be able to do better!
  • 2:25 - 2:28
    Wizard of Oz techniques got their start with speech user interfaces.
  • 2:28 - 2:34
    The term “Wizard of Oz” was coined by Jeff Kelly in his PhD dissertation around 1980.
  • 2:34 - 2:36
    And Jeff’s setup at John Hopkins
  • 2:36 - 2:40
    actually bore more of a resemblance to the Wizard of Oz than you might first imagine;
  • 2:40 - 2:46
    so, in addition to some one-way mirrors and things like that, there literally was a curtain
  • 2:46 - 2:51
    separating Jeff, as the wizard, from the participants that were using the speech user interfaces.
  • 2:51 - 2:55
    And these Wizard-of-Oz prototypes were really important for understanding
  • 2:55 - 2:57
    what would be an effective speech user interface,
  • 2:57 - 3:01
    because, at the time, the recognition algorithms weren’t very good,
  • 3:01 - 3:03
    but we knew they were going to get better.
  • 3:03 - 3:06
    And Jeff asked the very important questions of:
  • 3:06 - 3:11
    “If we get the recognition to the point where it was effective, what will the user interaction be?
  • 3:11 - 3:14
    And what kind of strategies might be [the] most effective?”
  • 3:14 - 3:17
    So the Wizard of Oz enabled Jeff to time-travel
  • 3:17 - 3:21
    into a future where speech recognition technology worked better,
  • 3:21 - 3:24
    to try and understand what the user experience issues of that domain would be.
  • 3:26 - 3:29
    In general, a Wizard-of-Oz prototype comprises a couple of pieces:
  • 3:29 - 3:33
    First, you’ve got some kind of user interface that you’re delivering to the user
  • 3:33 - 3:42
    which feels-ish like a user interface — even if it’s sketches or custom-spoken words.
  • 3:42 - 3:47
    And, at the same time, there’s not any or much code that goes behind it —
  • 3:47 - 3:54
    the code and interactivity [that] is being created is a mirage from a human.
  • 3:54 - 3:58
    Sometimes there’s a user interface that the wizard has,
  • 3:58 - 4:01
    which they cobbled together to make life better for them —
  • 4:01 - 4:05
    and in fact back in 2000 colleagues at Berkeley and I built a system called Suede,
  • 4:05 - 4:09
    which helped automate Wizard-of-Oz testing and speech user interfaces.
  • 4:09 - 4:16
    Wizard-of-Oz prototypes make sense when it’s faster and cheapter and easier than building the real thing,
  • 4:16 - 4:20
    and that’s going to be especially true any time you have recognition-based interfaces,
  • 4:20 - 4:24
    or personalization that’s custom to a user.
  • 4:24 - 4:29
    This tradeoff of whether it’s cheaper and faster and easier is also going to depend on your abilities:
  • 4:29 - 4:33
    There will be some things that you know how to do quickly and easily and then you might just implement;
  • 4:33 - 4:38
    and there’s other things that may be more difficult or more time-consuming for you,
  • 4:38 - 4:40
    and those you’ll choose to Wizard-of-Oz.
  • 4:41 - 4:46
    Wizard-of-Oz prototypes, like any other kind of prototype, can be higher or lower fidelity.
  • 4:46 - 4:49
    And there’s some important tradeoffs here —
  • 4:49 - 4:53
    The higher fidelity the prototype, the more it feels like the real thing to users —
  • 4:53 - 4:59
    In fact, sometimes you can build an interface that people don’t even know is being powered by a wizard,
  • 4:59 - 5:04
    as in the famous story of the mechanical Turk, who is inside a chess machine.
  • 5:04 - 5:09
    However, making a high-fidelity user interface is going to take a lot of time,
  • 5:09 - 5:15
    and users may be more reluctant to critique a user interface that’s really high-fidelity,
  • 5:15 - 5:21
    and so, early on, I recommend quick-and-dirty paper prototypes being the most powerful thing
  • 5:21 - 5:23
    to use for Wizard-of-Oz tests.
  • 5:23 - 5:26
    Because users will feel like they can give you any kind of feedback;
  • 5:26 - 5:28
    it’s clear you haven’t put a lot of time into it yet,
  • 5:28 - 5:33
    and it’s fast for you to make, and so you actually haven’t a lot time into it yet.
  • 5:34 - 5:37
    A few years ago, my friend Sep Kamvar created a company called Aardvark,
  • 5:37 - 5:40
    which is a social search engine.
  • 5:40 - 5:45
    It was really good at helping you use your social network to find answers from other people.
  • 5:46 - 5:51
    So the way it works is you ask a question via instant message, via Google chat;
  • 5:51 - 5:56
    and it’s going to be automatically routed to a friend of yours, or a friend of a friend,
  • 5:56 - 5:59
    who has the expertise to answer that question.
  • 5:59 - 6:04
    One of the hard parts about building a service like this is: How do you do the routing?
  • 6:04 - 6:08
    Eventually they figured out an algorithm to do this; but to bootstrap that —
  • 6:08 - 6:10
    both to figure out what algorithm to build,
  • 6:10 - 6:15
    and to get a user experience going before they had built anything —
  • 6:15 - 6:18
    they had a Wizard-of-Oz prototype.
  • 6:18 - 6:21
    So the way that worked was that Aardvark employees would get the question,
  • 6:21 - 6:25
    and they would manually select the person that was going to get routed to.
  • 6:25 - 6:29
    Damon Horowitz, the co-founder of Aardvark, put it this way in a conference:
  • 6:29 - 6:34
    he said that, “If people like it in this super-crappy form, then it’s worth building,
  • 6:34 - 6:38
    because they’ll like it even more when we build the real thing!”
  • 6:38 - 6:44
    So, if you want to be like Kramer or Aardvark, how can you make a wizard-powered prototype?
  • 6:44 - 6:47
    Here’s a sketch of what you’ll need to do in five easy steps:
  • 6:47 - 6:50
    First, figure out what scenarios you’re going to support.
  • 6:50 - 6:54
    It’s a lot of easier to build a Wizard-of-Oz prototype for a limited set of functionality.
  • 6:55 - 6:56
    I like Wizard-of=Oz prototypes
  • 6:56 - 7:00
    because it forces you to figure out what should happen in response to human behaviour.
  • 7:01 - 7:04
    Then, put together some kind of user interface skeleton —
  • 7:04 - 7:06
    the things that the end users are going to see.
  • 7:07 - 7:11
    Third, if you need to, develop the “hooks” for the wizard [to] input if you’re going to have a remote wizard
  • 7:11 - 7:15
    or if they’re going to control some software functionality from behind the scenes.
  • 7:16 - 7:17
    Fourth, and as part of this,
  • 7:17 - 7:21
    you’ll need to figure out exactly what kind of input the wizard is allowed to offer:
  • 7:21 - 7:27
    Are they going to be selecting from a menu of options? offering free response? speaking text?
  • 7:27 - 7:31
    Will you give them a decision tree that controls their behaviour?
  • 7:31 - 7:34
    or you’re going let them be more free-form?
  • 7:34 - 7:37
    If you have a paper prototype, their role is going to pretty manual —
  • 7:37 - 7:41
    adding widgets and moving sliders, and making the interface go.
  • 7:42 - 7:44
    When you’re doing this, it’s important to remember that,
  • 7:44 - 7:50
    ultimately, the functionality that you’re wizarding now is ultimately going to be replaced with a computer,
  • 7:50 - 7:54
    and so at some point down the line, you will have to build some software to make it go.
  • 7:54 - 7:59
    And that’s important, because it can be easy to fake stuff that’s not possible to ever happen.
  • 7:59 - 8:03
    And, last, as with any prototype that you’re going to test with people,
  • 8:03 - 8:07
    practice it first with a friend or a colleague to get the hang of both doing the wizard —
  • 8:07 - 8:10
    it’s a very different kind of interaction than you may be used to —
  • 8:10 - 8:15
    and also, figuring out what scenarios are most effective, what instructions you’ll need to give people.
  • 8:15 - 8:20
    Get out the easy bugs in the user interface before you bring in real users.
  • 8:20 - 8:26
    And now you’re ready to run the user interface: Like I said, you’ll want to practice with a friend at first.
  • 8:27 - 8:32
    Once you’ve got the really obvious kinks out, and when you’ve got your patter down and the tasks ready,
  • 8:32 - 8:35
    then it’s time to recruit some people to come in and try out your prototype.
  • 8:35 - 8:42
    You can even go to places like train stations, or airports, or city street corners, or coffee shops
  • 8:42 - 8:46
    as a way of going to the people who might be using your system.
  • 8:47 - 8:50
    In a Wizard-of-Oz prototype, there’s two roles:
  • 8:50 - 8:53
    you’ve got a facilitator who’s going to talk to the user,
  • 8:53 - 8:56
    and you’ve got a wizard who’s going to manipulate the prototype.
  • 8:56 - 9:00
    If you have the luxury of a team, it’s helpful if there are two different people,
  • 9:00 - 9:04
    in part because your mind is going to be full of all the things that you’ll have to do,
  • 9:04 - 9:09
    and if you separate these roles, each person can concentrate more, do a better job,
  • 9:09 - 9:14
    and you have two sets of eyes looking at what the person’s doing, so you can learn more.
  • 9:15 - 9:19
    But can do this yourself if you need to — these can be one person doing two roles.
  • 9:20 - 9:22
    If you’re trying to convince somebody that this is actually is a real system,
  • 9:22 - 9:27
    then you’ll want your wizard to be hidden or remote somehow, like the Aardvark example.
  • 9:27 - 9:29
    And think about how you’d like to get feedback from users —
  • 9:29 - 9:33
    this is something that we’ll touch on several times more throughout this course.
  • 9:33 - 9:37
    For now, think about whether you’d like to get think-aloud feedback —
  • 9:37 - 9:40
    which is, when the person’s using the prototype,
  • 9:40 - 9:45
    have them speak aloud what it is that’s going through their mind, what decisions they’re making and why,
  • 9:45 - 9:51
    what they’re confused by when they run up against things that they can’t figure out what to do.
  • 9:52 - 9:58
    This think-aloud protocol is great for getting stuff that otherwise you might not know or learn.
  • 9:58 - 10:03
    However, as you can imagine, thinking aloud can change how people interact with the prototype.
  • 10:03 - 10:07
    So, if think-aloud is too distracting, you can ask people at the end of the study
  • 10:07 - 10:10
    what was going through their mind and what they were thinking about —
  • 10:10 - 10:12
    that’s called a retrospective approach.
  • 10:12 - 10:14
    If you like, you can even show them the video of them using it.
  • 10:14 - 10:19
    You can then say things like, “When you got stuck here, what was the issue?”
  • 10:20 - 10:24
    Third, if you have specific things that you’d like to make sure that your interface does well,
  • 10:24 - 10:30
    you can have categories of problems or heuristics that you asked your users to pay attention to.
  • 10:30 - 10:35
    And heuristic evaluation is something that we’re going to talk more about later in this course also.
  • 10:35 - 10:38
    Once you’re all done, make sure to thank people for their time.
  • 10:38 - 10:43
    You may want to give them a gift certificate, or ice-cream, or some other kind of thank-you.
  • 10:44 - 10:50
    And, if you haven’t yet told them that there’s actually a wizard behind the scenes operating the user interface,
  • 10:50 - 10:52
    the end of the experiment is probably a really good time to that —
  • 10:52 - 10:55
    You’ll want to make sure to be honest with people.
  • 10:55 - 10:58
    You can use wizards throughout the entire development of your software,
  • 10:58 - 11:00
    not just at the very beginning.
  • 11:00 - 11:06
    And so, if you have the fully-functional software here, and over time you move towards there,
  • 11:06 - 11:10
    you can use wizards to fill in the gap of whatever is not built at that time.
  • 11:10 - 11:14
    So, the wizard may do all of the interactions at the very beginning,
  • 11:14 - 11:16
    and then, as you get closer and closer to a final project,
  • 11:16 - 11:20
    you can have it just fill in only the parts that aren’t done yet.
  • 11:20 - 11:24
    As you can see, there’s a lot to like about Wizard-of-Oz prototypes:
  • 11:24 - 11:28
    They can be really fast to make, which makes them cheaper,
  • 11:28 - 11:31
    and it also means you get to turn the crank on iteration more.
  • 11:32 - 11:36
    Because they are quick, you can rapidly create multiple alternatives.
  • 11:36 - 11:39
    And you decide that you want the “implementation” to work differently,
  • 11:39 - 11:43
    you just give your wizard different instructions; there’s no code to rewrite.
  • 11:44 - 11:45
    Because it is in a sense interactive,
  • 11:45 - 11:49
    it is more real and you get better feedback than just from paper prototyping,
  • 11:49 - 11:52
    although using paper prototypes as the substrate for a wizard
  • 11:52 - 11:56
    is an excellent strategy early on in the design process.
  • 11:56 - 12:01
    It’s a great way to get feedback about bugs and problems with your user interface design.
  • 12:01 - 12:05
    Every single user interface that I’ve ever built, or that I’ve seen built,
  • 12:05 - 12:09
    or that students of mine have ever built, has had bugs early on.
  • 12:09 - 12:11
    It’s too hard to get right the first time.
  • 12:11 - 12:16
    You’re going to iterate and fail fast, so that you can succeed sooner.
  • 12:16 - 12:19
    And a Wizard of Oz is a great tool to be able to do that.
  • 12:20 - 12:23
    Because you’re getting feedback from users early,
  • 12:23 - 12:26
    it’s a great way to place people at the centre of the development process.
  • 12:27 - 12:30
    It’s also really wonderful for forward-looking applications
  • 12:30 - 12:35
    as we start to think about how sensors and cameras and other futuristic technologies
  • 12:35 - 12:37
    might enable other new kinds of user interfaces.
  • 12:37 - 12:42
    You can imagine these now by building Wizard-of-Oz prototypes.
  • 12:43 - 12:46
    And lastly, strange as it may sound, you actually learn a lot
  • 12:46 - 12:50
    about what your application logic of your interface ought to be, and what makes sense
  • 12:50 - 12:54
    by playing the wizard and embodying that role in the system.
  • 12:55 - 12:58
    But there are some disadvantages too:
  • 12:58 - 13:03
    It can be easy to gloss over errors in technology that will ultimately come back to bite you —
  • 13:03 - 13:07
    like speech recognition systems for example.
  • 13:07 - 13:12
    If, at the end of the day, you’re going to have bugs in your speech system,
  • 13:12 - 13:14
    you’ll want to make sure that your Wizard-of-Oz prototype encodes
  • 13:14 - 13:17
    what happens when the speech reco[gnition]s screws up.
  • 13:17 - 13:20
    Don’t assume it’s going to work perfectly all the time.
  • 13:20 - 13:25
    ’Cause if you’re not careful, you can end up simulating a technology that doesn’t exist and may never.
  • 13:25 - 13:28
    People, for better or for worse, are inconsistent,
  • 13:28 - 13:33
    and, to get them to play the wizard role, can require training, so that’s a ramp-up time.
  • 13:33 - 13:36
    And because you have to have a physical human there to run it,
  • 13:36 - 13:38
    your runtime efficiency is slower,
  • 13:38 - 13:42
    and it can be more exhausting for the people that are playing the wizard role.
  • 13:42 - 13:47
    Wizards are great for some kind[s] of functionality, like Kramer did with the speech user interface.
  • 13:47 - 13:51
    But other stuff, it’s harder to figure out what you can do with a wizard interface,
  • 13:51 - 13:56
    and it may not be quite as effective — it may be klunkier.
  • 13:56 - 13:58
    Or it might be simply be inappropriate —
  • 13:58 - 14:06
    there’re some situations where having a wizard around may not be ok.
  • 14:06 - 14:09
    All in all, I think wizards are an incredibly powerful technique,
  • 14:09 - 14:12
    and a really fun one to stretch your creativity.
  • 14:12 - 14:17
    What kinds of new user interfaces can you imagine by creating a Wizard-of-Oz prototype?
  • 14:17 - 14:20
    I’d like to thank Stephen Dow in creating this lecture —
  • 14:20 - 14:24
    I drew on a lot of the materials that’s he’s used in writing and speaking about Wizard-of-Oz prototypes.
  • 14:24 - 14:31
    And if you’re interested in learning more about wizards, you can see these resources here.
Title:
Lecture 3.2: Faking it – Wizard of Oz (14:30)
Video Language:
English

English subtitles

Revisions