la manera más simple para describir un patrón es que ofrece una solución probada a un problema...
Post on 18-Apr-2015
15 Views
Preview:
TRANSCRIPT
Entendiendo los Patrones de Diseño
de SOA
La manera más simple para describir un patrón es que ofrece una solución probada a un problema común.
¿Qué es un patrón de diseño?
Los patrones de diseño son útiles porque:◦ representar soluciones probadas en campo, a los
problemas comunes de diseño◦ organizar la inteligencia de diseño en un estándar◦ por lo general repetible por la mayoría de los
profesionales de TI.◦ se puede utilizar para garantizar la coherencia en
cómo los sistemas se diseñan y construyen.◦ puede ser la base de normas de diseño.◦ suelen ser flexibles y opcionales.◦ Algunas veces se pueden aplicar antes y después
de la aplicación de un sistema.
Un patrón compuesto es un patrón de grano grueso compuesta por un conjunto de patrones de grano más fino.
¿Qué es un patrón compuesto?
Un lenguaje de patrones es un conjunto de patrones relacionados que actúan como bloques de construcción.
Algunos lenguajes de patrones son de composición abierta, permitiendo que los patrones que se combinan en una variedad de secuencias creativa,
Otros son más estructurados presentan una secuencia de aplicación de patrones.
Diseño de lenguaje de patrones
Un catálogo de patrones de diseño es una colección documentada de los patrones de diseño relacionados.
Por lo tanto, este libro también se conoce como catálogo de patrones de diseño asociados a SOA y la orientación a servicios.
un catálogo de patrones de diseño
Influencias históricas
Christopher Alexander La secuencia del lenguaje de patrones
necesita añadir valor. Los patrones no necesitan ser normalizados.
Alexander’s Pattern Language
Lenguaje de Patrones de Alexander
Los Patrones de Lenguaje necesitan añadir valor.
Los patrones no necesitan ser normalizados.
Patrones orientados a objetos
Capability Composition: asociado con CompositeService Facade: derivado de FacadeLegacy Wrapper: derivado de AdapterNon-Agnostic Context: asociado con MediatorDecoupled Contract: asociado con Bridge
Patrones de Arquitectura de Software
Service Layers: asociado con LayersService Broker: asociado con BrokerConcurrent Contracts: asociado con Interface
Metadata Centralization: asociado con Lookup
Patrones SOA
Aprender acerca diseños y técnicas propuestas por patrones SOA, pueden proveer mecanismos requeridos activar la orientación a servicios y esclarecer como SOA representa un modelo arquitectural distinto.
Pattern Figures Usados en los
siguientes tipos de diagrama:◦ Pattern Application
Secuence Figures: Cuando se documentan lenguajes de diseño de patrones, es util mostrar la secuencia sugerida de aplicación.
Pattern Figures
◦ Pattern Relationship Figures: Existen muchas relaciones entre diagramas, se provee un diagrama de relación por cada patrón de diseño, la convención es la siguiente: Cada diagrama de relación explora las relaciones de
un patrón, por lo tanto, el patrón es resaltado en rojo según la notación previamente establecida.
Las relaciones se documentan de manera unidireccional: Cuando el patrón afecta o se relaciona con otros
patrones: línea roja apuntando al otro patrón. Cuando los otros patrones afectan al patrón actual, línea
verde hacia el patrón actual.
Pattern Figures
◦ Compound Pattern Hierarchy Figures: Los patrones compuestos están constituidos por combinaciones de patrones de diseño, se requiere una representación jerárquica en su ilustración, donde el compuesto se muestra en el tope y los patrones que lo componen se muestran debajo de él.
Pattern Figures
Pattern Figures
Pattern Figures
Capitalizacion: Todos los nombre de los patrones de diseño están en mayúscula (inicial), los nombres de los grupos de patrones relacionados están en mayúscula en las figuras pero no en el texto cuando son referenciados.
Page Number References: Cada patrón es seguido por su número de página en paréntesis. Esto brinda referencia rápida y casi se ha vuelto una convención. No se muestra el número cuando el patrón se referencia cuando es referenciado de su sección de perfil.
Capitalizacion & Page Number References
Cada patrón es definido usando el mismo perfil y estructura:◦ Requerimiento◦ Icono◦ Resumen◦ Problema◦ Solución ◦ Aplicación◦ Impactos◦ Relaciones◦ Ejemplo de caso de estudio
Pattern Profiles
Requerimiento:◦ Un enunciado conciso que presenta el
requerimiento fundamental del patrón a manera de pregunta. Como un servicio puede ser diseñado para minimizar
las oportunidades de deconstrucción lógica de capacidades.
◦ Ícono: Cada descripción de patrón es acompañada por un ícono que actúa de identificador visual.
Pattern Profiles
Tabla compuesta por declaraciones que proporcionan una sinopsis concisa de la estructura.
Las partes son : ◦ Problema◦ Solución◦ Aplicación◦ Impacto
Proporciona las referencias :◦ Principios de diseño sobre orientación a servicios -
Principios◦ Tipos de arquitectura orientadas a servicios -
Arquitectura
Resumen
Lo que causo un problema◦ Circunstancias comunes que pueden conducir al
problema
Los efectos del problema
Usualmente una figura que ilustra el estado del problema.
Modelo proporciona una solución.
Problema
La solución de diseño propuesto por el patrón para resolver el problema y cumplir con el requisito.
Breve declaración
Diagrama que se comunica con el estado de solución final.
Solución
Describe cómo el patrón puede ser aplicada.
En el se puede incluir:◦ Guías◦ Detalles de implementación◦ Proceso propuesto.
Aplicación
Impacto:◦ La mayoría de los patrones vienen con ventajas y
desventajas. Costos y requisitos asociados con la aplicación de un
patrón. Relaciones:
◦ Patrones de diseño unen aspectos de diseño y arquitectura.
◦ Gráficos de relación de patrones, relaciones comunes de patrones: Apoyo Dependencia
Caso de Estudio
Patrones Canónicos:◦ Propone introducir un diseño estándar ◦ Diseño consistente a través de las diferentes
partes de un inventario o una solución. Canónico Protocolo Esquema Canónico Expresión Canónico Recursos Canónicos Versiones Canónico
Patrones y Características
Patrones de centralización:◦ La centralización significa limitar las opciones de algo a
uno. ◦ Establece la coherencia y fomenta:
La estandarización La reutilización La inter conectividad
◦ Centralización Lógica ◦ La centralización de los metadatos◦ Proceso de centralización◦ Reglas Centralización◦ La centralización de esquema◦ La centralización del contrato◦ La centralización política
Patrones y Características
top related