Interface Design Patterns
Interface design patterns are solutions to frequently-occurring problems and situation in the design of interfaces. The end users and the implementation teams conceptualise the interfaces in terms of interface design patterns. The methodology of designing interfaces using this approach is not mature and there is a scarcity of examples and validity studies. However this is a promising approach that is supported by a number of sites which offer design pattern information and by a recently-published book (Borcher, 2001.)
Pattern-based design is a relatively recent approach and so evaluative studies of its benefits have not been widely circulated but its strength lies in its claimed ability to bridge the gap between a statement or sketch of high level user requirements and the implementation of such requirements in software. Because HCI (human-computer interaction) design patterns are put in the public domain the expertise of successful practitioners, and the open forum discussion of them, is made available to all.
The method of using design patterns for developing an interactive interface is not well established and there is not at present a body of praxis which can act as a guide. Writers on design patterns emphasise that this method encourages iterative design, although the methodology entailed is not well described. The following steps are recommended to any design team which is considering employing this method. The reader should be warned that there is no empirical justification for the validity of the proposal given on this page.
Follow the links given below and familiarise the stakeholder group with:
- the rationale behind the method
- examples of design patterns embodied in products
- identified design patterns.
Design patterns may be applied in two ways:
1. during requirements elicitation itself
- make end user participants aware of design pattern examples
- during low-level requirements activities, encourage end users to express interaction concepts in terms of design patterns
- review final results of requirements activities with end user groups in terms of the design pattern examples shown at the start
2. after requirements elicitation in order to tidy up the paper prototypes etc. before implementation
- get end user requirements in terms of scenarios, paper prototypes, high-level statements of principles etc. but do not insist on adherence to patterns
- assemble implementation group personnel and familiarise them with identified design patterns, develop an initial style guide on how the patterns should be implemented in interfaces
- review the requirements material with the implementation group and apply relevant design patterns
- consider exceptional material (which is not tractable to design patterns) and decide on how implement it
There are two main web sites which offer design pattern information:
Alternative methods involve the intensive use of style guides.
Some good case studies are given in: J Borchers, A Pattern Approach to Interaction Design, Wiley, 2001.
Addison-Wesley publishers (Reading, Mass.) offer a series on software pattern design, see for instance JO Coplien and D Smith (Eds) Pattern Languages of Program Design (1995).
The following web sites offer useful online material related directly to HCI. See also the book by J Borchers (above) for references to additional material.