implemente un modelo soa con progress david millman arquitecto principal

40
Implemente un Modelo SOA con Progress David Millman Arquitecto Principal

Upload: placido-verdin

Post on 16-Feb-2015

2 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Implemente un Modelo SOA con Progress David Millman Arquitecto Principal

Implemente un Modelo SOA con Progress

David MillmanArquitecto Principal

Page 2: Implemente un Modelo SOA con Progress David Millman Arquitecto Principal

© 2008 Progress Software Corporation2

Agenda

Los Componentes Relevantes del Modelo El Problema Resolviendo el Problema Resumen

Implementando el Modelo de Referencia SOA

Page 3: Implemente un Modelo SOA con Progress David Millman Arquitecto Principal

© 2008 Progress Software Corporation3

El Modelo de Referencia

Visib

ility & C

on

trol

Infrastru

cture S

ervicesConnection & Data Services

Business Services

Composition/Mediation Services

Presentation/Consumer

Page 4: Implemente un Modelo SOA con Progress David Millman Arquitecto Principal

© 2008 Progress Software Corporation4

Perspectiva del Desarrollador ESB

En lo que nos vamos a concentrar

Connection & Data Services

Business Services

Composition/Mediation Services

Page 5: Implemente un Modelo SOA con Progress David Millman Arquitecto Principal

© 2008 Progress Software Corporation5

Agenda

Los Componentes Relevantes del Modelo El Problema Resolviendo el Problema Resumen

Implementing the SOA Reference Model

Page 6: Implemente un Modelo SOA con Progress David Millman Arquitecto Principal

© 2008 Progress Software Corporation6

Problema muestra (Del Recetario)

Un Telco, Muchos Clientes Distintos

CSRCSR

El Cliente es base instalada en la línea de negocios • No hay vista consolidada de un sólo cliente

CellCell InternetInternet HomeHome TVTV

ESB

Page 7: Implemente un Modelo SOA con Progress David Millman Arquitecto Principal

© 2008 Progress Software Corporation7

CellCell InternetInternet HomeHome TVTV

Connect

Utilizando la Arquitecrua de Referencia para Definir la Estructura de la Solución

CSRCSR

CSR: View/Update Customer

Entities Customer: Accounts: Account

Connect Connect Connect

Page 8: Implemente un Modelo SOA con Progress David Millman Arquitecto Principal

© 2008 Progress Software Corporation8

Agenda

Los Componentes Relevantes del Modelo El Problema Resolviendo el Problema Resumen

Implementing the SOA Reference Model

Page 9: Implemente un Modelo SOA con Progress David Millman Arquitecto Principal

© 2008 Progress Software Corporation9

Meta de la Implementación

Rompiendo el problema en unidades manejables• Permitir que cada unidad sea extendida y reutilizada

en contextos múltiples

• Acotado en tiempo para permitir los entregables conocidos y marcos de tiempo

• Como resultado: dimensionamiento consistente y asignación de tareas del proyecto SOA

Dando Soporte para los enfoques de arriba a abajo y de abajo a arriba

Cada capa define un conjunto de entregables conocidos

Patrón Repetitiva para Desarrollo y Re-uso

Page 10: Implemente un Modelo SOA con Progress David Millman Arquitecto Principal

© 2008 Progress Software Corporation10

Agenda

Los Componentes Relevantes del Modelo El Problema Resolviendo el Problema

• Servicios de Negocios

• Servicios de Composition/Mediation

• Servicios de Conexión Resumen

Implementando el Modelo de Referencia SOA

Page 11: Implemente un Modelo SOA con Progress David Millman Arquitecto Principal

© 2008 Progress Software Corporation11

¿Qué es un servicio de Negocios?

Diagramas de caso

de uso• Usados para definir

operaciones de un

actor o conjunto de

actores específicos

Componentes del Nivel de Servicios

Page 12: Implemente un Modelo SOA con Progress David Millman Arquitecto Principal

© 2008 Progress Software Corporation12

Servicios de Negocios, ¿Quién se interesa?

Entities Customer: Accounts: Account

CSR: View/Update Customer

CellCell InternetInternet HomeHome TVTV

Connect Connect Connect Connect

Business ProcessAnalyst/

Developer

Business ProcessAnalyst/

Developer

Page 13: Implemente un Modelo SOA con Progress David Millman Arquitecto Principal

© 2008 Progress Software Corporation13

Analista/Desarrollador de Negocios

Visión de Negocios del Mundo• Actores y casos de uso

• Se entienden Solicitudes/Respuestas de alto nivel

• Pueden entenderse tecnologías de presentación Se entienden conceptos del ESB

• Se implementan procesos ESB para prototipos– E,g servicios de prototipo/transformación para desarrollo

de arriba a abajo

Mínimo entendimiento del panorama de TI

Page 14: Implemente un Modelo SOA con Progress David Millman Arquitecto Principal

© 2008 Progress Software Corporation14

Implementación de Casos de Usode la Arquitectura de Referencia

Proyecto basado en Actor• Provee una vista lógica

de toda la lógica de Actor Cada uso se vuelve:

Proceso ESB nombrado como:• Actor.CSR.ViewCustomerProfile• Actor.CSR. ViewAllCustomersAccounts• Actor.CSR.UpdateAnAccount

Implementación de Web Service puede llamar al proceso lógico • Actor.CSR.ViewCustomerProfile.WS

Inicialmente implementado utilizando el servicio de Prototipo y luego reemplazado con una implementación real (invocación al proceso de Mediación)

Page 15: Implemente un Modelo SOA con Progress David Millman Arquitecto Principal

© 2008 Progress Software Corporation15

Entregable del Proceso del ESB: Fase 1

Servicio Proototipo, Servicio de

Transformación usado para generar una respuesta default

Servicio Proototipo, Servicio de

Transformación usado para generar una respuesta default

Page 16: Implemente un Modelo SOA con Progress David Millman Arquitecto Principal

© 2008 Progress Software Corporation16

Entregable del Procesos ESB : Cuándo se Define la Capa de Mediación

Implementada como una Transformación Dinámica para un

objetivo que usa DXSI

Implementada como una Transformación Dinámica para un

objetivo que usa DXSI

Impementado como una Transformación Dinámica definida

para un objetivo que usa DXSI

Impementado como una Transformación Dinámica definida

para un objetivo que usa DXSI

Implementada como una llamada de Servicio(s) de

Mediación requeridos para la operación

Implementada como una llamada de Servicio(s) de

Mediación requeridos para la operación

Page 17: Implemente un Modelo SOA con Progress David Millman Arquitecto Principal

© 2008 Progress Software Corporation17

Visib

ility & C

on

trol

Infrastru

cture S

ervicesConnection & Data Services

Business Services

Composition/Mediation Services

Presentation/Consumer

¿Qué hay de la Presentación?

La capa de presentaciones es consumidor/cliente de un Servicio de Negocios

Consumidores múltiples pueden acceder a los servicios de Negocios e.g. Web-Service/ Portal/JMS

Page 18: Implemente un Modelo SOA con Progress David Millman Arquitecto Principal

© 2008 Progress Software Corporation18

Comprende como serán los casos de uso del Consumidor en el mundo real• Cómo exponer los servicios como un Web

Service a un portal etc.

CSR View/Update Customer

Web-Service

Posicionando Servicios de Negocios para el Consumidor

Portal

Page 19: Implemente un Modelo SOA con Progress David Millman Arquitecto Principal

© 2008 Progress Software Corporation19

Invocación de Servicios Web

Directorio WS contiene configuración de Servicio Web

Configuration (incluyendo definiciones de wrap)

El proceso se llama como el caso de uso pero tiene el

sufijo.WS para denotar que es un Servicio Web

Directorio WS contiene configuración de Servicio Web

Configuration (incluyendo definiciones de wrap)

El proceso se llama como el caso de uso pero tiene el

sufijo.WS para denotar que es un Servicio Web

Implementación de Servicio Web con el unwrap y wrap adecuados que llaman a un

Proceso ESB

Implementación de Servicio Web con el unwrap y wrap adecuados que llaman a un

Proceso ESB

Page 20: Implemente un Modelo SOA con Progress David Millman Arquitecto Principal

© 2008 Progress Software Corporation20

Proyecto basado en Portal o Presentación

Presentación basada en proyecto tecnológico

Esto define la forma en que el ESB interactúa con el portal o similar, mapea peticiones a los formatos requeridos por

niveles inferiores.

Presentación basada en proyecto tecnológico

Esto define la forma en que el ESB interactúa con el portal o similar, mapea peticiones a los formatos requeridos por

niveles inferiores.

Llama a procesos de Negocios con las

transformaciones apropiadas etc. en ambos lados de la

invocación.

Llama a procesos de Negocios con las

transformaciones apropiadas etc. en ambos lados de la

invocación.

Page 21: Implemente un Modelo SOA con Progress David Millman Arquitecto Principal

© 2008 Progress Software Corporation21

Agenda

Los Componentes Relevantes del Modelo El Problema Resolviendo el Problema

• Servicios de Negocios

• Servicios de Composición /Mediation

• Servicios de Conexión Resumen

Implementando el Modelo de Referencia SOA

Page 22: Implemente un Modelo SOA con Progress David Millman Arquitecto Principal

© 2008 Progress Software Corporation22

¿Quién debe Implementar la Solución?

Entities Customer: Accounts: Account

CSR: View/Update Customer

CellCell InternetInternet HomeHome TVTV

Connect Connect Connect ConnectSOA

FoundationServices Leader/

ApplicationService

Implementer

SOAFoundationServices Leader/

ApplicationService

Implementer

Page 23: Implemente un Modelo SOA con Progress David Millman Arquitecto Principal

© 2008 Progress Software Corporation23

Architect/Desarrolladores SOA

Entiende cuántos servicios trabajan juntos y la tecnología involucrada• Implementación

– Geografía/Red• Balanceo entre Optimización y Diseño

– Código – ESB Processes – BPEL• Interfaces a implementar• (Negocios/Diseño and Conexión)• Problemas de usar múltiples

Tecnologías/Fuentes de Datos – e.g.Master Name Management

Page 24: Implemente un Modelo SOA con Progress David Millman Arquitecto Principal

© 2008 Progress Software Corporation24

Arquitecutra de Referencia a UML

Ofrece un conjunto único de servicios que pueden ser reusados

La mediación en escencia se trata de componentes basados al rededor de entidades virtuales y patrones de integración

Componentes del Nivel de Mediación

cd Class Model

Customer

+ viewAllAccounts() : void

Account

+ getAccountInformation() : void

CellAccount InternetAccount HomePhoneAccount TVAccount

Accounts

+ getAllAccountInformation() : void

Page 25: Implemente un Modelo SOA con Progress David Millman Arquitecto Principal

© 2008 Progress Software Corporation25

Implementación de la Mediación

Proyecto basado en entidad• Seis proyectos para el diagrama anterior

Cada entidad y operación se vuelven un proceso ESB:• Entity.Customer.viewAllAccounts• Entity.Accounts.getAllAccountInformation• Entity.CellAccount.getAccountInformation• Entity.InternetAccount.getAccountInformation• Entity.HomePhoneAccount.getAccountInformation• Entity.TVAccount.getAccountInformation

Page 26: Implemente un Modelo SOA con Progress David Millman Arquitecto Principal

© 2008 Progress Software Corporation26

Implementación de la Mediación

Entidad única e.g. Cuenta célula puede proveer• Agregación de múltiples sistemas de back end

• Expectativa de trabajar usando el Modelo de Datos Canónicos

Recolección de Entidad e.g. Todas las Cuentas• Implementar los siguientes patrones

– Splitter/Router– Aggregator e.g. getAllAccountInformation– Master Name Management?

El Modelo Canónico reforzado en la frontera

Page 27: Implemente un Modelo SOA con Progress David Millman Arquitecto Principal

© 2008 Progress Software Corporation27

Entity.Accounts.getAllAccountInformation

Versión 1: Implementación de Arriba a Abajo

Genera la Respuesta adecuada a la petición (No se

llama a otros servicios)

Genera la Respuesta adecuada a la petición (No se

llama a otros servicios)

Page 28: Implemente un Modelo SOA con Progress David Millman Arquitecto Principal

© 2008 Progress Software Corporation28

Entity.Accounts.getAllAccountInformation

Versión 2 : Implementación de calling apropiado para Operaciones de Entidad

Servicio “split-join” usado para llamar las operaciones en

objetos de cuentas individuales

Servicio “split-join” usado para llamar las operaciones en

objetos de cuentas individuales

Page 29: Implemente un Modelo SOA con Progress David Millman Arquitecto Principal

© 2008 Progress Software Corporation29

Agenda

Los Componentes Relevantes del Modelo El Problema Resolviendo el Problema

• Servicios de Negocios

• Servicios de Composición/Mediación

• Servicios de Conexión Resumen

Implementando el Modelo de Referencia SOA

Page 30: Implemente un Modelo SOA con Progress David Millman Arquitecto Principal

© 2008 Progress Software Corporation30

Quién debe implementar la Solución

Entities Customer: Accounts: Account

CSR: View/Update Customer

CellCell InternetInternet HomeHome TVTV

Connect Connect Connect Connect

Connect-Integration

Experte.g.

DBA,SAP Develop

Connect-Integration

Experte.g.

DBA,SAP Develop

Page 31: Implemente un Modelo SOA con Progress David Millman Arquitecto Principal

© 2008 Progress Software Corporation31

Conexión del Desarrollador

Entendimiento de alto nivel de tecnología back-end • E.g. DBA

Entiende los componentes requeridos del ESB• i.e Procesos ESB, Servicios de Conexión• Sin distribución, Federación e Implementación

Uno es requerido típicamente para cada tecnología/implementación• i.e. 4 requeridos para la filmina anterior

Page 32: Implemente un Modelo SOA con Progress David Millman Arquitecto Principal

© 2008 Progress Software Corporation32

Conexión Física con el UML

Ofrece una conexión virtualizada del ESB a la tecnología de implementación• Permite a los sistemas del back integrase

transparentemente en el nivel de Mediación

Componentes del Nivel de Conexión

Page 33: Implemente un Modelo SOA con Progress David Millman Arquitecto Principal

© 2008 Progress Software Corporation33

Proyecto de Conexión Física

Todas las instancias de conexiones apropiadas e.g. Definición de Servicios de

Conexión definidas en el directorio, completan el proyecto

Todas las instancias de conexiones apropiadas e.g. Definición de Servicios de

Conexión definidas en el directorio, completan el proyecto

Procesos de alto nivel usados para llamar una o más versiones para permitir

esquemas de bases de datos concurrentes etc.

Procesos de alto nivel usados para llamar una o más versiones para permitir

esquemas de bases de datos concurrentes etc.

Versiones defiidas bajo el método de directorio

principal

Versiones defiidas bajo el método de directorio

principal

Page 34: Implemente un Modelo SOA con Progress David Millman Arquitecto Principal

© 2008 Progress Software Corporation34

Implementación de la Conexión

Proyecto único por tecnología backend Puede también implementar una conexión lógica Cada operación de clase principal se convierte en un

Proceso ESB e.g.• Conection.BD.CellPhoneAccountsDB.getAccountData

ForMonth Ofrece la habilidad de migrar a diferentes versiones

de la tecnología de implementación Puede proveer interfaz gráfica a los componentes

requeridos

Page 35: Implemente un Modelo SOA con Progress David Millman Arquitecto Principal

© 2008 Progress Software Corporation35

Agenda

Componentes Relevantes de la Arquitectura Resolviendo el problema, personal requerido Resolviendo el Problema, el enfoque Resumen

Implementando el Modelo de Refernecia SOA

Page 36: Implemente un Modelo SOA con Progress David Millman Arquitecto Principal

© 2008 Progress Software Corporation36

Qué hemos aprendido

La Arquitectura de Referencia Soporta:• Arquitectura de Referencia para UML

– Ofrece mapeo común de la UML a la Arquitectura de Referncia

– Componentes definidos– Cada nivel define un conjunto de componentes

necesarios • De Arriba a Abajo y de Abajo hacia Arriba

– Implementación concurrente es posible• Nombres definidos para ofrecer orden en las

herramientas y herramientas de búsqueda

Page 37: Implemente un Modelo SOA con Progress David Millman Arquitecto Principal

© 2008 Progress Software Corporation37

Conclusión

La Arquitectura de Referencia aporta• Dimensionamiento del personal necesario

– Requerimientos de entrenamiento y conocimiento

• Estructura formal para entregables– Ofrece dimensionamiento y gestión

• Soluciones Replicables ESB aporta

• ESB ofrece la capacidad de conectarse económicamente

• e.g. Invocación de proceso y mensajería del intra contenedor que hace posible definir una solución basada en componentes y funcional.

Page 38: Implemente un Modelo SOA con Progress David Millman Arquitecto Principal

© 2008 Progress Software Corporation38

Preguntas?

Page 39: Implemente un Modelo SOA con Progress David Millman Arquitecto Principal

© 2008 Progress Software Corporation39

Gracias

Page 40: Implemente un Modelo SOA con Progress David Millman Arquitecto Principal

© 2008 Progress Software Corporation40