37
DISEÑO DE SOFTWARE BASADO EN PATRONES Enterprise Application Integration (EAI) Darío Correal ([email protected] ) 1

DISEÑO DE SOFTWARE BASADO EN PATRONES...DISEÑO DE SOFTWARE BASADO EN PATRONES Enterprise Application Integration (EAI) Darío Correal ([email protected]) 1 2 EAI “EAI is

  • Upload
    others

  • View
    43

  • Download
    0

Embed Size (px)

Citation preview

Page 1: DISEÑO DE SOFTWARE BASADO EN PATRONES...DISEÑO DE SOFTWARE BASADO EN PATRONES Enterprise Application Integration (EAI) Darío Correal (dcorreal@uniandes.edu.co) 1 2 EAI “EAI is

DISEÑO DE SOFTWARE BASADO EN PATRONES

Enterprise Application Integration (EAI)

Darío Correal ([email protected])

1

Page 2: DISEÑO DE SOFTWARE BASADO EN PATRONES...DISEÑO DE SOFTWARE BASADO EN PATRONES Enterprise Application Integration (EAI) Darío Correal (dcorreal@uniandes.edu.co) 1 2 EAI “EAI is

2

EAI

“EAI is a collection of methods, tools, and services that work together to bring heterogenous applications into communication, as part of the traditional, distributedor extended enterprise.”

“Application Integration: EAI B2B BPM and SOA”, Bernard Manouvrier & Laurant Menard”

Page 3: DISEÑO DE SOFTWARE BASADO EN PATRONES...DISEÑO DE SOFTWARE BASADO EN PATRONES Enterprise Application Integration (EAI) Darío Correal (dcorreal@uniandes.edu.co) 1 2 EAI “EAI is

EAI• Niveles de integración

• Transporte y Conectividad

• Adaptación de información

• Automatización de procesos de negocio

• Cada nivel puede ser dividido en

• Modelado, Ejecución y Supervisión

3

Page 4: DISEÑO DE SOFTWARE BASADO EN PATRONES...DISEÑO DE SOFTWARE BASADO EN PATRONES Enterprise Application Integration (EAI) Darío Correal (dcorreal@uniandes.edu.co) 1 2 EAI “EAI is

EAI

4

Application Integration: EAI B2B BPM and SOA”, Bernard Manouvrier & Laurant Menard

Page 5: DISEÑO DE SOFTWARE BASADO EN PATRONES...DISEÑO DE SOFTWARE BASADO EN PATRONES Enterprise Application Integration (EAI) Darío Correal (dcorreal@uniandes.edu.co) 1 2 EAI “EAI is

EAI

• Transporte y Conectividad

• Captura información o eventos generados por aplicaciones

• Los entrega a las aplicaciones receptoras

• Entrega los datos o eventos a dichas aplicaciones

5

Page 6: DISEÑO DE SOFTWARE BASADO EN PATRONES...DISEÑO DE SOFTWARE BASADO EN PATRONES Enterprise Application Integration (EAI) Darío Correal (dcorreal@uniandes.edu.co) 1 2 EAI “EAI is

EAI• Transporte de Datos

• Para su entrega se requieren comunicaciones multi-canales

• Sistema manejador de bases de datos

• Transferencia de archivos

• Sistemas de mensajería

• Internet

6

Page 7: DISEÑO DE SOFTWARE BASADO EN PATRONES...DISEÑO DE SOFTWARE BASADO EN PATRONES Enterprise Application Integration (EAI) Darío Correal (dcorreal@uniandes.edu.co) 1 2 EAI “EAI is

EAI• Adaptación de Información

• Transformación de formato de datos

• Transformación sintáctica

• Transformación semántica

• Enrutamiento

• Almacenamiento

7

Page 8: DISEÑO DE SOFTWARE BASADO EN PATRONES...DISEÑO DE SOFTWARE BASADO EN PATRONES Enterprise Application Integration (EAI) Darío Correal (dcorreal@uniandes.edu.co) 1 2 EAI “EAI is

EAI• Automatización de Procesos

• Modelado de procesos y Ejecución de procesos

• Procesos de negocio como integradores

• Mediadores

• Intercambio

8

Page 9: DISEÑO DE SOFTWARE BASADO EN PATRONES...DISEÑO DE SOFTWARE BASADO EN PATRONES Enterprise Application Integration (EAI) Darío Correal (dcorreal@uniandes.edu.co) 1 2 EAI “EAI is

EAI• Arquitectura de Integración

• Tipo de comunicación

• Sincrónica / Asincrónica

• Tipo de control

• Centralizada

• Distribuida

9

Page 10: DISEÑO DE SOFTWARE BASADO EN PATRONES...DISEÑO DE SOFTWARE BASADO EN PATRONES Enterprise Application Integration (EAI) Darío Correal (dcorreal@uniandes.edu.co) 1 2 EAI “EAI is

EAI

10

Application Integration: EAI B2B BPM and SOA”, Bernard Manouvrier & Laurant Menard

Page 11: DISEÑO DE SOFTWARE BASADO EN PATRONES...DISEÑO DE SOFTWARE BASADO EN PATRONES Enterprise Application Integration (EAI) Darío Correal (dcorreal@uniandes.edu.co) 1 2 EAI “EAI is

EAI

11

Application Integration: EAI B2B BPM and SOA”, Bernard Manouvrier & Laurant Menard

Page 12: DISEÑO DE SOFTWARE BASADO EN PATRONES...DISEÑO DE SOFTWARE BASADO EN PATRONES Enterprise Application Integration (EAI) Darío Correal (dcorreal@uniandes.edu.co) 1 2 EAI “EAI is

EAI

12

Application Integration: EAI B2B BPM and SOA”, Bernard Manouvrier & Laurant Menard

Page 13: DISEÑO DE SOFTWARE BASADO EN PATRONES...DISEÑO DE SOFTWARE BASADO EN PATRONES Enterprise Application Integration (EAI) Darío Correal (dcorreal@uniandes.edu.co) 1 2 EAI “EAI is

EAI

• Tipos de Proyectos de Integración

• Plataforma de integración

• BPM

• SOA

13

Page 14: DISEÑO DE SOFTWARE BASADO EN PATRONES...DISEÑO DE SOFTWARE BASADO EN PATRONES Enterprise Application Integration (EAI) Darío Correal (dcorreal@uniandes.edu.co) 1 2 EAI “EAI is

EAI• Herramientas de Integración

• Brokers

• Servidores de Aplicación

• Enterprise Service Bus (ESB)

• Herramientas BPM

14

Page 15: DISEÑO DE SOFTWARE BASADO EN PATRONES...DISEÑO DE SOFTWARE BASADO EN PATRONES Enterprise Application Integration (EAI) Darío Correal (dcorreal@uniandes.edu.co) 1 2 EAI “EAI is

15

Patrones de Integración

“Interesting applications rarely live in isolation. Whether your sales application must interface with your inventory application, your procurement application must connect to an auction site, or your PDA’s PIM must synchronize with the corporate calendar server, it seems like any application can be made better by integrating it with other applications.”

“Enterprise Integration Patterns: Designing, Building, and Deploying Messaging Solutions”, Gregor Hohpe & Bobby Woolf

Page 16: DISEÑO DE SOFTWARE BASADO EN PATRONES...DISEÑO DE SOFTWARE BASADO EN PATRONES Enterprise Application Integration (EAI) Darío Correal (dcorreal@uniandes.edu.co) 1 2 EAI “EAI is

EAI• Portales de Información

• Usuarios tienen que ingresar a mas de un sistema para cumplir una función de negocio

• Manejo de zonas en el portal

• Integración a nivel de presentación

16

“Enterprise Integration Patterns: Designing, Building, and Deploying Messaging Solutions”, Gregor Hohpe & Bobby Woolf

Page 17: DISEÑO DE SOFTWARE BASADO EN PATRONES...DISEÑO DE SOFTWARE BASADO EN PATRONES Enterprise Application Integration (EAI) Darío Correal (dcorreal@uniandes.edu.co) 1 2 EAI “EAI is

EAI• Replicación de Datos

• Varios sistemas de información requieren usar los mismos datos

• Replicación a nivel de las bases de datos

• ETL

• MOM

17

“Enterprise Integration Patterns: Designing, Building, and Deploying Messaging Solutions”, Gregor Hohpe & Bobby Woolf

Page 18: DISEÑO DE SOFTWARE BASADO EN PATRONES...DISEÑO DE SOFTWARE BASADO EN PATRONES Enterprise Application Integration (EAI) Darío Correal (dcorreal@uniandes.edu.co) 1 2 EAI “EAI is

EAI

• Funciones de Negocio Replicadas

• Varios sistemas de información replican funcionalidad de negocio

• SOA

• RPC

18

“Enterprise Integration Patterns: Designing, Building, and Deploying Messaging Solutions”, Gregor Hohpe & Bobby Woolf

Page 19: DISEÑO DE SOFTWARE BASADO EN PATRONES...DISEÑO DE SOFTWARE BASADO EN PATRONES Enterprise Application Integration (EAI) Darío Correal (dcorreal@uniandes.edu.co) 1 2 EAI “EAI is

EAI

• Procesos de Negocio Distribuidos

• Una transacción de negocio requiere de varios sistemas de información

• BPM

• Orquestación / Coreografía

19

“Enterprise Integration Patterns: Designing, Building, and Deploying Messaging Solutions”, Gregor Hohpe & Bobby Woolf

Page 20: DISEÑO DE SOFTWARE BASADO EN PATRONES...DISEÑO DE SOFTWARE BASADO EN PATRONES Enterprise Application Integration (EAI) Darío Correal (dcorreal@uniandes.edu.co) 1 2 EAI “EAI is

EAI

• Integración Business to Business

• La funcionalidad de negocio puede implicar integración de sistemas en diferentes empresas

20

“Enterprise Integration Patterns: Designing, Building, and Deploying Messaging Solutions”, Gregor Hohpe & Bobby Woolf

Page 21: DISEÑO DE SOFTWARE BASADO EN PATRONES...DISEÑO DE SOFTWARE BASADO EN PATRONES Enterprise Application Integration (EAI) Darío Correal (dcorreal@uniandes.edu.co) 1 2 EAI “EAI is

EAI• Proyectos de Integración

• Portales de Información

• Replicación de Datos

• Funciones de negocio replicadas

• Procesos de negocio distribuidos

• Integración Business to Business

21

Page 22: DISEÑO DE SOFTWARE BASADO EN PATRONES...DISEÑO DE SOFTWARE BASADO EN PATRONES Enterprise Application Integration (EAI) Darío Correal (dcorreal@uniandes.edu.co) 1 2 EAI “EAI is

EAI• Alternativas de Integración

• File Transfer

• Shared Database

• Remote Procedure Invocation

• Messaging

22

Page 23: DISEÑO DE SOFTWARE BASADO EN PATRONES...DISEÑO DE SOFTWARE BASADO EN PATRONES Enterprise Application Integration (EAI) Darío Correal (dcorreal@uniandes.edu.co) 1 2 EAI “EAI is

EAI• Messaging

• Channel

• Message

• Routing

• Transformation

• EndPoint

23

Page 24: DISEÑO DE SOFTWARE BASADO EN PATRONES...DISEÑO DE SOFTWARE BASADO EN PATRONES Enterprise Application Integration (EAI) Darío Correal (dcorreal@uniandes.edu.co) 1 2 EAI “EAI is

EAI• Channel

• Point-to-Point Channels

• Publish-Subscribe Channels

• Datatype Channels

• Invalid Message Channel

• Message Bus

• Channel Adapters

24

Page 25: DISEÑO DE SOFTWARE BASADO EN PATRONES...DISEÑO DE SOFTWARE BASADO EN PATRONES Enterprise Application Integration (EAI) Darío Correal (dcorreal@uniandes.edu.co) 1 2 EAI “EAI is

EAI• Message

• Header - Body

• Command Message

• Document Message

• Event Message

• Message Expiration

• Canonical Data Model

25

Page 26: DISEÑO DE SOFTWARE BASADO EN PATRONES...DISEÑO DE SOFTWARE BASADO EN PATRONES Enterprise Application Integration (EAI) Darío Correal (dcorreal@uniandes.edu.co) 1 2 EAI “EAI is

EAI

• Routing

• Message Router

• Dynamic Router

• Message Filter

26

Page 27: DISEÑO DE SOFTWARE BASADO EN PATRONES...DISEÑO DE SOFTWARE BASADO EN PATRONES Enterprise Application Integration (EAI) Darío Correal (dcorreal@uniandes.edu.co) 1 2 EAI “EAI is

EAI

• Translation

• Canonical Data

• Channel Adapter

• Content Enricher

27

Page 28: DISEÑO DE SOFTWARE BASADO EN PATRONES...DISEÑO DE SOFTWARE BASADO EN PATRONES Enterprise Application Integration (EAI) Darío Correal (dcorreal@uniandes.edu.co) 1 2 EAI “EAI is

EAI• EndPoint

• Message Endpoint

• Message Gateway

• Messaging Mapper

• Service Activator

• Polling Consumer

• Event-Driven Consumer

28

Page 29: DISEÑO DE SOFTWARE BASADO EN PATRONES...DISEÑO DE SOFTWARE BASADO EN PATRONES Enterprise Application Integration (EAI) Darío Correal (dcorreal@uniandes.edu.co) 1 2 EAI “EAI is

EAI• Patrones de Integración

• Channel Adapter

• Message Channel

• Message Translator

• Canonical Data Model

• Publish-Subscribe Channel

• Aggregator

• Content-Based Router

• Splitter

• Content Enricher

• Composed Message Processor (Splitter, Aggregator, Router)

• Message Store

29

Page 30: DISEÑO DE SOFTWARE BASADO EN PATRONES...DISEÑO DE SOFTWARE BASADO EN PATRONES Enterprise Application Integration (EAI) Darío Correal (dcorreal@uniandes.edu.co) 1 2 EAI “EAI is

EAI

• Patrones de Integración

• Recipient List

• Dynamic Router

• Smart Proxy

30

Page 31: DISEÑO DE SOFTWARE BASADO EN PATRONES...DISEÑO DE SOFTWARE BASADO EN PATRONES Enterprise Application Integration (EAI) Darío Correal (dcorreal@uniandes.edu.co) 1 2 EAI “EAI is

EAI

31

“Enterprise Integration Patterns: Designing, Building, and Deploying Messaging Solutions”, Gregor Hohpe & Bobby Woolf

Page 32: DISEÑO DE SOFTWARE BASADO EN PATRONES...DISEÑO DE SOFTWARE BASADO EN PATRONES Enterprise Application Integration (EAI) Darío Correal (dcorreal@uniandes.edu.co) 1 2 EAI “EAI is

EAI

32

“Enterprise Integration Patterns: Designing, Building, and Deploying Messaging Solutions”, Gregor Hohpe & Bobby Woolf

Page 33: DISEÑO DE SOFTWARE BASADO EN PATRONES...DISEÑO DE SOFTWARE BASADO EN PATRONES Enterprise Application Integration (EAI) Darío Correal (dcorreal@uniandes.edu.co) 1 2 EAI “EAI is

EAI

33

“Enterprise Integration Patterns: Designing, Building, and Deploying Messaging Solutions”, Gregor Hohpe & Bobby Woolf

Page 34: DISEÑO DE SOFTWARE BASADO EN PATRONES...DISEÑO DE SOFTWARE BASADO EN PATRONES Enterprise Application Integration (EAI) Darío Correal (dcorreal@uniandes.edu.co) 1 2 EAI “EAI is

EAI

34

“Enterprise Integration Patterns: Designing, Building, and Deploying Messaging Solutions”, Gregor Hohpe & Bobby Woolf

Page 35: DISEÑO DE SOFTWARE BASADO EN PATRONES...DISEÑO DE SOFTWARE BASADO EN PATRONES Enterprise Application Integration (EAI) Darío Correal (dcorreal@uniandes.edu.co) 1 2 EAI “EAI is

EAI

35

“Enterprise Integration Patterns: Designing, Building, and Deploying Messaging Solutions”, Gregor Hohpe & Bobby Woolf

Page 36: DISEÑO DE SOFTWARE BASADO EN PATRONES...DISEÑO DE SOFTWARE BASADO EN PATRONES Enterprise Application Integration (EAI) Darío Correal (dcorreal@uniandes.edu.co) 1 2 EAI “EAI is

EAI

36

“Enterprise Integration Patterns: Designing, Building, and Deploying Messaging Solutions”, Gregor Hohpe & Bobby Woolf

Page 37: DISEÑO DE SOFTWARE BASADO EN PATRONES...DISEÑO DE SOFTWARE BASADO EN PATRONES Enterprise Application Integration (EAI) Darío Correal (dcorreal@uniandes.edu.co) 1 2 EAI “EAI is

EAI

37

“Enterprise Integration Patterns: Designing, Building, and Deploying Messaging Solutions”, Gregor Hohpe & Bobby Woolf