Open main menu
Home
Random
Recent changes
Special pages
Community portal
Preferences
About Wikipedia
Disclaimers
Incubator escapee wiki
Search
User menu
Talk
Dark mode
Contributions
Create account
Log in
Editing
Pattern language
(section)
Warning:
You are not logged in. Your IP address will be publicly visible if you make any edits. If you
log in
or
create an account
, your edits will be attributed to your username, along with other benefits.
Anti-spam check. Do
not
fill this in!
==Aggregation in an associative network (pattern language)== A pattern language, as conceived by Alexander, contains links from one pattern to another, so when trying to apply one pattern in a project, a designer is pushed to other patterns that are considered helpful in its context. In Alexander's book, such links are collected in the "references" part, and echoed in the linked pattern's "context" part β thus the overall structure is a [[directed graph]]. A pattern that is linked to in the "references" usually addresses a problem of lower scale, that is suggested as a part of the higher-scale problem. For instance, the "PUBLIC OUTDOOR ROOM" pattern has a reference to "STAIR SEATS". Even without the pattern description, these links, along with meaningful names, carry a message: When building a place outside where people can spend time ("PUBLIC OUTDOOR ROOM"), consider to surround it by stairs where people can sit ("STAIR SEATS"). If you are planning an office ("WORKSHOPS AND OFFICES"), consider to arrange workspaces in small groups ("SMALL WORKING GROUPS"). Alexander argues that the connections in the network can be considered even more meaningful than the text of the patterns themselves. The links in Alexander's book clearly result in a hierarchic network. Alexander draws a parallel to the hierarchy of a grammar β that is one argument for him to speak of a pattern ''language''. The idea of linking is generally accepted among pattern authors, though the semantic rationale behind the links may vary. Some authors, however, like Gamma et al. in ''[[Design Patterns]]'', make only little use of pattern linking β possibly because it did not make that much sense for their collection of patterns. In such a case we would speak of a ''pattern catalogue'' rather than a ''pattern language''.<ref name="dearden">{{cite journal | author = Andy Dearden, Janet Finlay | title = Pattern Languages in HCI: A critical review | date = January 2006 | journal = Human Computer Interaction | volume = 21 | issue = 1 }}</ref> ===Usage=== Alexander encouraged people who used his system to expand his language with patterns of their own. In order to enable this, his books do not focus strictly on architecture or civil engineering; he also explains the general method of pattern languages. The original concept for the book ''A Pattern Language'' was that it would be published in the form of a 3-ring binder, so that pages could easily be added later; this proved impractical in publishing.<ref>Portland Urban Architecture Research Laboratory Symposium 2009, presentation by 4 of 6 original authors of ''A Pattern Language''.</ref> The pattern language approach has been used to document expertise in diverse fields. Some examples are [[Design pattern (architecture)|architectural patterns]], [[Design pattern (computer science)|computer science patterns]], [[interaction design pattern]]s, [[pedagogical patterns]], [[pattern gardening]], social action patterns, and group facilitation patterns. The pattern language approach has also been recommended as a way to promote [[civic intelligence]] by helping to coordinate actions for diverse people and communities who are working together on significant shared problems.<ref>For additional discussion of motivation and rationale as well as examples and experiments, see: {{cite web |last=Schuler |first=Douglas |url=http://publicsphereproject.org/sites/default/files/Critical%20Enablers%20of%20Civic%20Intelligence.reduced.pdf |title=Choosing success: pattern languages as critical enablers of civic intelligence |publisher=Portland Urban Architecture Research Laboratory Conference, Portland, OR, 2009 |website=publicsphereproject.org |access-date=6 March 2017}}</ref> Alexander's specifications for using pattern languages as well as creating new ones remain influential, and his books are referenced for style by experts in unrelated fields. It is important to note that notations such as [[Unified Modeling Language|UML]] or the [[flowchart]] symbol collection are not pattern languages. They could more closely be compared to an alphabet: their symbols could be used to document a pattern language, but they are not a language by themselves. A [[recipe]] or other sequential set of steps to be followed, with only one correct path from start to finish, is also not a pattern language. However, the process of designing a new recipe might benefit from the use of a pattern language. ===Simple example of a pattern=== *''Name'': ChocolateChipRatio *''Context'': You are baking chocolate chip cookies in small batches for family and friends *''Consider these patterns first'': SugarRatio, FlourRatio, EggRatio *''Problem'': Determine the optimum ratio of chocolate chips to cookie dough *''Solution'': Observe that most people consider chocolate to be the best part of the chocolate chip cookie. Also observe that too much chocolate may prevent the cookie from holding together, decreasing its appeal. Since you are cooking in small batches, cost is not a consideration. Therefore, use the maximum amount of chocolate chips that results in a really sturdy cookie. *''Consider next'': NutRatio or CookingTime or FreezingMethod
Edit summary
(Briefly describe your changes)
By publishing changes, you agree to the
Terms of Use
, and you irrevocably agree to release your contribution under the
CC BY-SA 4.0 License
and the
GFDL
. You agree that a hyperlink or URL is sufficient attribution under the Creative Commons license.
Cancel
Editing help
(opens in new window)