Public notes for CS6750 - HCI Spring 2022 at Georgia Tech

Public webpage for sharing information about Dr. Joyner's CS6750 - Human Computer Interaction course in Spring 2022.

View the Project on GitHub idkaaa/cs-6750-hci-sp22-public

Week 7: Prototyping

What do prototypes prototype?

Topic: to establish a model that describes any prototype in terms of the artifact being designed, rather than the prototype’s incidental attributes.

Paper aims to focus more attention on fundamental questions about the interactive system being designed: What role will the artifact play in a user’s life? How should it look and feel? How should it be implemented?

By focusing on the purpose of the prototype—that is, on what it prototypes—we can make better decisions about the kinds of prototypes to build.

The Problem With Prototypes

It is difficult for designers to communicate clearly about prototypes to such a broad audience. It is challenging to build prototypes which produce feedback from users on the most important design questions.

What Is A Prototype

What is significant is not what media or tools were are used to create them, but how they are used by a designer to explore or demonstrate some aspect of the future artifact.

Definitions

Prototyping tools and techniques

Topic: tools and techniques for using prototypes to design interactive systems. The goal is to illustrate how they can help designers generate and share new ideas, get feedback from users or customers, choose among design alternatives, and articulate reasons for their final choices.

What Is A Prototype

We can look at prototypes as both concrete artifacts in their own right or as important components of the design process. When viewed as artifacts, successful prototypes have several characteristics:

We can analyze prototypes and prototyping techniques along four dimensions:

Precision

Although it may seem contradictory, a detailed representation need not be precise. This is an important characteristic of prototypes: those parts of the prototype that are not precise are those open for future discussion or for exploration of the design space

Interactivity

A critical role for an interactive system prototype is to illustrate how the user will interact with the system. While this may seem more natural with on-line prototypes, in fact it is often easier to explore different interaction strategies with off-line prototypes.

Exploring The Design Space

All designers work with constraints: not just limited budgets and programming resources, but also design constraints. These are not necessarily bad: one cannot be creative along all dimensions at once. However, some constraints are unnecessary, derived from poor framing of the original design problem

Some of the most effective design solutions derive from a more careful understanding and reframing of the design brief.

Prototypes aid designers in both aspects of working with a design space: generating concrete representations of new ideas and clarifying specific design directions.

Horizontal Prototypes

The purpose of a horizontal prototype is to develop one entire layer of the design at the same time.

Vertical Prototypes

The purpose of a vertical prototype is to ensure that the designer can implement the full, working system, from the user interface layer down to the underlying system layer.

Off-line Rapid Prototyping Techniques

There are four types covered in this paper:

  1. Paper and pencil
  2. Mock-ups
  3. Wizard of Oz
  4. Video prototyping

On-line Rapid Prototyping Techniques

There are three types covered in this paper:

  1. Non-interactive simulations
  2. Interactive simulations
  3. Scripting languages

Design Patterns

Design patterns have emerged in recent years as a way to capture effective solutions to recurrent software design problems. It is interesting to note than many of these patterns come from interactive software, and most of them can be applied to the design of interactive systems. Most patterns for interactive systems are behavioral patterns, i.e. patterns that describe how to implement the control structure of the system.

Summary

Prototypes, because they are concrete and not abstract, provide a rich medium for exploring a design space. They suggest alternate design paths and reveal important details about particular design decisions. They force designers to be creative and to articulate their design decisions. Prototypes embody design ideas and encourage designers to confront their differences of opinion. The precise aspects of a prototype offer specific design solutions: designers can then decide to generate and compare alternatives. The imprecise or incomplete aspects of a prototype highlight the areas that must be refined or require additional ideas.

On another note regarding prototypes:

Perhaps most important, prototypes provide one of the most effective means for designers to communicate with each other, as well as with users, developers and managers, throughout the design process.