Tom Erickson
  home •• pubs essays  HCI Remixed HICSS PC patterns  Apple Human Interface Alumni page

 

The Interaction Design Patterns Page

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 to disentangle from interaction design. Those interested 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.

Most recent update: 14 Sep 12: Fixed a few broken links.
Previous updates: 27 Jan 12; 27 Sep 11; 17 Aug 11; 17 Jan 11; 11 Aug 10, 14 Jun 10, 15 Nov 09; 07 March 2009; 30 May 2008; 01 Oct 07; 29 June 07; 14 June 07; 09 May; 27 Mar 2007; 10 Oct 2006; 05 June, 06 Mar, 14 Feb, 25 Jan, 13 Jan 2006; 21 Dec 2005, 09 Dec, 28 Nov, 02 Nov, 26 Oct 2005
, ...

Contents of this page

How to Get Added to this Page

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.

Recent Additions

Designing for Social Configurations: Pattern Languages to Inform the Design of Ubiquitous Computing [updated, 27 Jan 12]

  • Sebastian Denef, Reinhard Oppermann, David Victor Keyson
  • This is a paper in the International Journal of Design that discusses Pattern Languages a methodology for engaging with on-the-ground practice.

Group Works: A Pattern Language of Group Process card deck [updated, 27 Jan 12]

  • by <a group>
  • This extensive and nicely done pattern language on orchestrating group processes has been published as a physical deck of cards – you can download it for free or purchase a physical version. I've purchased the physical version myself, and I can say it's very nicely done.

HCI Patterns for Safety-related Environments [updated, 27 Sep 11]

  • Thomas Zahler
  • This is a set of patterns for safety-related sites. It consists of about forty patterns including: Affordance, Area of Focus, Command Button, Digit Block, Hold and Activate Button and Flip-flop Button.

Fluid Order: A Pattern Langague of Firefighting Frontline Practice [added 17 Aug 11]

  • by Sebastian Denef
  • This is a set of 16 patterns that describes the practice of firefighting. Patterns include Independent Units, Backup Team, Handy Multi Tools and Ever-Changing Puzzle. This site is notable, in my opinon, for its design which is both highly functional (with a map of the language that serves as both overview and navigation device) and aesthetically pleasing (yes! pictures are an important part of patterns!)

Group Works: A Pattern Language of Group Process [added, 17 Jan 11]

  • by <a group>
  • This is a set of nearly one hundred patterns (in various stages of development) related to group process and facilitation. Example patterns include Naming, Divergence and Convergence Rhythm, Feedback, Mapping and Measurement, Ritual, Space and Time Nooks, and Transparency.
    In addition to its content, the site provides a very interesting example of how to support the collective online development of a pattern language -- in this vein, this site is the most interesting thing I've seen in a long time. Of course, one would expect a pattern language about group process and facilitation to be developed by a group! ; - )

AjaxPatterns.org [updated, 14 Jun 10]

  • Michael Mahemoff
  • A set of ~70 patterns ranging from low level programming constructs such as RESTful Service and Lazy Inheritance to high level functionality and UI such as Accordian, Data Grid, Malleable Content, One-Second Spotlight and Heartbeat.

Yahoo Design Patterns Library [updated, 14 June 10]

  • Yahoo!
  • Yahoo's library of patterns is one of the most active and up-to-date foci of patterns activity. It currently (as of 14 June 2010) contains 59 patterns. The site includes pointers to UI code for some patterns, links to a blog and discussion forum for patterns, and a statement of intent to provide monthly updates. Patterns include Search Pagination, Rating an Object and Review Architecture. Also see "Implementing a Pattern Library in the Real World: A Yahoo! Case Study" by Leacock, Malone and Wheeler under the "Papers about Pattern Languages" heading on this page.

UI Pattern Factory [updated, 14 Jun 10]

  • Janne Lammi
  • UI Pattern Factory is a mix of UI design pattern library and UI gallery -- it currently has 22 patterns. Examples include Endless Scrolling, Stacked Tabs, Radial Menu, Shopping Cart, and Inline Suggestions. [updated 14-June-10]

 

 

 


Remainder of this page's contents:


Papers About Pattern Languages for Interaction Design

(alphabetical by author)

Putting It All Together: Towards a Pattern Language for Interaction Design

  • Bayle, E., Bellamy, R., Casaday, G., Erickson, T., Fincher, S., Grinter, B., Gross, B., Lehder, D., Marmolin, H., Potts, C., Skousen, G. & Thomas, J.
  • Summary report of the CHI '97 Workshop on Pattern Languages, organized by Tom Erickson and John Thomas.

A Pattern Approach to Interaction Design

  • Borcher, J.
  • 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).

HCI Patterns page

  • Borcher, J.
  • This page, by Jan Borcher, includes a suite of patterns papers submitted to CHI '99:
    • Pattern Languages in Human-Computer Interaction, by Jan O. Borchers
      What is a Pattern Language? by Sally Fincher
    • Teaching Usability Design Through Pattern Language, Richard N. Griffiths and Lyn Pemberton
    • Towards a pattern language to shape the Information Technology Environment, Brian J. Moore
    • User Interface Patterns for Data Intensive Applications, Michael P. Anton
    • Breaking the Interdisciplinary Limits of Computer-Human Interaction Design: A Pattern Approach, Jan O. Borchers

Designing for Social Configurations: Pattern Languages to Inform the Design of Ubiquitous Computing [updated, 27 Jan 12]

  • Sebastian Denef, Reinhard Oppermann, David Victor Keyson
  • This is a paper in the International Journal of Design that discusses Pattern Languages a methodology for engaging with on-the-ground practice.

Development and evaluation of emerging design patterns for ubiquitous computing

  • Eric Chung, Jason I. Hong, James Lin, Madhu K. Prabaker, James A. Landay, and Alan L. Liu.
  • This paper, which appeared in the 2004 Proceedings of Designing Interactive Systems (DIS2004), describes the development of a set of 45 "pre-patterns" for ubiquitous computing, and their evaluation by having them used by 16 pairs of designers.

Lingua Francas for Design: Sacred Places and Pattern Languages

  • Erickson, Thomas
  • A paper at the DIS 2000 conference; some overlap with the Pattern Languages as Languages paper, 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]

Interaction Pattern Languages: A Lingua Franca for Interaction Design? [Also available in Powerpoint 97]

  • Erickson, T.
  • Slides from a talk presented at the Usability Professionals's Association Conference, June 1998. A early verison of the ideas in "Lingua Francas for Design: Sacred Places and Pattern Languages."

Towards a Pattern Language for Interaction Design

  • Erickson, T.
  • Introduces the idea of Pattern Languages, and argures that they are an ideal vehicle for making ethnographic research accessible to designers.

Pattern Languages as Languages

  • Erickson, T.
  • A preliminary verison of "Towards a Pattern Language for interaction Design. 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.

The Pattern Impulse: Thomas Walter Barber’s “scheming and devising”

  • Sally Fincher
  • In this very nice essay, Sally Fincher does a bit of patterns archeology, unearthing Thomas Barber's Egineers Sketch-Book of Mechanical Movements, Devices, Appliances, Contrivances and Details. The book was astonishingly successful: first published in 1889 it was continuously in print for at least the following 50 years. Fincher remarks on the similarities between this work and Alexander's: "both conceived the process of design in an holistic manner, and both supported it (in themselves and for others) with a collection of small instantiations of practice which were to be drawn together and combined by the skill and taste of the designer, interpreted with absolute regard for local and specific context." A very nice, short essay, for those interested in pre-Alexandrian thinking on patterns...

The Pattern Gallery

  • Fincher, Sally
  • 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]

Patterns for HCI and Cognitive Dimensions: two halves of the same story?

  • Fincher, Sally
  • An excellent analysis (and presentation) of the role of structure in pattern languages, and comparison with the "cognitive dimensions" approach. [Added May 2002]

CHI 2003 Patterns Workshop

  • Fincher, Sally
  • This is the site for the CHI 2003 Patterns workshop. It's aim was to map current understanding and use of HCI Patterns and determine how to make significant advances through two perspectives: 1) a view of the conceptual foundations of patterns and their relationship to other HCI models and approaches 2) a focus on tools and methodologies related to pattern creation and use. In addition to a workshop report and position papers by a number of familiar faces, readers may also be interested in the Pattern Language Markup Language (PLML) specification. "Our goal in deriving PLML was to bring order to the many (inconsistent) forms pattern authors have used. We were seeking a way in which patterns and pattern languages from various authors could refer to patterns in other collections and could identify common elements across collections: ways in which patterns from disparate authors could be combined into specific, thematic collections, perhaps even combined into larger meta-collections.a solution." See http://www.cs.kent.ac.uk/people/staff/saf/patterns/plml.html

A Pattern-Supported Approach to the User Interface Design Process,

  • Granlund, Åsa and Lafrenière, Daniel
  • 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.

Teaching Usability Design through Pattern Language

  • Griffiths, Richard N. and Pemberton, Lyn.
  • "We discuss three approaches to incorporating design Patterns into teaching: teaching about Pattern language, discovering patterns and teaching through Pattern language. "

“…real, concrete facts about what works …”: Integrating Evaluation and Design Through Patterns

  • Guy, Elizabeth
  • "A possible approach to the integration of use, design and evaluation is through the representation of evaluation findings as design-oriented models. A method is described for modeling computer-supported cooperative work and its context: a design patterns language, based on the principles of activity theory. The language is the outcome of an evaluation of the evolving use of tools to support collaborative information sharing, carried out at a global NGO."

UI Pattern Factory

  • Janne Lammi
  • UI Pattern Factory is a mix of UI design pattern library and UI gallery -- it currently has 10 patterns. Examples include Radial Menu, Shopping Cart, and Inline Suggestions. [added 30-May-08]

Implementing a Pattern Library in the Real World: A Yahoo! Case Study

  • Leacock, Matt, Malone,, Erin and Wheeler, Chanel
  • This paper describes the process of developing both the content and procedures for producing and maintaining a pattern library for Yahoo! While the paper doesn't give a lot of detail about the patterns, it is interesting for two reasons: First of all, it's an example of a real world use of patterns by a well-known company. Second, and to my mind, more intriguing, it illustrates a process for a pattern language that is produced and maintained by a community of people. Curiously, most pattern languages produced so far seem to be owned or at least managed by a single person (or occasionally a small group as in Chris Alexander's case or the PoInter Project at Lancaster); however, as Alexander makes clear in A Timeless Way of Building, he sees pattern languages as collectively produced and maintained (albeit implicitly) by communities, and not the product of an invidual or small group.

Montessori Design Patterns

  • Leone, TJ
  • 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.

Principles for a Usability-Oriented Pattern Language

  • Mahemoff, M. J. and Johnston, L. J. (1998).

Pattern Languages for Usability: An Investigation of Alternative Approaches

  • Mahemoff, Michael J. and Johnston, Lorraine J.

Finding Patterns in the Fieldwork [ECSW01],

  • Martin, David and Sommerville, Ian
  • "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." [from the PoInter project at Lancaster University].

Applying Patterns of Cooperative Interaction To Work: (Re)Design: E-Government and Planning [CHI02]

  • Martin, David, Rouncefield, Mark, and Sommerville, Ian
  • These patterns, derived from ethnographic studies of cooperative work, consist of examples of similar social and interactional phenomena found in different studies that serve as resources for defining and envisaging design concepts, and potential work process and technical solutions. We outline new pattern examples and demonstrate their use in application to a complex setting, e-government in local government planning.

The Promise of Patterns for Interaction Design

  • Pemberton, Lyn
  • Draft of article based on presentation at HF2000. Loughborough. "This paper reviews the various tools and representations available for the communication of interaction design knowledge, before introducing a relatively recent addition, Design Pattern Languages. We give some examples of individual patterns and pattern languages and discuss the potential use of pattern languages as a means of representing interface design solutions in a range of contexts."

Don't Write Guidelines, Write Patterns

  • Pemberton, Lyn and Griffiths, Richard N.
  • Paper concentrating on the relationship between patterns and guidelines

Genre as a Structuring Concept for Interaction Design Pattern Languages

  • Pemberton, Lyn
  • A position paper for the recent HCI-SIG Workshop on patterns, Nov. 2000, London. "When Alexander described his architectural patterns, it was not as a flat list of 253 items, but as a hierarchical "language" where one pattern directed the reader to lower level patterns, rather like the kind of grammatical rewrite rules familiar to us from transformational grammar. This hierarchical structuring is tremendously powerful, since not only does it enable easy retrieval of individual patterns but it also contributes to the generative force of the patterns, as each pattern shows the sub-patterns required to resolve more detailed design issues in the context of the larger design. In the HCI domain, several "sub-languages" for specific domains are being developed, for instance for Web applications, visualisation software, robot control systems, music applications and control room software. However, they are like pieces of a large, ambitious but rather anarchic patchwork quilt that at the moment has no overriding structure to it: small patches are filled in but large areas remain blank. Individual sub-languages do not draw on others, which leads inevitably to redundancy as each pattern writer creates a different pattern for more or less the same phenomenon. Perhaps more importantly, there is no sense of the scope of the general pattern language writing project and therefore no public agenda for future efforts in pattern writing, as the impetus to produce pattern languages arises from either personal or organisational interest in a specific corner of a larger domain. ... In this paper, I would like to explore the idea that genre may be a useful conceptual tool for structuring interaction design pattern sub-languages, allowing links to be perceived and providing a sense of the scope of the territory to be mapped."

Cross-cultural Collaboration Patterns

  • Nicole Schadewitz
  • This is a wiki that offers a collection of about a dozen design patterns supporting intercultural distributed collaboration, as well as proposing some "pattern hypotheses." The patterns include Community Watch, Mood of the Moment, and Local Variations. [added 30-May-08]

Towards a Pattern Based Usability Inspection Method for Industrial Practitioners

  • Schmettow, M.
  • From the abstract: "In this paper a usability inspection method based on usability patterns is introduced, which may be especially well suited for practitioners in software development, who are in general not usability experts." The paper appeared in Proceedings of the Workshop on Integrating Software Engineering and Usability Engineering (held on Interact 2005), 2005 [added 14-June-07]

The Case for UI Patterns,

  • Tidwell, Jenifer

Evaluating Museum Websites using Design Patterns [NB: 14 meg file]

  • van Welie, Martijn and Klaassen, Bob.
  • Martijn Van Wlie writes: "I just finished a report on pattern usage in museum sites. I was interested in seeing if I had enough patterns to 'dismantle' a site entirely. At the same time I needed to study museum sites in order to write a pattern for this site type." This very nice and very thorough paper (19 pages, with 50+ pages of appendices) examines 3 museum web sites using patterns from the 100+ Amsterdam patterns collection (www.welie.com), as well as refining existing patterns and describing new ones. See http://www.welie.com/articles/IR-IMSE-001-museum-sites.pdf [note: file is 14.7 megabytes]

Interaction Patterns in User Interfaces

  • van Welie, Martijn and Trætteberg, Hallvard
  • 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]

Patterns as Tools for UI Design

  • van Welie, Martjin, van der Veer, G. C. and Eliëns, A.
  • 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]

Patterns and Pattern Languages for Interaction Design

(alphabetical by author)

Group Works: A Pattern Language of Group Process card deck [updated, 27 Jan 12]

  • by <a group>
  • This extensive and nicely done pattern language on orchestrating group processes has been published as a physical deck of cards – you can download it for free or purchase a physical version. I've purchased the physical version myself, and I can say it's very nicely done.

Group Works: A Pattern Language of Group Process [added, 17 Jan 11]

  • by <a group>
  • This is a set of nearly one hundred patterns (in various stages of development) related to group process and facilitation. Example patterns include Naming, Divergence and Convergence Rhythm, Feedback, Mapping and Measurement, Ritual, Space and Time Nooks, and Transparency.
    In addition to its content, the site provides a very interesting example of how to support the collective online development of a pattern language -- in this vein, this site is the most interesting thing I've seen in a long time. Of course, one would expect a pattern language about group process and facilitation to be developed by a group! ; - )

WebPatterns.org

  • Allsopp, John
  • This is a collaborative project to develop a pattern language for web development. In its early stages (as of 12/05), the site features a "patterns quiz" designed to encourage visitors to submit patterns, which will eventually be developed in an accompanying Wiki.

Interaction Design Patterns for Computers in Sociable Use
(International Journal of Computer Applications in Technology, 2006 Vol. 25 No. 2/3, 128-139.)

  • Arvola, Mattias
  • This paper discusses how to go from fieldwork to design patterns, and presents three design patterns: Workspace with Privacy Gradient, Combinations of Personal and Shared Devices, and Drop Connector. Its patterns also do a nice job of referencing patterns from other authors including Alexander et al, Martin, Tidwell and Van Welie. It concludes by showing how they are implemented in the design of a multiple-device multimedia platform. [3-29-06]

The 400 Project

  • Barwood and Falstein, et al.
  • This is an attempt to write, not quite a pattern language, but something that is at least a cousin of a pattern language for game design. The project page has not been updated so it is either abandoned or dormant, which is a pity because the pattern names are quite evocative. Two fully described 'patterns' are Provide Clear Short-Term Goals and Provide Parallel Challenges with Mutual Assistance. Other name-only patterns are Make Subgames, Turn Constants into Variables and Begin at the Middle (these latter rules remind me of Brian Eno and Peter Schmidt's "Oblique Strategies" for getting unstuck when doing creative work.)
User Interface [from the Portland Patterns Repository)
  • Beck, Kent
  • The beginnings of a pattern language for UI design: the patterns drive the initial phases of designs. Example patterns include Story, Task Window, and Early Program.

The Pedagogical Patterns Project

  • Joseph Bergin, Jutta Eckstein, Mary-Lynn Manns, Helen Sharp, Markus Voelter, Eugene Wallingford, Klaus Marquadt, Jane Chandler, Astrid Fricke
  • "Pedagogical patterns try to capture expert knowledge of the practice of teaching and learning. The intent is to capture the essence of the practice in a compact form that can be easily communicated to those who need the knowledge. " This site currently has pointers to three pattern languages:
    • SEMINARS - A Pedagogical Pattern Language about teaching seminars effectively, by Astrid Fricke and Markus Voelter.
      This language is "for those, who feel that something is going wrong with their seminars - perhaps they are even frustrated and do not know what to change or what the reasons could be. This pattern language gives some hints for improving the situation, i.e. how you can run better seminars." The language has about fifty patterns, including Check Prerequisties, Breaks, Buffers, Digestable Packets, Invisible Teacher, and Seminar Debrief
    • Learning to Teach and Learning to Learn - Running a Course [pdf], by Jutta Eckstein
      "The intended audience of this paper is educators who care not only about what they are teaching but also about how they are mediating the topics. This paper addresses the learning on the students' side as well as the teaching on the educator's side. " The language consists of five patterns: Open the Door, Challenge, Ask your Neighbor, Wrap Up, and Do you Remember.
    • Fourteen pedagogical patterns, by Joseph Bergin
      "The [..] fourteen patterns form the beginning approaches to a pattern language for Computer Science course development. They might have application to other fields as well. The patterns are not all at the same level of scale..." The patterns include Early Bird, Lay of the Land, Fixer Upper, Student Design Sprint, and Mistake.

A Pattern Approach to Interaction Design

  • Borchers, Jan
  • This is Jan Borcher's book, published by 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).
Notes on a Pattern Language for Interactive Usability
  • Casaday, George
  • Explores a way of applying pattern based design to interactive systems. It describes three pattern types: simple, instrinsic, and circumstantial.
Experiences -- A Pattern Language for User Interface Design
  • Coram, Todd and Lee, Jim
  • A UI pattern language of about two dozen patterns (quite a few of which are TBD). Examples of patterns are Explorable Interface, Cooperating Windows, and Mutliple Settings.

Fluid Order: A Pattern Langague of Firefighting Frontline Practice

  • by Sebastian Denef
  • This is a set of 16 patterns that describes the practice of firefighting. Patterns include Independent Units, Backup Team, Handy Multi Tools and Ever-Changing Puzzle. This site is notable, in my opinon, for its design which is both highly functional (with a map of the language that serves as both overview and navigation device) and aesthetically pleasing (yes! pictures are an important part of patterns!)

Learning to Teach and Learning to Learn - Running a Course [pdf]

  • Eckstein, Jutta
  • "The intended audience of this paper is educators who care not only about what they are teaching but also about how they are mediating the topics. This paper addresses the learning on the students' side as well as the teaching on the educator's side. " The language consists of five patterns: Open the Door, Challenge, Ask your Neighbor, Wrap Up, and Do you Remember.
Patterns of a Conservation Economy
  • [EcoTrust]
  • 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.
Towards a Pattern Vocabulary for Dissemination Techniques
  • Fincher, Sally
  • [For download only: postscript.]

Interaction Design Patterns for Games

  • Eelke Folmer
  • This site provides 22 interaction patterns for game design: the patterns focus on both making games usable (e.g., Arcade Mode, Seamless Gameworld, and Visual Saves) and accessible to people with disabilities (Closed Captioning, Customizable Controls, and Journal). [updated 10-Jun-10]

 

 
SEMINARS - A Pedagogical Pattern Language about teaching seminars effectively
  • Fricke, Astrid and Voelter, Markus
  • This language is "for those, who feel that something is going wrong with their seminars - perhaps they are even frustrated and do not know what to change or what the reasons could be. This pattern language gives some hints for improving the situation, i.e. how you can run better seminars." The language has about fifty patterns, including Check Prerequisties, Breaks, Buffers, Digestable Packets, Invisible Teacher, and Seminar Debrief

Making Rich Web Application Architecture Usable

  • Gondi, Viswanath
  • The article lists various usability constraints in the first two pages and then introduces a design pattern for addressing them in web application architectures.

UbiComp Design Patterns

  • [GUIR - Group for User Interface Research, Berkley (Landay, et al.)]
  • A set of about 40 complete patterns (but lacking inter-pattern references) for ubiquitious computing. Patterns include Personal Memory Aids, Active Map, Reasonable Level of Control and Sensemaking of Services and Devices.

Patterns for Personal Web Sites

  • Irons, Mark L.
  • A pattern language of about three dozen patterns.

User Interface Design Patterns

  • Laakso, Laakso and Saura
  • 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/

UI Pattern Factory

  • Janne Lammi
  • This appears to have morphed into a consultancy since it was originally added, but it does maintain a combination of a UI design pattern library and UI gallery -- it currently has 42 patterns. Examples include Autocomplete, Hover Invitation, Radial Menu, Spotlight Effect, and Drag and Drop Modules. [updated 14-June-10 & 14-Sep-12]

Inspirational Patterns for Embodied Interaction

  • Löwgren, Jonas
  • [This appears to have changed from a web-site to a for-purchase publication.] "The idea is to articulate free-form patterns to capture interesting points in the design space and inspire other designers (as opposed to capturing best-practice which seems to be the most popular reason for writing patterns). The paper introduces nine, hopefully inspirational, patterns in the genre of embodied interaction." Nine patterns including Material objects are tokens of virtual information, Material object qualities influence interaction qualities, and Interactive and broadcast media combine to form a positive spiral of participation.

AjaxPatterns.org [updated, 14 Jun 10]

  • Michael Mahemoff
  • A set of ~70 patterns ranging from low level programming constructs such as RESTful Service and Lazy Inheritance to high level functionality and UI such as Accordian, Data Grid, Malleable Content, One-Second Spotlight and Heartbeat.

Patterns of Cooperative Interaction.

  • [PoInter project, at Lancaster University; David Martin, et al ]
  • 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. A collection of 10 patterns, with more coming, including patterns like "Artefacts as Audit Trail," "Receptionist as Hub," and "Doing a Walkabout." See http://www.comp.lancs.ac.uk/computing/research/cseg/projects/pointer/patterns.html
  • [This entry last updated March 2005.]
Interaction Design for Complex Problem Solving: Developing Useful and Usable Software [Book]
  • Mirel, Barbara
  • "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.)"

Learning Patterns for the Design and Deployment of Mathematical Games

  • Mor,Yishay and many others
  • "Our project, 'learning patterns for the design and deployment of mathematical games', http://lp.noe-kaleidoscope.org/, is developing a pattern language for games for mathematical learning. Our outcomes so far include a literature review, a set of typologies and a workshop (to be held at the end of this month). We are also developing a web-based tool for browsing, editing and organizing our patterns." [6-05-06]

User Interaction Design Patterns for Information Retrieval Systems

  • Schmettow, M.
  • This paper presents a pattern language for information retrieval systems. The 10 patterns described in the paper include Teach the Taxonomy Casually, Rich Results, Exploit Social Information, and Show the Treasures. Paper in Proceedings of EuroPLoP 2006, 2006. [added 14-June-07]

Liberating Voices: Pattern Language for Living Communication

  • Schuler, Doug (and many colleagues via CPSR's Public Sphere Project)
  • 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. " This in-progress language has 64 patterns (and a larger pool of candidate patterns and proto-patterns) ranging from Civic Intelligence and Collective Decision-Making to Witnessing, Media Intervention and Peace and Quiet. Interestingly enough, this language is being developed by an extended group, and allows people to register to create candidate patterns, contribute to existing patterns, and send comments to pattern authors. This pattern language is not about technology, but rather about communication patterns that shape civic discourse. 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]

Patterns for Computer-Mediated Interaction [book]

  • Till Schümmer and Stephan Lukosch
  • This comprehensive set of patterns for CSCW and CMC expands the traditional patterns format with a scenario [carried on across patterns], danger spots and known uses. The approximately 70 patterns in the book include Welcome Area, Floor Control, Blind Date, Active Neighbors, Pessimistic Locking and Optimistic Concurency Control. [added 1-October-07]
Patterns for Human-Computer Interaction Studies of Principle Aggregation and Pattern Naming
  • Skogseid, Ingjerd and Spring, Michael
  • Examines evidence to support the existence of patterns for HCI. Identifies nine patterns including, Universal Commands, Accomodating Dialog, Recognizable Objects, and Appropriate Information.
Hold Me, Thrill Me, Kiss Me, Kill Me: Patterns for Developing Effective Concept Prototypes
  • Stimmel, Carol
  • This collection of eight patterns tarkgets developers and managers who are involved in creating and demonstrating concept prototypes. Example patterns include Use It and Lose It, Engage the Client Early, and One Way Street. Notable for its witty choice of pictures...
Cyberpatterns: A Pattern Language for Software
  • Swift, Gary
  • Examples for four patterns having to do with the use of color (e.g. Color as Information and Colors for the Colorblind)

Designing Interfaces: Patterns for Effective Interaction Design [book]

  • Jenifer Tidwell
  • Congratulations to Jenifer on the release of (part of) her Common Ground pattern language (plus much subsequent work) as a book from O'Reilly. "Designing Interfaces ... is an intermediate-level book about interface and interaction design, structured as a pattern language. It features real-live examples from desktop applications, web sites, web applications, mobile devices, and everything in between.". Also see her Common Ground pattern language.
Interaction Design Patterns (AKA Common Ground)
  • Tidwell, Jenifer
  • About four dozen patterns for designing interactive systems -- this is the most ambitious attempt at a UI pattern language that I know of. Examples of patterns include Stack of Working Surfaces, Choice from a Small Set, Pointer Shows Affordances, and Important Message.

UI Patterns

  • Anders Toxboe
  • 50+ patterns, including Steps Left, Table Filter, Fat Footer and Collectable Achievements. [updated 14-June-10]
A Telephone Pattern Language
  • Wake, William
  • A Start of a pattern language for phone-based systems (last updated 1/16/96). Patterns include Describe then Prescribe, Minimize Expected Path Length, and Human of Last Resort.
The Amsterdam Collection of Patterns for User Interface Design
  • van Welie, Martijn
  • 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]
Interaction Patterns in User Interfaces
  • van Welie, Martijn and Trætteberg, Hallvard
  • 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. About 20 patterns, including The Wizard; The Grid; The Preview; Container Navigation; Hinting; etc.

A Pattern Language for Search

  • Wellhausen, Tim
  • "The ability to perform search requests in business data is an important asset of any information system. To be accepted by its users, an information system needs a front-end user interface that leverages the features and complexity of the back-end search facilities. Intended for GUI designers and developers, this paper proposes a pattern language for the design of such user interfaces." Fourteen patterns, including Static Search Dialog, Result Count Feedback, and Context Searches.

wikipatterns.com

  • wikipatterns.com [group site]
  • A pattern language for setting up and running productive wikis; it also includes anti-patterns. The 60+ patterns, grouped as "People Patterns" and "Adoption patterns" include IdentityMatters, WikiGnome, IntentionalError, and Scaffold; there are 30+ anti-patterns including Bully, Do it all, and Empty Pages . Naturally the site is a wiki, and it allows visitors to sign in and comment on patterns. It's nicely done. [updated 14 June 10]

Yahoo Design Patterns Library [updated, 14 June 10]

  • Yahoo!
  • Yahoo's library of patterns is one of the most active and up-to-date foci of patterns activity. It currently (as of 14 June 2010) contains 59 patterns. The site includes pointers to UI code for some patterns, links to a blog and discussion forum for patterns, and a statement of intent to provide monthly updates. Patterns include Search Pagination, Rating an Object and Review Architecture. Also see "Implementing a Pattern Library in the Real World: A Yahoo! Case Study" by Leacock, Malone and Wheeler under the "Papers about Pattern Languages" heading on this page.
Patterns for Speech Dialogues for Older Adults
  • Zajicek, Mary
  • 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]

HCI Patterns for Safety-related Environments [updated, 27 Sep 11]

  • Thomas Zahler
  • This is a set of patterns for safety-related sites. It consists of about forty patterns including: Affordance, Area of Focus, Command Button, Digit Block, Hold and Activate Button and Flip-flop Button.

How to Write Patterns

Seven Habits of Successful Pattern Writers, by John Vlissides

Patterns: The Top Ten Misconceptions, by John Vlissides

Patterns Mailing Lists

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.

 

hits since 30 December 2004.

Tom Erickson

home ••• pubs essays  HCI Remixed HICSS PC patterns Apple Human Interface Alumni page •