Entendiendo los Patrones de Dise ño de SOA

29
Entendiendo los Patrones de Diseño de SOA

description

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: - PowerPoint PPT Presentation

Transcript of Entendiendo los Patrones de Dise ño de SOA

Page 1: Entendiendo  los  Patrones  de  Dise ño  de SOA

Entendiendo los Patrones de Diseño

de SOA

Page 2: 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?

Page 3: Entendiendo  los  Patrones  de  Dise ño  de SOA

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.

Page 4: Entendiendo  los  Patrones  de  Dise ño  de SOA

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?

Page 5: Entendiendo  los  Patrones  de  Dise ño  de SOA

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

Page 6: Entendiendo  los  Patrones  de  Dise ño  de SOA

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

Page 7: Entendiendo  los  Patrones  de  Dise ño  de SOA

Influencias históricas

Page 8: Entendiendo  los  Patrones  de  Dise ño  de SOA

Christopher Alexander La secuencia del lenguaje de patrones

necesita añadir valor. Los patrones no necesitan ser normalizados.

Alexander’s Pattern Language

Page 9: Entendiendo  los  Patrones  de  Dise ño  de SOA

Lenguaje de Patrones de Alexander

Los Patrones de Lenguaje necesitan añadir valor.

Los patrones no necesitan ser normalizados.

Page 10: Entendiendo  los  Patrones  de  Dise ño  de SOA

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

Page 11: Entendiendo  los  Patrones  de  Dise ño  de SOA

Patrones de Arquitectura de Software

Service Layers: asociado con LayersService Broker: asociado con BrokerConcurrent Contracts: asociado con Interface

Metadata Centralization: asociado con Lookup

Page 12: Entendiendo  los  Patrones  de  Dise ño  de SOA

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.

Page 13: Entendiendo  los  Patrones  de  Dise ño  de SOA

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.

Page 14: Entendiendo  los  Patrones  de  Dise ño  de SOA

Pattern Figures

Page 15: Entendiendo  los  Patrones  de  Dise ño  de SOA

◦ 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

Page 16: Entendiendo  los  Patrones  de  Dise ño  de SOA
Page 17: Entendiendo  los  Patrones  de  Dise ño  de SOA

◦ 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

Page 18: Entendiendo  los  Patrones  de  Dise ño  de SOA

Pattern Figures

Page 19: Entendiendo  los  Patrones  de  Dise ño  de SOA

Pattern Figures

Page 20: Entendiendo  los  Patrones  de  Dise ño  de SOA

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

Page 21: Entendiendo  los  Patrones  de  Dise ño  de SOA

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

Page 22: Entendiendo  los  Patrones  de  Dise ño  de SOA

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

Page 23: Entendiendo  los  Patrones  de  Dise ño  de SOA

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

Page 24: Entendiendo  los  Patrones  de  Dise ño  de SOA

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

Page 25: Entendiendo  los  Patrones  de  Dise ño  de SOA

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

Page 26: Entendiendo  los  Patrones  de  Dise ño  de SOA

Describe cómo el patrón puede ser aplicada.

En el se puede incluir:◦ Guías◦ Detalles de implementación◦ Proceso propuesto.

Aplicación

Page 27: Entendiendo  los  Patrones  de  Dise ño  de SOA

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

Page 28: Entendiendo  los  Patrones  de  Dise ño  de SOA

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

Page 29: Entendiendo  los  Patrones  de  Dise ño  de SOA

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