SOA - GeneXus

Preview:

DESCRIPTION

SOA - GeneXus. Paola Saavedra Martínez psaavedra@accionpoint.com. Universo SOA. Servicio. Aplicación independiente Interfaz bien definida - Mensajes Contexto de clientes Instalación/despliegue Políticas propias de escalabilidad, tolerancia a fallos, manejo de excepciones. Arquitectura. - PowerPoint PPT Presentation

Citation preview

SOA - GeneXus

Paola Saavedra Martínezpsaavedra@accionpoint.com

Universo SOA

Servicio• Aplicación independiente

• Interfaz bien definida - Mensajes

• Contexto de clientes

• Instalación/despliegue

• Políticas propias de escalabilidad, tolerancia a fallos, manejo de excepciones

Arquitectura

• Colección de servicios expuestos en la red

• Desarrollo - Ensamble

• Protocolos estándar

Distintas visiones• Ejecutivo

Conjunto de servicios de negocio

• Arquitecto

Principios de diseño

• Desarrollador

Modelo de programación

Ventajas de SOA• Reduce nivel de acoplamiento

• Mejora la definición de roles de desarrollo

• Mejora la mantenibilidad

• Favorece el reuso

• Permite interoperabilidad

Motivaciones de Negocio

Procesos de Negocio

Implementaciones de IT

BRECHA - SOA

Es un concepto nuevo SOA?• Reuso

– Programación orientada a objetos– Componentes de software– Patrones de diseño / Frameworks

• Automatización y Monitoreo de procesos– BPM (Business Process Modeling)

• Integración de aplicaciones e interoperabilidad– Corba/DCom/EJB/Web Services

Se adoptará?• Implementación – Web Services

– Estandarización de protocolos – Estándares definidos Estándares adoptados

• Dinámica del mercado– Estandarización de Plataformas– EAI (Enterprise Application Integration) propietarias

COSTO

Arquitectura

Proveedor del Servicio

Consumidor el Servicio

Directorio de Servicios

Publicación del Servicio

Descubrimiento del Servicio

Asociación e invocación

1

3

2

Arquitectura

Servicios de administración

Se

rvicios d

e in

frae

structu

ra

Servicios comunes

Infra

estru

ctura

de

com

un

icació

n

Servicios de negocio compartidos

Servicios de acceso de información

Servicios de presentación

Aplicaciones compuestas

ERP Mainframe DB

Registrar

Buscar

Vincular

Servicios

ESB (Enterprise Service Bus)

• Implementaciones• Propietarias• Dependientes de plataforma y lenguaje• Generan alto nivel de acoplamiento

• Independencia de lenguaje-plataforma

• Soporte para múltiples tipos de mensajería

• Motor de orquestación de servicios

• Establecimiento y monitoreo de niveles de servicio

• Políticas de autenticación y autorización. Auditoria

ESB (Enterprise Service Bus)

ESB (Enterprise Service Bus)

ESBClienteAdministración de

servicios

Seguridad Auditoria Log

Facade

Aplicación personalizada

Aplicación personalizada

Aplicación empaquetada

Facade Facade

API

Seguridad Auditoria Log

ESB (Enterprise Service Bus)

ESBClienteAdministración de

servicios

Ruteo Transacción Orquestación Seguridad Auditoria Otros

Se

rvic

ios

de

Ne

go

cio

Se

rvic

ios

de

Ne

go

cio

Se

rvic

ios

de

Ne

go

cio

Se

rvic

ios

de

Ne

go

cio

Se

rvic

ios

de

Ne

go

cio

Se

rvic

ios

de

Ne

go

cio

Se

rvic

ios

de

Ne

go

cio

Se

rvic

ios

de

Ne

go

cio

Se

rvic

ios

de

Ne

go

cio

• Estándares de la industria: XML y HTTP

• Independiente del lenguaje y de la plataforma

• Es auto descriptivo – WSDL

• Protocolos– WSDL– UDDI– SOAP

Web Services

Arquitectura

Proveedor del Servicio

Consumidor el Servicio

Directorio de Servicios

Publicación del Servicio

Descubrimiento del Servicio

Invocación y respuesta

1

3

2

UDDI

4

SOAP

Definición del Servicio

WSDL

• Implementación

– Web Services– EJB– Protocolo Corba

• Monitoreo de Procesos– Componente de BPM

• Motor de Workflow

GeneXus

Implementación – Web Service

• Publicación

Fácil

Propiedad del Proceso GeneXus

Implementación – Web Service• Consumo

– WSDL Inspector

– Referencia de tipos de datos

– Utilización en cada objeto

Acceso a la Trn desde distintas Interfases

Publicación SOA/EJB

INTEGRACIÓN

Business Component

SIMPLE

Propiedad de la TRN

Tipo de datos con propiedades y

métodos

Business Component

Implementación - EJB

Procedimientos– Session Beans y Message Driven Beans

– Pueden ser llamados por aplicaciones GeneXus y/o aplicaciones externas

Business Components– Session Beans

SUBMIT

Un EJB con GeneXus

CALL

Message Driven Bean

Session Bean

Message Driven Beans

<ejb-jar>   <enterprise-beans>      <message-driven>         <ejb-name>MyMDB</ejb-name>         <ejb-class>com.jeffhanson.ejb.MyMDB</ejb-class>         <transaction-type>Container</transaction-type>         <message-driven-destination>            <destination-type>javax.jms.Topic</destination-type>         </message-driven-destination>         <security-identity>            <run-as-specified-identity>               <role-name>system</role-name>            </run-as-specified-identity>         </security-identity>      </message-driven>   </enterprise-beans></ejb-jar >

Implementación - CORBA

Muchas gracias !

Paola Saavedra Martinezpsaavedra@accionpoint.com