I use free sources like Interaction-Design.org so often that I have an obligation to recognize its value and support its continued presence

Last 3 Donors


Support us

Funding progress for 2010:

Prototyping

Prototyping is a method used by designers to acquire feedback from users about future designs. Prototypes are similar to mock-ups (see this), but are usually not as low-fidelity as mock-ups and appear slightly later in the design process.

Prototypes may be horisontal or vertical: A horisontal prototype appears to have a very broad range of the intended future features, but only very little of the actual functionality of the features is implemented. For example, a horisontal prototype of a computer application may have a very well-developed and broad user interface (the horisontal dimension) but not much of the underlying functionality is implemented (the vertical dimension, i.e. the deeper layers of the software). Correspondingly, a vertical prototype only has very few features, which on the other hand are almost fully implemented or at least so-called "walking skeletons" (see this).

Figure 1: Vertical and Horisontal Prototypes.

In other words:

  • Horisontal prototype: A 'dumb' or 'shallow' user interface with not much implemented functionality.
  • Vertical prototype: Only a subset of the user interface is implemented but this subset is implemented in-depth

The process of prototyping

The process of prototyping, on the other hand, can be characterised as explorative, experimental, or evolutionary.

  • An explorative prototype is used to explore system requirements in cooperation with users and can, as such, be seen as a communication medium and facilitator between user and designer in the same way as a mock-up.
  • An experimental prototype is the type of prototype that is closest to the classical concept of prototype ("first of its kind"). It is experimental in the sense that it is built to try to determine whether the planned system will be adequate and acceptable when finished. Experimental prototypes can be used as requirements specification.
  • Lastly, prototypes can be evolutionary, meaning that a system evolves through multiple generations/prototypes succeeding each other. Thus, each prototype is an early version of the system that is further worked upon until the prototype has evolved into a finished system

In this connection, it is essential to keep in mind the problem prototyping addresses (or at least one of them). In other words, why is it not possible to get the feedback that a prototype facilitates from merely interviewing the users instead? One important reason is non-declarative or tacit knowledge, which is the kind of knowledge that is not verbally expressible, i.e. users are not able to say what they know or what they think. The text-book example of non-declarative knowledge is knowledge of how to ride a bike, doing it may be easy but describing precisely how to do it is impossible.

Non-declarative knowledge can however be revealed through observing situated action and that is what we need the prototype for. Through observing a person's use of a prototype he/she is able to communicate this knowledge.

As a last point, prototypes also touch on the so-called say-do problem, i.e. that there is a significant difference between what people say (or rather, what they are able to say) and what they actually do. This is the differentiation between what is often called "self-reported data" and "observational data", or simply the say-do-problem.

The advantages of prototypes

The advantages of prototypes are numerous. For example:

  • Prototypes incite criticism from users because they may be low-cost and low-fidelity. If a user is presented with an early version of a system that has required substantial work, he/she is likely to be more reluctant (as well as able) to criticise it.
  • Prototypes comply with the wish to show fast results to the client
  • Prototypes have the advantage of 'grounding' the discussion during a user session, making the sure the session does not get too much off track.
  • Not only can the prototype function as a discussion medium between designer and user but also between the members of the design team. Thus, prototypes may help facilitate work across disciplinary borders, bringing together a disparate team.
  • Prototypes make it possible to do usability testing early in the development process.
  • Prototypes incite and legalise experimentation as they are inexpensive to alter.
  • Prototypes focus on content and functionality and turn attention away from details of graphic design.
  • Prototypes make it possible to get a formal approval of the design from both programmers and the client before you proceed to the development stage

Example of a prototype

Figure 1 shows a horisontal prototype of a calendar application for school kids developed in Macromedia Flash. The prototype was used to do early usability testing and as a proof-of-concept.


Figure 1: Prototype developed in Macromedia Flash of a calendar application.

Notes

The terms 'mock-up', 'low-fidelity prototype', 'paper prototype' are often used interchangeably. For 'paper prototyping', see the enty on Mock-ups

What do YOU think?

Give us your opinion! Do you have any comments/additions
that you would like other visitors to see?

 
comment You say: Mar 21st, 2010
#1
Be the first to add a thoughtful note to this page ! 

  will be spam-protected
 

 
How many?
=
e.g. "6"
 

References (bibliography)

 what's this?

Floyd, Christiane (1984): A Systematic Look at Prototyping. In: Budde, R., Kuhlenkamp, K., Mathiassen, Lars and Zullighoven, H. "Approaches to Prototyping". Springer Verlag pp. 1-17

Changes to this page

18 Sep 2004: Rewrote the whole encyclopedia entry

Get Notified!

Get notified when new entries are added to the encyclopedia!
Your Email
Want to know more?
Mar 21

Software design is the act of determining the user's experience with a piece of software. It has nothing to do with how the code works inside, or how big or small the code is. The designer's task is to specify completely and unambiguously the user's whole experience.

-- David Liddle, From Bringing Design to Software, edited by Terry Winograd, 1996

  • Share this quote on... Bookmark and Share
  • Get more quotes

Eva Hornecker on Tangible Interaction

Eva Hornecker explains the evolving concept of Tangible Interaction.

Read Eva's insightful entry here..

Licensed through a Creative Commons licence Open Content

We believe in Open Content and use the Creative Commons Copyright Licences, which makes the content of this website in effect the property of our community, not of this specific website. This page/work is copyright of Interaction-Design.org through the Creative Commons Attribution-ShareAlike Licence.
Permission to make digital/hard copy of part or all of this work for personal, classroom, and commercial use is granted without fee provided that appropriate credit is given (i.e. that the author's name, the title of this publication/article/web page, and its URL clearly appear) and that derivative works are also made available through the Creative Commons Attribution-ShareAlike Licence. See the copyright page for full details or click the 'how to cite' link above for info on how to cite this publication/article/web page.
 

Page information

Author(s): Mads Soegaard
This encyclopedia entry has undergone double-blinded peer-review by two reviewers based on these criteria, language copy-editing, typesetting, and reference validation.
How to cite/reference this page
URL: http://www.interaction-design.org/encyclopedia/prototyping.html