[Tom's
Home Page]
[Professional] [Life,
Fun, &c] [Tell Me...]
[Bookmarks] [Publications List]
<and many papers and essays>
Of more general interest: [Apple
HI Alumni page] [Interaction
Design Patterns page] [Social
Computing]
This page contains information about resources related to pattern languages for interaction design (of which user interface design is a subset), and a few links to more general papers that may be of use to interaction designers. I also include some links to organizational design patterns, which I find hard http:InteractionPatterns.htmlto disentangle from interaction design. Interested parties should also see Jan Borcher's HCI patterns page. Those interested in other uses of pattern languages should see the Patterns Home Page, which is the most comprehensive source of information, and also Brad Appleton's Software Patterns Links.
Last update: 16 January 2004
Send email to Tom Erickson at snowfall@acm.org with a description of your work and an accessible URL. Also, if you make significant additions to on-going work, let me know.
Montessori Design Patterns, by TJ Leone. Articles about the development and application of design patterns mined from Montessori literature and classrooms. Methods used to mine the patterns are discussed. A range of applications are suggested. One paper describes the application of Montessori patterns to the design of educational geometry software and the results of using the software in a course for elementary school students. The site is: http://www.leonelearningsystems.com/design_patterns.htm
Architecturally Sensitive Usability Patterns, by Eelke Folmer. An "architecturally sensitive usability pattern" to refers to a technique or mechanism that should be applied to the design of the architecture of a software system in order to address a need identified by a usability property at the requirements stage. The collection contains fifteen patterns including "Actions for Multiple Objects", "History Logging", "User Profiles" and "Context Sensitive Help". The site is http://www.designforquality.com
Making Rich Web Application Architecture Usable, byViswanath Gondi. The article lists various usability constraints in the first two pages and then introduces a design pattern for addressing them in web application architectures. The article can be found at: http://www.sitepoint.com/article/1223
User Interface Design Patterns. A set of 21 patterns written by Laakso, Laakso and Saura of the University of Helsinki. The patterns include "Continuous Highlighting", "Placeholder", "Double List", "Calendar Strip", and "Object-Specific Undo".The patterns can be found at http://www.cs.helsinki.fi/u/salaakso/patterns/
Book: Interaction Design for Complex Problem Solving: Developing
Useful and Usable Software, by Barbara Mirel
I just finished a book that will be out in September (Morgan Kaufmann).
At the heart of it is the need to design for people's patterns of inquiry(i.e.
socio-technical or application-level patterns), with 3 extensive case studies
presenting these patterns for designing for 3 different problems in distinct
domains -- troubleshooting in IT, product management in merchandising, and
drug dosage decisions in inpatient healthcare. More on the book can be found
at the Academic Press Book Catalogue site: http://www.bh.com/apcatalog/?country=none
(Enter my name and/or book title to get taken to the write-up.)
Patterns for Speech Dialogues for Older Adults. A set of design
patterns by Mary Zajicek.
Older adults experience a wide range of age related impairments including
loss of vision, hearing, memory and mobility, the combined effects of which
contribute to loss of confidence and difficulties in orientation and absorption
of information. These patterns encapsulate the results of experiments on
speech dialogues and multimodal output for older adults, and are intended
to reflect the experience of older adults gained through experimentation
and observation, and inform new designers of speech systems for older adults,
who lack the experience, thus nurturing, and providing a framework for,
good design. See: http://cms.brookes.ac.uk/computing/speech/index.php?id=61
[8 patterns, based on empirical work, including "Menu Choice Message,"
"Talk Through Message," and "Error Recovery Loop." --TE]
A Visualization Pattern Language. This is a start at a set of patterns for Visualization, by Barry Wilkins. See: http://www.cs.bham.ac.uk/~bxw/vispatts/index.html [38 Patterns -- examples including "Small Multiples," "Redundant Encoding," and "Dynamic Queries" -- assembled into a pattern language. --TE]
Patterns for Groupware. Quote: "In the Groupware-Patterns project we aim to collect patterns for computer supported collaborative work. Allthough there are not so many patterns on the page yet, we would welcome any comments on the existing patterns or - even better - additions of patterns to the catalogue. Authors, who have a pattern in this area can submit it using the provided forms at the web site. The URL for the project is http://www.groupware-patterns.org." [Implemented on a Swiki, this seems like an interesting attempt to create an open-source sort of patterns community. --TE]
Pattern Language for Living Communication. Doug Schuler, the well-known advocate of Community Networks, writes: "You may be interested in the large, participatory "Pattern Language for Living Communication" project that I am helping to facilitate. We now have about 170 "patterns in progress" and we're beginning to nudge themcloser into a pattern language." And, from the web site: "The core concept is that certain forms of information and communication systems are likely to be more effective at promoting conviviality in the human and environmental spheres. These systems are also more "authentic" and more equitable; [...] the systems we hope to promote are more likely to be equitable and participatory." See: http://www.cpsr.org/program/sphere/patterns/ [Based on my rather quick look, it looks like a deep and well done piece of work, with lots of room for collaborators. --TE]
PoInter (Patterns of INTERaction). This project, centered at Lancaster University, is using ethnographic methods to develop descriptive patterns, and is one that I am personally very excited about. What is especially nice is that the PoInter patterns come with real examples. Here are four things, two languages, and two papers describing their work
Amsterdam Patterns Collection. Martijn Van Welie has continued to expand (and has relocated) his Amsterdam Patterns Collection, which is now up to about 60 patterns classified as web, GUI or mobile patterns making it one of the largest patterns collection for Interaction Design. As before, his patterns are focused on user-oriented problems, rather than developer-oriented problems (though of course they are nevertheless very relevant for developers). [Added June 2002]
The CHI 2002 Patterns workshop. This page contains position papers from the members of the CHI 2002 patterns workshop, and will (soon) contain a short report on the workshop. [Added June 2002]
"Patterns for HCI and Cognitive Dimensions: two halves of the same story?" by Sally Fincher. An excellent analysis (and presentation) of the role of structure in pattern languages, and comparison with the "cognitive dimensions" approach. [Added May 2002]
The Brighton Usabilty Collection, maintained by the Usability Group at the University of Brighton (which includes Lyn Pemberton and Richard Griffiths). Ten patterns, including Allow Type Ahead, Emergency Exits and Think Twice, and a very nice matrix showing interconnections among patterns. This is dated fall of 1998, but I only just came across it.
Various papers by Lyn Pemberton and/or Richard Griffiths:
A Pattern Approach to Interaction Design. This is Jan Borcher's book, just out from Wiley. It is both an introduction to the use of patterns in HCI, and also contains his Pattern Language for Interactive Music Exhibits, which is, in my opinion, the nicest example of an HCI pattern language. The language contains about thirty patterns, ranging from music patterns (e.g. Twelve-Bar Progression ) to HCI Patterns (Attraction Space and Easy Handover) to Software patterns (e.g. Metric Transformer).
Patterns of a Conservation Economy. While most would not see this as an example of interaction design (though I do, albeit at a very high level), it is such a lovely example of both content and form, as well as illustrating one approach to trying to make a pattern language a participatory entity, that I can't resist including it here. This pattern language includes about 80 patterns for the Pacific Northwest bioregion, aimed at supportinga sustainable economy. Patterns include Ecological Literacy, Celebration of Place, Eco-Forestry, Mixed Housing Types, and Adaptive Re-Use and Infill.
The Pattern Gallery. This work-in-progress by Sally Fincher is a collection that illustrates the variety of pattern-forms that HCI folk are devising; it is devoted to exploring pattern form, not pattern content. [Added August 2000]
Interaction Patterns in User Interfaces, by Martijn van Welie and Hallvard Trætteberg. This paper discusses and presents interaction patterns in user interfaces. These patterns are focused on solutions to problems end-users have when interacting with systems. The patterns take an end-user perspective which leads to a format where usability is the essential design quality. The format is discussed and presented along with twenty patterns that have been written in that format. [Added July 2000]
Lingua Francas for Design: Sacred Places and Pattern Languages, by Thomas Erickson. A paper to appear at the DIS 2000 conference; some overlap with the Pattern Languages as Languages paper (below), but much more comprehensive. Presents fragments from various (usually hypothetical) pattern languages. (This is the final draft of a paper with a very similar name, that I have now taken down.) [Added ~May 2000]
Patterns as Tools for UI Design, by M. van Welie, G.C. van der Veer, A. Eliëns. A paper that discusses interaction patterns for UI Design; in particular, it explores how patterns should be structured in order to be effective and usable tools for designers. A structure for UI design patterns is proposed and is illustrated with an example. [Added ~March 2000]
Pattern Languages as Languages, by Thomas Erickson. Drawing on an example from the architecture literature (though not an example, explicitly of pattern language use), it discusses the role a pattern language might play in allowing a community to gain control over the design of its environment. Gives a fragment of a workplace pattern language called "Design Consultancy" that includes patterns such as Maintaining Mutual Awareness, Locally Mobile Workers, and Receptionist as Hub. [Added February 2000]
The most relevant mailing list is ui-patterns. To subscribe send email to ui-patterns-request@cs.uiuc.edu containing the word subscribe in the Subject: field (and nothing else). Don't say "please subscribe me" or "I want to subscribe" or anything else, and don't put "subscribe" in the body of the message--you are talking to a machine, not a human, and it only looks for single words in the subject field.
To unsubscribe send email to ui-patterns-request@cs.uiuc.edu containing the word unsubscribe in the Subject: field (and nothing else).
See the Patterns Home Page Mailing Lists section for other mailing lists on software patterns, and associated discussion archives.
Putting It All Together: Towards a Pattern Language for Interaction Design. Summary Report of the CHI '97 Workshop by Bayle, E., Bellamy, R., Casaday, G., Erickson, T., Fincher, S., Grinter, B., Gross, B., Lehder, D., Marmolin, H., Potts, C., Skousen, G. & Thomas, J.
A Pattern Approach to Interaction Design. This is Jan Borcher's book, just out from Wiley in the Spring of 2001. It is both an introduction to the use of patterns in HCI, and also contains his Pattern Language for Interactive Music Exhibits, which is, in my opinion, the nicest example of an HCI pattern language. The language contains about thirty patterns, ranging from music patterns (e.g. Twelve-Bar Progression ) to HCI Patterns (Attraction Space and Easy Handover) to Software patterns (e.g. Metric Transformer).
Towards a Pattern Language for Interaction Design by Thomas Erickson
Interaction Pattern Languages: A Lingua Franca for Interaction Design? by Thomas Erickson. [Slides from a talk presented at the Usability Professionals's Association Conference, June 1998]. Download a PDF File (1.2 megabytes) or download a Powerpoint 97 file (779K)
Pattern Languages as Languages, by Thomas Erickson. Drawing on an example from the architecture literature (though not an example, explicitly of pattern language use), it discusses the role a pattern language might play in allowing a community to gain control over the design of its environment. Gives a fragment of a workplace pattern language called "Design Consultancy" that includes patterns such as Maintaining Mutual Awareness, Locally Mobile Workers, and Receptionist as Hub.
Lingua Francas for Design: Sacred Places and Pattern Languages, by Thomas Erickson. A paper to appear at the DIS 2000 conference; some overlap with the Pattern Languages as Languages paper (below), but much more comprehensive. Presents fragments from various (usually hypothetical) pattern languages. (This is the final draft of a paper with a very similar name, that I have now taken down.)
The Pattern Gallery. (A page, not a paper.) This work-in-progress by Sally Fincher is a collection that illustrates the variety of pattern-forms that HCI folk are devising; it is devoted to exploring pattern form, not content.
A Pattern-Supported Approach to the User Interface Design Process, by Åsa Granlund and Daniel Lafrenière. A PDF format paper outlines a framework for a pattern-based approach to UI design. What I like about this paper is that it provides a more unified approach, discussing types of patterns ranging from those for describing particular work domains to task and design patterns.
Principles for a Usability-Oriented Pattern Language by Mahemoff, M. J. and Johnston, L. J. (1998).
Pattern Languages for Usability: An Investigation of Alternative Approaches, Michael J. Mahemoff and Lorraine J. Johnston.
Finding Patterns in the Fieldwork [ECSW01], by David Martin and Ian Sommerville [from the PoInter project at Lancaster University]. "In this paper we focus on outlining some of our experiences and difficulties in developing patterns from ethnographic studies and present some initial ideas towards the development of a pattern language to exploit the experience gained from a decade of field studies."
The Case for UI Patterns, by Jenifer Tidwell
Design Patterns for User Interfaces, by PR Warren & M Viljoen. The paper describes shortcomings in UI's designed by students, and observes that the UI literature does not provide advice that enables students to avoid or correct most of their errors. It suggests that design patterns are useful in this respect, and presents a single pattern (The Center Stage) which would correct many of the problems the student designers experienced.
Patterns as Tools for UI Design, by M. van Welie, G.C. van der Veer, A. Eliëns. A paper that discusses interaction patterns for UI Design; in particular, it explores how patterns should be structured in order to be effective and usable tools for designers. A structure for UI design patterns is proposed and is illustrated with an example.
Seven Habits of Successful Pattern Writers, by John Vlissides
Patterns: The Top Ten Misconceptions, by John Vlissides
A Pattern Language for Pattern Writing, by Gerard Meszaros and Jim Doble
[Tom's
Home Page]
[Professional] [Life,
Fun, &c] [Tell Me...]
[Bookmarks] [Publications List]
<and many papers and essays>
Of more general interest: [Apple HI Alumni page] [Interaction Design Patterns page] [Social Computing]
Maintained by snowfall@acm.org)