Pattern language

A pattern language (English pattern language ) is a collection of design patterns, ie best practices to solve typical problems that occur in creative activities in a specific field of application. Two objectives are pursued essentially:

The term was originally coined by architect Christopher Alexander. In his letter to lay book A Pattern Language. Towns, Buildings, Construction he presented in 1977 before the first pattern language. The concept has been adopted in other departments, first in the object-oriented software development and human-computer interaction (Human - Computer Interaction, HCI ), later in the organizational development and pedagogy.

A very simple definition of the pattern language is to be found in the Portland Pattern Repository by Ward Cunningham:

The structure of pattern descriptions

The description of a design pattern in the style of Alexander follows a fixed structure: after the title - the name of the pattern - follows the context as well as the descriptions of the problem and the generic problem-solving; the description ends with references to other patterns. In the context part is referenced to related patterns, which are to be considered in the planning process before; the references refer to patterns that occur later. This results in a hypertext, with the references, which are the names of the patterns are usually highlighted typographically by small caps.

Based on these cross-references it is possible to carry out the plan in a form that is called Alexander unfolding ( unfolding ). In this case, treat the sample of the highest level - that is, those that should be considered when planning first - the planning of cities. Standing in the hierarchy below pattern treat spatially smaller structures, to parts of individual rooms. It thus is a top-down process. Alexander emphasizes that the cross-references are as important as the pattern itself

The development of pattern languages

Pattern languages ​​arise partly as books by authors or groups of authors, partly as a scientific conference proceedings. Lately arise pattern languages ​​as a result of theses, master's theses and dissertations.

The aim of the publication of pattern languages ​​is the transfer of knowledge and experience to build competence in the design of complex systems.

Made a special contribution has the non -profit organization ' The Hillside Group ', which organizes conferences since 1993: In the United States since 1994, the PLoP ​​conferences ( 'Pattern Languages ​​of Programming '); in Europe since 1996, the EuroPLoP with the fixed - location conference Irsee Monastery in Bavaria. Thematically, these conferences were initially focused on the software; but it was followed by an increasing openness to neighboring areas such as management, organizational development and pedagogy.

There are some writings that deal with how to patterns and pattern languages ​​developed and writes. Most of these are available online.

Other pattern languages

The idea to incorporate the users in the design process, also found in other disciplines appeal, particularly in the field of human-computer interaction.

January Borchers wrote in A Pattern Language for Interactive Music Exhibits 2001, three pattern languages ​​from the fields of blues music, human- computer interaction and software development in order to facilitate communication between these three specialist areas.

Duyne, Landay and Hong wrote in 2002 with The Design of Sites a pattern language for websites. The pattern language is constructed in the order in which the problems arise in the development process during iterative design.

Mary Lynn Manns and Linda Rising in 2005 published the book Fearless Change with 48 patterns that have proven themselves in business for innovation processes and business development.

Jenifer Tidwell in 2005 published the book Designing Interfaces, in which a pattern language is described from about 100 design patterns. They cover every area of human- computer interaction.

Douglas Schuler published in 2008 the book Liberating Voices, in which he describes a pattern language 135 patterns to help overcome the Digitale_Kluft.

The most famous collection of design patterns that the so-called Gang of Four design patterns - Elements of Reusable published Object-Oriented Software, in so far can not be considered as a pattern language, as that it is not completely with only 23 design patterns. However, they provided the impetus for the development of pattern languages ​​in software technology, such as for the design of software development tools and software architectures.

309763
de