Articulo de referencia

Lenguaje de patrones

Alexander dirigiendo un taller sobre la creación del código generativo para un nuevo barrio de casas, 2005. Un lenguaje de patrones es un conjunto organizado y coherente de patr...

Alexander dirigiendo un taller sobre la creación del código generativo para un nuevo barrio de casas, 2005.

Un lenguaje de patrones es un conjunto organizado y coherente de patrones , cada uno de los cuales describe un problema y la esencia de una solución que puede utilizarse de diversas maneras dentro de un campo de especialización específico. El término fue acuñado por el arquitecto Christopher Alexander y popularizado por su libro de 1977, *A Pattern Language* .

Un lenguaje de patrones también puede ser un intento de expresar la sabiduría profunda de lo que aporta vitalidad a un campo particular de la actividad humana, a través de un conjunto de patrones interconectados. Vitalidad es un término genérico para «la cualidad que no tiene nombre»: una sensación de plenitud, espíritu o gracia que, si bien se presenta de diversas formas, es precisa y empíricamente verificable. [ 1 ] Alexander afirma que las personas comunes pueden utilizar este enfoque de diseño para resolver con éxito problemas de diseño muy grandes y complejos.

¿Qué es un patrón?

Cuando un diseñador crea algo —ya sea una casa, un programa informático o una lámpara— debe tomar muchas decisiones sobre cómo resolver problemas. Cada problema se documenta con su contexto típico (la sintaxis ) y su uso (la gramática ), junto con la solución más común y reconocida, similar a los ejemplos que se encuentran en los diccionarios . Cada entrada constituye un patrón de diseño . Cada patrón tiene un nombre, una descripción y referencias cruzadas, al igual que una entrada de diccionario. Un patrón documentado debe explicar por qué esa solución es adecuada en su contexto.

Los patrones elementales o universales, como "puerta" o "asociación", son ideales versátiles de diseño, ya sea que se encuentren en la experiencia o se utilicen como componentes en la práctica, descritos explícitamente como resoluciones holísticas de las fuerzas en contextos y circunstancias recurrentes, ya sea en arquitectura, medicina, desarrollo de software o gobernanza, etc. Los patrones pueden inventarse o encontrarse y estudiarse, como los patrones de diseño que ocurren naturalmente y que caracterizan los entornos humanos. [ 2 ]

Como todos los lenguajes, un lenguaje de patrones tiene vocabulario , sintaxis y gramática ; pero se aplica a alguna actividad compleja distinta de la comunicación. En los lenguajes de patrones para diseño, las partes se dividen de esta manera:

  • La descripción del lenguaje —el vocabulario— es una colección de soluciones descritas y nombradas para problemas en un campo de interés. Estas se denominan patrones de diseño . Así, por ejemplo, el lenguaje de la arquitectura describe elementos como asentamientos, edificios, habitaciones, ventanas, pestillos, etc.
  • Cada solución incluye una sintaxis , una descripción que muestra dónde encaja dentro de un diseño más amplio, completo o abstracto. Esto vincula automáticamente la solución con una red de otras soluciones necesarias. Por ejemplo, las habitaciones tienen formas de obtener luz y de facilitar la entrada y salida de personas.
  • La solución incluye una gramática que describe cómo resuelve un problema o genera un beneficio. Por lo tanto, si el beneficio no es necesario, la solución no se utiliza. Quizás esa parte del diseño pueda dejarse en blanco para ahorrar dinero u otros recursos; si las personas no necesitan esperar para entrar a una habitación, una simple puerta puede reemplazar una sala de espera.
  • En la descripción del lenguaje, la gramática y la sintaxis se indexan cruzadamente (a menudo con un índice alfabético literal de nombres de patrones) con otras soluciones con nombre, de modo que el diseñador pueda pasar rápidamente de una solución a otras relacionadas y necesarias, y documentarlas de forma lógica. En el libro de Christopher Alexander, A Pattern Language , los patrones se presentan en orden descendente de tamaño, con un índice alfabético independiente.
  • La red de relaciones en el índice del lenguaje proporciona múltiples caminos a lo largo del proceso de diseño.

Esto simplifica el trabajo de diseño, ya que los diseñadores pueden comenzar el proceso desde cualquier parte del problema que comprendan y avanzar hacia las partes desconocidas. Al mismo tiempo, si el lenguaje de patrones ha funcionado bien en muchos proyectos, hay razones para creer que incluso un diseñador que no comprenda completamente el problema de diseño al principio completará el proceso de diseño y el resultado será útil. Por ejemplo, los esquiadores que entran deben quitarse la nieve y guardar el equipo. La nieve sucia y los limpiadores de botas deben quedarse afuera. El equipo necesita cuidado, por lo que los estantes deben estar adentro.

Muchos patrones forman un lenguaje.

Así como las palabras deben tener relaciones gramaticales y semánticas entre sí para que un lenguaje hablado sea útil, los patrones de diseño deben relacionarse entre sí en cuanto a posición y utilidad para formar un lenguaje de patrones. El trabajo de Christopher Alexander describe un proceso de descomposición en el que el diseñador se enfrenta a un problema (quizás un encargo comercial), selecciona una solución y luego descubre nuevos problemas menores derivados de la solución principal. En ocasiones, estos problemas menores no tienen solución, por lo que se debe seleccionar una solución diferente y más amplia. Finalmente, todos los problemas de diseño restantes son lo suficientemente pequeños o rutinarios como para que los constructores los resuelvan mediante la improvisación, y el diseño se da por concluido.

La estructura organizativa ( jerárquica , iterativa , etc.) queda a criterio del diseñador, según el problema. Esto permite al diseñador explorar un diseño partiendo de una pequeña parte. Cuando esto sucede, es común que el diseñador se dé cuenta de que el problema forma parte de una solución más amplia. En ese momento, el diseño casi siempre mejora.

Por lo tanto, en este lenguaje, cada patrón debe indicar sus relaciones con otros patrones y con el lenguaje en su conjunto. Esto proporciona al diseñador que utiliza el lenguaje una gran guía sobre los problemas relacionados que debe resolver.

La parte más difícil de que un experto externo aplique un lenguaje de patrones es, de hecho, obtener una lista completa y fiable de los problemas a resolver. Por supuesto, quienes mejor conocen los problemas son quienes necesitan el diseño. Por ello, Alexander defendió la improvisación in situ por parte de usuarios comprometidos y empoderados, [ 3 ] [ 4 ] como una forma eficaz de generar soluciones iniciales a gran escala muy viables, maximizando la utilidad del diseño y minimizando las revisiones. El deseo de empoderar a los usuarios de la arquitectura fue, precisamente, lo que impulsó a Alexander a emprender un proyecto de lenguaje de patrones para la arquitectura.

Problemas de diseño en un contexto

Un aspecto importante de los patrones de diseño es identificar y documentar las ideas clave que distinguen un buen sistema de uno deficiente (ya sea una casa, un programa informático o un objeto de uso cotidiano), y que sirven de ayuda en el diseño de sistemas futuros. La idea expresada en un patrón debe ser lo suficientemente general como para aplicarse a sistemas muy diferentes dentro de su contexto, pero a la vez lo suficientemente específica como para ofrecer una guía constructiva.

El conjunto de situaciones en las que se aplican los problemas y soluciones que aborda un patrón se denomina su contexto. Una parte importante de cada patrón es describir este contexto. Los ejemplos pueden ilustrar aún más cómo se aplica el patrón a situaciones muy diferentes.

Por ejemplo, el patrón de Alexander, "UN LUGAR PARA ESPERAR", aborda las paradas de autobús de la misma manera que las salas de espera en un consultorio médico, proponiendo soluciones útiles y constructivas. El libro " Design Patterns " de Gamma et al., perteneciente al grupo "Gang of Four" , propone soluciones independientes del lenguaje de programación y del dominio de aplicación del programa.

Sin embargo, los problemas y soluciones descritos en un patrón pueden variar en su nivel de abstracción y generalidad, por un lado, y en su especificidad, por otro. En última instancia, esto depende de las preferencias del autor. No obstante, incluso un patrón muy abstracto suele contener ejemplos que, por naturaleza, son absolutamente concretos y específicos.

Los patrones también varían en cuanto a su grado de validación en el mundo real. Alexander califica cada patrón con cero, una o dos estrellas, indicando su eficacia en ejemplos reales. Generalmente se afirma que todos los patrones necesitan al menos algunos ejemplos reales. Sin embargo, es posible documentar ideas aún no implementadas en un formato similar al de un patrón.

Los patrones descritos en el libro de Alexander también varían en su escala: algunos describen cómo construir una ciudad o un barrio, otros se centran en edificios individuales y el interior de las habitaciones. Alexander considera que los artefactos a pequeña escala son elementos constructivos del mundo a gran escala, por lo que pueden conectarse a una red jerárquica .

Equilibrio de fuerzas

Un patrón debe caracterizar los problemas que pretende resolver, el contexto o la situación en la que surgen estos problemas y las condiciones bajo las cuales se pueden recomendar las soluciones propuestas.

A menudo, estos problemas surgen de un conflicto de intereses o "fuerzas" diferentes. Surge un patrón a través del diálogo, que luego ayudará a equilibrar esas fuerzas y, finalmente, a tomar una decisión.

Por ejemplo, podría existir un patrón que sugiera un teléfono inalámbrico. Las fuerzas impulsoras serían la necesidad de comunicarse y la necesidad de realizar otras tareas simultáneamente (cocinar, revisar la estantería). Un patrón muy específico sería simplemente "TELÉFONO INALÁMBRICO". Patrones más generales serían "DISPOSITIVO INALÁMBRICO" o "ACTIVIDAD SECUNDARIA", lo que sugiere que una actividad secundaria (como hablar por teléfono o revisar los bolsillos de los pantalones) no debería interferir con otras actividades.

Aunque su contexto es bastante impreciso, las fuerzas que intervienen en el patrón "ACTIVIDAD SECUNDARIA" son muy similares a las de "TELÉFONO INALÁMBRICO". Por lo tanto, estas fuerzas contrapuestas pueden considerarse parte de la esencia de un concepto de diseño expresado en un patrón.

Los patrones contienen su propia lógica.

Generalmente, un patrón incluye una justificación que hace referencia a ciertos valores. Para Christopher Alexander, lo más importante es pensar en las personas que entrarán en contacto con una obra arquitectónica. Uno de sus valores fundamentales es hacer que estas personas se sientan más vivas. Habla de la «calidad sin nombre» (QWAN, por sus siglas en inglés).

En términos más generales, podríamos decir que un buen sistema debería ser aceptado, bienvenido y disfrutado como un enriquecimiento de la vida cotidiana por quienes están destinados a usarlo, o —mejor aún— por todas las personas a las que afecta. Por ejemplo, al hablar de un café al aire libre, Alexander menciona los posibles deseos de un cliente, pero también a las personas que simplemente pasan por allí.

Este mismo razonamiento puede aplicarse a dispositivos técnicos como teléfonos y automóviles, a estructuras sociales como un equipo que trabaja en un proyecto o a la interfaz de usuario de un programa informático. Por ejemplo, la calidad de un sistema de software podría evaluarse observando si los usuarios disfrutan o tienen dificultades con él.

Al centrarnos en los impactos en la vida humana, podemos identificar patrones que son independientes de la tecnología cambiante y, por lo tanto, encontrar una "cualidad atemporal" (Alexander).

Estructura y diseño genéricos

Por lo general, el autor de un lenguaje o colección de patrones elige una estructura genérica para todos los patrones que contiene, dividiendo cada uno en secciones genéricas como contexto, planteamiento del problema, solución, etc.

Los patrones de Christopher Alexander , por ejemplo, constan de un nombre breve, una calificación (hasta dos asteriscos (*)), una imagen que sensibiliza, la descripción del contexto, el planteamiento del problema, un texto más extenso con ejemplos y explicaciones, una solución, un esquema y referencias adicionales. Esta estructura y disposición se conoce a veces como la «forma alejandrina».

Alexander utiliza un formato de texto especial para marcar las distintas secciones de sus patrones. Por ejemplo, el enunciado del problema y la solución se imprimen en negrita; esta última siempre va precedida de la palabra clave «Por lo tanto:». Algunos autores, en cambio, utilizan etiquetas explícitas, lo que genera cierta redundancia.

Nombres con significado

Cuando el diseño lo realiza un equipo, los nombres de los patrones conforman un vocabulario compartido. Por ello, es fundamental que sean fáciles de recordar y muy descriptivos. Algunos ejemplos de la obra de Alexander son WINDOW PLACE (que ayuda a definir la ubicación de las ventanas en una habitación) y A PLACE TO WAIT (que ayuda a definir las características de paradas de autobús y salas de espera de hospitales, por ejemplo).

Agregación en una red asociativa (lenguaje de patrones)

Un lenguaje de patrones, tal como lo concibió Alexander, contiene vínculos entre un patrón y otro, de modo que cuando un diseñador intenta aplicar un patrón en un proyecto, se le impulsa a recurrir a otros patrones que se consideran útiles en ese contexto.

En el libro de Alexander, estos vínculos se recopilan en la sección de "referencias" y se reflejan en la sección de "contexto" del patrón vinculado; por lo tanto, la estructura general es un grafo dirigido . Un patrón vinculado en las "referencias" generalmente aborda un problema de menor escala, que se sugiere como parte de un problema de mayor escala. Por ejemplo, el patrón "SALA PÚBLICA AL AIRE LIBRE" tiene una referencia a "ASIENTOS DE ESCALERAS".

Incluso sin la descripción del patrón, estos enlaces, junto con nombres significativos, transmiten un mensaje: al construir un espacio al aire libre donde la gente pueda pasar tiempo ("SALA PÚBLICA AL AIRE LIBRE"), considere rodearlo de escaleras donde la gente pueda sentarse ("ASIENTOS EN LAS ESCALERAS"). Si está planificando una oficina ("TALLERES Y OFICINAS"), considere organizar los espacios de trabajo en grupos pequeños ("GRUPOS DE TRABAJO PEQUEÑOS"). Alexander sostiene que las conexiones en la red pueden considerarse incluso más significativas que el texto de los patrones en sí.

Los vínculos que describe Alexander en su libro dan como resultado una red jerárquica. Alexander establece un paralelismo con la jerarquía de una gramática; este es uno de los argumentos que le llevan a hablar de un lenguaje de patrones .

La idea de vincular patrones es generalmente aceptada entre los autores de patrones, aunque la justificación semántica de los vínculos puede variar. Sin embargo, algunos autores, como Gamma et al. en Design Patterns , hacen poco uso de la vinculación de patrones, posiblemente porque no tenía mucho sentido para su colección de patrones. En tal caso, hablaríamos de un catálogo de patrones en lugar de un lenguaje de patrones . [ 5 ]

Uso

Alexander animó a quienes utilizaban su sistema a ampliar su lenguaje con patrones propios. Para ello, sus libros no se centran exclusivamente en arquitectura o ingeniería civil; también explica el método general de los lenguajes de patrones. El concepto original del libro «A Pattern Language» era publicarlo en formato de carpeta de anillas , para poder añadir páginas fácilmente más adelante; esto resultó poco práctico en la publicación. [ 6 ] El enfoque del lenguaje de patrones se ha utilizado para documentar conocimientos especializados en diversos campos. Algunos ejemplos son los patrones arquitectónicos , los patrones de informática , los patrones de diseño de interacción , los patrones pedagógicos , la jardinería de patrones , los patrones de acción social y los patrones de facilitación de grupos. El enfoque del lenguaje de patrones también se ha recomendado como una forma de promover la inteligencia cívica , ayudando a coordinar acciones para personas y comunidades diversas que trabajan juntas en problemas compartidos importantes. [ 7 ] Las especificaciones de Alexander para el uso de lenguajes de patrones, así como para la creación de otros nuevos, siguen siendo influyentes, y sus libros son citados por expertos en campos no relacionados por su estilo.

Las notaciones como UML o la colección de símbolos de diagramas de flujo no son lenguajes de patrones. Se asemejan más a un alfabeto: sus símbolos pueden usarse para documentar un lenguaje de patrones, pero no constituyen un lenguaje en sí mismos. Una receta u otro conjunto secuencial de pasos a seguir, con un único camino correcto de principio a fin, tampoco es un lenguaje de patrones. Sin embargo, el proceso de diseño de una nueva receta podría beneficiarse del uso de un lenguaje de patrones.

Ejemplo sencillo de un patrón

  • Nombre : ChocolateChipRatio
  • Contexto : Estás horneando galletas con chispas de chocolate en pequeñas cantidades para familiares y amigos.
  • Consideremos primero estos patrones : SugarRatio, FlourRatio, EggRatio
  • Problema : Determinar la proporción óptima de chispas de chocolate a masa para galletas.
  • Solución : Ten en cuenta que la mayoría considera que el chocolate es el mejor ingrediente de las galletas con chispas de chocolate. Además, ten en cuenta que demasiado chocolate puede impedir que la galleta se mantenga firme, disminuyendo su atractivo. Dado que vas a preparar galletas en pequeñas cantidades, el costo no es un factor importante. Por lo tanto, usa la cantidad máxima de chispas de chocolate que te permita obtener una galleta realmente consistente.
  • Considere lo siguiente : NutRatio o CookingTime o FreezingMethod

Origen

Christopher Alexander , arquitecto y autor, acuñó el término «lenguaje de patrones». [ 3 ] Lo utilizó para referirse a problemas comunes del diseño y la construcción de edificios y ciudades, y cómo resolverlos. Las soluciones propuestas en el libro incluyen sugerencias que abarcan desde la estructura de las ciudades hasta la ubicación de las ventanas en una habitación.

El marco y la filosofía del enfoque del "lenguaje de patrones" se popularizaron inicialmente en el libro A Pattern Language , escrito por Christopher Alexander y cinco colegas del Center for Environmental Structure en Berkeley, California , a finales de la década de 1970. Si bien A Pattern Language contiene 253 "patrones", desde el primero, "Regiones Independientes" (el más general), hasta el último, "Cosas de tu vida", el libro de Alexander, The Timeless Way of Building, profundiza más en la motivación y el propósito del trabajo. Las siguientes definiciones de "patrón" y "lenguaje de patrones" se parafrasean de A Pattern Language : [ 3 ]

"Un patrón es una descripción cuidadosa de una solución perenne a un problema recurrente dentro del contexto de un edificio, que describe una de las configuraciones que le dan vida. Cada patrón describe un problema que se repite una y otra vez en nuestro entorno y, a continuación, describe la solución principal a ese problema, de tal manera que se puede utilizar la solución un millón de veces sin repetirla jamás." [ 3 ]

Un lenguaje de patrones es una red de patrones que se invocan mutuamente. Los patrones nos ayudan a recordar ideas y conocimientos sobre diseño y pueden utilizarse en combinación para crear soluciones.

Dominios de aplicación

La idea de Christopher Alexander se ha adoptado en otras disciplinas, a menudo mucho más que la aplicación original de patrones a la arquitectura tal como se describe en el libro A Pattern Language . [ 3 ] Ejemplos desde la década de 1990 incluyen patrones de diseño de software en ingeniería de software y, más generalmente, patrones arquitectónicos en ciencias de la computación , así como patrones de diseño de interacción . Desde finales de la década de 1990, los patrones pedagógicos se han utilizado para documentar buenas prácticas en la enseñanza. [ 8 ] Desde al menos mediados de la década de 2000, la idea del lenguaje de patrones se introdujo en el diseño de arquitectura de sistemas [ 9 ] [ 10 ] y patrones de ciencia del diseño (metodología) en un libro escrito por Vijay Vaishnavi y William Kuechler con 66 patrones; [ 11 ] la segunda edición revisada y ampliada de este libro se publicó en 2015 con 84 patrones. [ 12 ] El libro Liberating Voices: A Pattern Language for Communication Revolution , que contiene 136 patrones para usar la información y la comunicación para promover la sostenibilidad, la democracia y el cambio social positivo, se publicó en 2008 junto con un sitio web que contiene aún más patrones. [ 13 ] El mazo "Group Works: A Pattern Language for Bringing Life to Meetings and Other Gatherings" se publicó en 2011. [ 14 ] La idea de un lenguaje de patrones también se ha aplicado en el diseño de permacultura . [ 15 ]

Ward Cunningham , el inventor de la wiki , fue coautor de un artículo con Michael Mehaffy en el que argumentaban que existen profundas relaciones entre las wikis y los lenguajes de patrones, y que las wikis "fueron desarrolladas de hecho como herramientas para facilitar el intercambio y la modificación eficientes de patrones". [ 16 ]

Véase también

Referencias

  1. Alexander, Christopher (1979). El método atemporal de construir . Oxford University Press. ISBN 978-0-19-502402-9.
  2. Henshaw, J. Patrones guía del diseño que se produce naturalmente: elementos. Actas de PURPLSOC 2015, 3-5 de julio de 2015, Krems, Austria. Reunión de PURPLSOC sobre las numerosas cuestiones científicas abiertas, por ejemplo, en relación con los fundamentos teóricos de los patrones y la implementación práctica de los métodos de patrones en la investigación y la docencia.
  3. 1 2 3 4 5 Alexander, Christopher (1977). Un lenguaje de patrones: pueblos, edificios, construcción . Oxford University Press , EE. UU. pág . 1216. ISBN  978-0-19-501919-3.
  4. Alexander, Christopher, El proyecto de Oregón
  5. Andy Dearden, Janet Finlay (enero de 2006). "Lenguajes de patrones en HCI: una revisión crítica". Interacción humano-computadora . 21 (1).
  6. Simposio del Laboratorio de Investigación de Arquitectura Urbana de Portland 2009, presentación de 4 de los 6 autores originales de A Pattern Language .
  7. Para un análisis más detallado de la motivación y la justificación, así como ejemplos y experimentos, véase: Schuler, Douglas. «Elegir el éxito: los lenguajes de patrones como facilitadores críticos de la inteligencia cívica» (PDF) . publicsphereproject.org . Conferencia del Laboratorio de Investigación de Arquitectura Urbana de Portland, Portland, OR, 2009. Consultado el 6 de marzo de 2017 .
  8. Fincher, Sally (septiembre de 1999). "Análisis del diseño: una exploración de patrones y lenguajes de patrones para la pedagogía" . Journal of Computers in Mathematics and Science Teaching . 18 (3): 331– 348.
  9. Cloutier, Robert J.; Verma, Dinesh (junio de 2007). "Aplicación del concepto de patrones a la arquitectura de sistemas". Ingeniería de sistemas . 10 (2): 138– 154. doi : 10.1002/sys.20066 . S2CID 16218191 . 
  10. Cloutier, Robert J.; Muller, Gerrit; Verma, Dinesh; Nilchiani, Roshanak; Hole, Eirik; Bone, Mary (marzo de 2010). "El concepto de arquitecturas de referencia". Ingeniería de sistemas . 13 (1): 14– 27. doi : 10.1002/sys.20129 . S2CID 10835558 . 
  11. Vaishnavi, VK y Kuechler, W. Métodos y patrones de investigación en ciencias del diseño , Auerbach Publications, octubre de 2007, 248 páginas
  12. Vaishnavi, V.K. y Kuechler, W. Métodos y patrones de investigación en ciencias del diseño, 2.ª edición , CRC Press, 2015, 415 páginas.
  13. "Lenguaje de patrones de voces liberadoras" . publicsphereproject.org . Consultado el 6 de marzo de 2017 .
  14. "Proyecto de lenguaje de patrones grupales" . groupworksdeck.org . Consultado el 6 de marzo de 2017 .
  15. Jacke, Dave ; Toensmeier, Eric (2005). «Un lenguaje de patrones para jardines forestales». Jardines forestales comestibles, volumen II: diseño ecológico y práctica para la permacultura en climas templados . White River Junction, VT: Chelsea Green Publishing . págs. 63–139 . ISBN  1-931498-80-6.
  16. Cunningham, Ward ; Mehaffy, Michael W. (2013). «Wiki como lenguaje de patrones» . Actas de la 20.ª Conferencia sobre Lenguajes de Patrones de Programas, 23-26 de octubre de 2013, Monticello, Illinois . PLoP '13. Corryton, TN: The Hillside Group . págs. 32:1–32:14. ISBN  9781941652008.

Lecturas adicionales

  • Christopher Alexander, Sara Ishikawa y Murray Silverstein (1974). «Una colección de patrones que generan centros multiservicio» en Declan y Margrit Kennedy (eds.): The Inner City. Architects Year Book 14, Elek, Londres. ISBN 0 236 15431 1.
  • Alexander, C., Ishikawa, S., Silverstein, M., Jacobson, M., Fiksdahl-King, I. y Shlomo Angel, S. (1977). Un lenguaje de patrones: pueblos, edificios, construcción . Oxford University Press. ISBN 978-0-19-501919-3.
  • Alexander, C. (1979). El método atemporal de construir . EE. UU.: Oxford University Press. ISBN 978-0-19-502402-9.
  • Schuler, D. (2008). Voces liberadoras: Un lenguaje de patrones para la revolución de la comunicación . EE. UU.: MIT Press . ISBN 978-0-262-69366-0.
  • Leitner, Helmut (2015): Teoría de patrones: Introducción y perspectivas sobre la obra de Christopher Alexander . ISBN 1505637430.

Acerca de los patrones en general

  • Un lenguaje de patrones para la escritura de patrones por Gerard Meszaros y Jim Doble
  • Uso de patrones para el desarrollo de escenarios en proyectos aeroespaciales a gran escala.
  • Patrón de modelo de negocio Lean Startup
  • ¿Qué es un caso de uso de calidad? (del libro Patrones para casos de uso eficaces)

Colecciones de patrones en línea

  • patternlanguage.com , del Centro para la Estructura Ambiental.
  • Red Fusionada – Un Patrón Urbano Contemporáneo "una colección y síntesis de patrones vecinales"
  • hcipartterns.org – Patrones para la Interacción Persona-Computadora
  • El repositorio de patrones de Portland
  • Trabajo en grupo: Un lenguaje de patrones para dinamizar reuniones y otros encuentros – Un lenguaje de patrones para el proceso grupal
  • Los protocolos básicos : un conjunto de patrones de comunicación en equipo.
  • ¡Voces liberadoras! Proyecto de lenguaje de patrones : versiones cortas de patrones disponibles en árabe , chino y español.