Prototype

Build a real-looking and working draft version of (a part of) the user interface

The prototype is a refinement of the user interface design and results in a more or less realistic, working simulation of the user interface. The zones that were defined in the conceptual design are now filled with concrete, realistic data and controls. Each screen is developed with a representative data population and real controls in order to make clear e.g. how many objects will appear in a list and how the user can navigate from one screen to another.

In the broader software engineering context a prototype is a working draft version of the software, used for demonstrating and testing. For user interface design, the objectives are the same, but the prototype does not necessarily cover all software development aspects (service layer, business logic layer, data access layer, technical architecture...). User interface prototypes most often cover only the presentation layer of the software and focus on the visible aspects of the software.

The detailed design in a prototype is made for a representative set of screens – if not all screens – in order to illustrate the flow throughout a typical sequence of screens. Scenarios of use now are worked out visually into a working product.

A prototype differs from a mock-up in that it is meant to function, be it partially. Mock-ups on the other hand are static and do not function; they consist of static screen drawings, which only ‘look like’ the real user interface.

Prototypes allow to

  • explore and demonstrate behavioural principles
  • progressively fine-tune the behaviour of the user interface prior to the full development and deployment of the product so the cost of changes is still relatively limited
  • test the usability of the design in a more realistic way than with a static mock-up
  • reuse programming or mark-up code when developing the end-product

The prototyping phase in the Namahn methodology results in a working draft version of the product as a real deliverable. It does not refer to paper prototyping. Paper prototyping is a technique for designing with paper and pencil. This is a technique used to quickly sketch design ideas as part of the conceptual design, or even to create a mock-up.

Risks: 

Prototypes are not fit for doing graphic or visual design. In case there is still a lot of discussion about the visual presentation, iteratively reworking the prototype from that point-of-view will cost a lot of time and require useless coding effort.

Effort: 

A working prototype requires more effort than a static mock-up because for a good prototype, not only the visual details but also the behaviour is to be worked out. Therefore it is recommended to well consider the design objectives to be met and answer the following questions before building a prototype:

  • is there a consensus on the fundamental design concepts?
  • is the behaviour to be illustrated profoundly (or is the visual design more important)?
  • can the behaviour not be illustrated in a mock-up?
  • will a usability test be performed and can the test quality be improved by testing with a prototype?
  • can time be gained by reusing the prototype code?

Furthermore the prototyping effort is influenced by the number of iterations needed to validate the prototype and the diversity of the screens to be programmed.

Related