300 likes | 660 Views
Entendiendo los Patrones de Dise ño de SOA. ¿Qué es un patrón de diseño?. La manera más simple para describir un patrón es que ofrece una solución probada a un problema común. Los patrones de diseño son útiles porque:
E N D
¿Qué es un patrón de diseño? • La manera más simple para describir un patrón es que ofrece una solución probada a un problema común.
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.
¿Qué es un patrón compuesto? • Un patrón compuesto es un patrón de grano grueso compuesta por un conjunto de patrones de grano más fino.
Diseño de lenguaje de patrones • 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.
un catálogo de patrones de diseño • 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.
Alexander’sPatternLanguage • Christopher Alexander • La secuencia del lenguaje de patrones necesita añadir valor. • Los patrones no necesitan ser normalizados.
Los Patrones de Lenguaje necesitan añadir valor. Los patrones no necesitan ser normalizados. Lenguaje de Patrones de Alexander
CapabilityComposition: asociado con Composite ServiceFacade: derivado de Facade LegacyWrapper: derivado de Adapter Non-AgnosticContext: asociado con Mediator DecoupledContract: asociado con Bridge Patrones orientados a objetos
ServiceLayers: asociado con Layers ServiceBroker: asociado con Broker ConcurrentContracts: asociado con Interface MetadataCentralization: asociado con Lookup Patrones de Arquitectura de Software
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. Patrones SOA
Pattern Figures • Usados en los siguientestipos de diagrama: • Pattern Application Secuence Figures: Cuando se documentanlenguajes de diseño de patrones, es util mostrar la secuencia sugerida de aplicación.
Pattern Figures • PatternRelationship 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 • CompoundPatternHierarchy 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.
Capitalizacion & Page NumberReferences • 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 NumberReferences: 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.
PatternProfiles • 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
PatternProfiles • 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.
Resumen • 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
Problema • 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.
Solución • 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.
Aplicación • Describe cómo el patrón puede ser aplicada. • En el se puede incluir: • Guías • Detalles de implementación • Proceso propuesto.
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 y Características • 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