DISEÑO DE SOFTWARE BASADO EN PATRONES -...

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

Transcript of DISEÑO DE SOFTWARE BASADO EN PATRONES -...

Page 1: DISEÑO DE SOFTWARE BASADO EN PATRONES - …arquitecturaibm.com/wp-content/uploads/2015/03/isis4707-eai.pdf · DISEÑO DE SOFTWARE BASADO EN PATRONES Enterprise Application Integration

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 - …arquitecturaibm.com/wp-content/uploads/2015/03/isis4707-eai.pdf · DISEÑO DE SOFTWARE BASADO EN PATRONES Enterprise Application Integration

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 - …arquitecturaibm.com/wp-content/uploads/2015/03/isis4707-eai.pdf · DISEÑO DE SOFTWARE BASADO EN PATRONES Enterprise Application Integration

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 - …arquitecturaibm.com/wp-content/uploads/2015/03/isis4707-eai.pdf · DISEÑO DE SOFTWARE BASADO EN PATRONES Enterprise Application Integration

EAI

4

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

Page 5: DISEÑO DE SOFTWARE BASADO EN PATRONES - …arquitecturaibm.com/wp-content/uploads/2015/03/isis4707-eai.pdf · DISEÑO DE SOFTWARE BASADO EN PATRONES Enterprise Application Integration

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 - …arquitecturaibm.com/wp-content/uploads/2015/03/isis4707-eai.pdf · DISEÑO DE SOFTWARE BASADO EN PATRONES Enterprise Application Integration

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 - …arquitecturaibm.com/wp-content/uploads/2015/03/isis4707-eai.pdf · DISEÑO DE SOFTWARE BASADO EN PATRONES Enterprise Application Integration

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 - …arquitecturaibm.com/wp-content/uploads/2015/03/isis4707-eai.pdf · DISEÑO DE SOFTWARE BASADO EN PATRONES Enterprise Application Integration

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 - …arquitecturaibm.com/wp-content/uploads/2015/03/isis4707-eai.pdf · DISEÑO DE SOFTWARE BASADO EN PATRONES Enterprise Application Integration

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 - …arquitecturaibm.com/wp-content/uploads/2015/03/isis4707-eai.pdf · DISEÑO DE SOFTWARE BASADO EN PATRONES Enterprise Application Integration

EAI

10

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

Page 11: DISEÑO DE SOFTWARE BASADO EN PATRONES - …arquitecturaibm.com/wp-content/uploads/2015/03/isis4707-eai.pdf · DISEÑO DE SOFTWARE BASADO EN PATRONES Enterprise Application Integration

EAI

11

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

Page 12: DISEÑO DE SOFTWARE BASADO EN PATRONES - …arquitecturaibm.com/wp-content/uploads/2015/03/isis4707-eai.pdf · DISEÑO DE SOFTWARE BASADO EN PATRONES Enterprise Application Integration

EAI

12

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

Page 13: DISEÑO DE SOFTWARE BASADO EN PATRONES - …arquitecturaibm.com/wp-content/uploads/2015/03/isis4707-eai.pdf · DISEÑO DE SOFTWARE BASADO EN PATRONES Enterprise Application Integration

EAI

• Tipos de Proyectos de Integración

• Plataforma de integración

• BPM

• SOA

13

Page 14: DISEÑO DE SOFTWARE BASADO EN PATRONES - …arquitecturaibm.com/wp-content/uploads/2015/03/isis4707-eai.pdf · DISEÑO DE SOFTWARE BASADO EN PATRONES Enterprise Application Integration

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 - …arquitecturaibm.com/wp-content/uploads/2015/03/isis4707-eai.pdf · DISEÑO DE SOFTWARE BASADO EN PATRONES Enterprise Application Integration

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 - …arquitecturaibm.com/wp-content/uploads/2015/03/isis4707-eai.pdf · DISEÑO DE SOFTWARE BASADO EN PATRONES Enterprise Application Integration

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 - …arquitecturaibm.com/wp-content/uploads/2015/03/isis4707-eai.pdf · DISEÑO DE SOFTWARE BASADO EN PATRONES Enterprise Application Integration

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 - …arquitecturaibm.com/wp-content/uploads/2015/03/isis4707-eai.pdf · DISEÑO DE SOFTWARE BASADO EN PATRONES Enterprise Application Integration

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 - …arquitecturaibm.com/wp-content/uploads/2015/03/isis4707-eai.pdf · DISEÑO DE SOFTWARE BASADO EN PATRONES Enterprise Application Integration

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 - …arquitecturaibm.com/wp-content/uploads/2015/03/isis4707-eai.pdf · DISEÑO DE SOFTWARE BASADO EN PATRONES Enterprise Application Integration

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 - …arquitecturaibm.com/wp-content/uploads/2015/03/isis4707-eai.pdf · DISEÑO DE SOFTWARE BASADO EN PATRONES Enterprise Application Integration

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 - …arquitecturaibm.com/wp-content/uploads/2015/03/isis4707-eai.pdf · DISEÑO DE SOFTWARE BASADO EN PATRONES Enterprise Application Integration

EAI• Alternativas de Integración

• File Transfer

• Shared Database

• Remote Procedure Invocation

• Messaging

22

Page 23: DISEÑO DE SOFTWARE BASADO EN PATRONES - …arquitecturaibm.com/wp-content/uploads/2015/03/isis4707-eai.pdf · DISEÑO DE SOFTWARE BASADO EN PATRONES Enterprise Application Integration

EAI• Messaging

• Channel

• Message

• Routing

• Transformation

• EndPoint

23

Page 24: DISEÑO DE SOFTWARE BASADO EN PATRONES - …arquitecturaibm.com/wp-content/uploads/2015/03/isis4707-eai.pdf · DISEÑO DE SOFTWARE BASADO EN PATRONES Enterprise Application Integration

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 - …arquitecturaibm.com/wp-content/uploads/2015/03/isis4707-eai.pdf · DISEÑO DE SOFTWARE BASADO EN PATRONES Enterprise Application Integration

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 - …arquitecturaibm.com/wp-content/uploads/2015/03/isis4707-eai.pdf · DISEÑO DE SOFTWARE BASADO EN PATRONES Enterprise Application Integration

EAI

• Routing

• Message Router

• Dynamic Router

• Message Filter

26

Page 27: DISEÑO DE SOFTWARE BASADO EN PATRONES - …arquitecturaibm.com/wp-content/uploads/2015/03/isis4707-eai.pdf · DISEÑO DE SOFTWARE BASADO EN PATRONES Enterprise Application Integration

EAI

• Translation

• Canonical Data

• Channel Adapter

• Content Enricher

27

Page 28: DISEÑO DE SOFTWARE BASADO EN PATRONES - …arquitecturaibm.com/wp-content/uploads/2015/03/isis4707-eai.pdf · DISEÑO DE SOFTWARE BASADO EN PATRONES Enterprise Application Integration

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 - …arquitecturaibm.com/wp-content/uploads/2015/03/isis4707-eai.pdf · DISEÑO DE SOFTWARE BASADO EN PATRONES Enterprise Application Integration

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 - …arquitecturaibm.com/wp-content/uploads/2015/03/isis4707-eai.pdf · DISEÑO DE SOFTWARE BASADO EN PATRONES Enterprise Application Integration

EAI

• Patrones de Integración

• Recipient List

• Dynamic Router

• Smart Proxy

30

Page 31: DISEÑO DE SOFTWARE BASADO EN PATRONES - …arquitecturaibm.com/wp-content/uploads/2015/03/isis4707-eai.pdf · DISEÑO DE SOFTWARE BASADO EN PATRONES Enterprise Application Integration

EAI

31

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

Page 32: DISEÑO DE SOFTWARE BASADO EN PATRONES - …arquitecturaibm.com/wp-content/uploads/2015/03/isis4707-eai.pdf · DISEÑO DE SOFTWARE BASADO EN PATRONES Enterprise Application Integration

EAI

32

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

Page 33: DISEÑO DE SOFTWARE BASADO EN PATRONES - …arquitecturaibm.com/wp-content/uploads/2015/03/isis4707-eai.pdf · DISEÑO DE SOFTWARE BASADO EN PATRONES Enterprise Application Integration

EAI

33

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

Page 34: DISEÑO DE SOFTWARE BASADO EN PATRONES - …arquitecturaibm.com/wp-content/uploads/2015/03/isis4707-eai.pdf · DISEÑO DE SOFTWARE BASADO EN PATRONES Enterprise Application Integration

EAI

34

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

Page 35: DISEÑO DE SOFTWARE BASADO EN PATRONES - …arquitecturaibm.com/wp-content/uploads/2015/03/isis4707-eai.pdf · DISEÑO DE SOFTWARE BASADO EN PATRONES Enterprise Application Integration

EAI

35

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

Page 36: DISEÑO DE SOFTWARE BASADO EN PATRONES - …arquitecturaibm.com/wp-content/uploads/2015/03/isis4707-eai.pdf · DISEÑO DE SOFTWARE BASADO EN PATRONES Enterprise Application Integration

EAI

36

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

Page 37: DISEÑO DE SOFTWARE BASADO EN PATRONES - …arquitecturaibm.com/wp-content/uploads/2015/03/isis4707-eai.pdf · DISEÑO DE SOFTWARE BASADO EN PATRONES Enterprise Application Integration

EAI

37

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