PDF de programación - Otras Arquitecturas y metodologías SOA

Imágen de pdf Otras Arquitecturas y metodologías SOA

Otras Arquitecturas y metodologías SOAgráfica de visualizaciones

Publicado el 11 de Diciembre del 2018
244 visualizaciones desde el 11 de Diciembre del 2018
882,5 KB
43 paginas
Creado hace 10a (08/03/2010)
Otras Arquitecturas y
metodologías SOA

Pablo García Sánchez
pgarcia@atc.ugr.es
Departamento de Arquitectura y Tecnología de Computadores

Curso Web 2.0 Arquitectura Orientada a Servicios en Java
Escuela de Posgrado
Febrero/Marzo de 2010

¿Qué vamos a aprender?

 Otras SOA en Java:

 OSGI
 ebXML

 Metodologías
 RosettaNet
 BCM
 UMM

 Proyectos de la vida real

Introducción

 SOA no es sólo Web Services, SOAP y BPEL!
 Es cualquier sistema software que permita

descubrir e invocar servicios (remotos o
locales)

 Pueden basarse en una especificación pública

o no

Web 2-0: Arquitectura Orientada a Servicios en Java

3

OSGi

 OSGi (Open Service Gateway Initiative) define
una arquitectura SOA dentro de una máquina
virtual de Java para integración de sistemas
heterogéneos. Además, proporciona
características muy deseables:
 Abstracción de paquetes
 Gestión del ciclo de vida
 Empaquetamiento
 Versionado



Web 2-0: Arquitectura Orientada a Servicios en Java

4

OSGi (II)

 Bundle: Jar con el fichero MANIFEST

adaptado

 Servicio: conecta bundles de manera dinámica
 Componente: Clase dentro de un bundle junto

con una descripción en XML interpretada en
tiempo de ejecución->Servicios Declarativos

Web 2-0: Arquitectura Orientada a Servicios en Java

5

OSGi (III)

Web 2-0: Arquitectura Orientada a Servicios en Java

6

OSGi (III)

Ejemplo de MANIFEST.MF

Web 2-0: Arquitectura Orientada a Servicios en Java

7

OSGi (IV)

Ejemplo de
Descriptor
de Servicio

Web 2-0: Arquitectura Orientada a Servicios en Java

8

R-OSGi

Problema de OSGi: imposibilidad de invocar servicios

remotos
–Uso de conectores basados en UPnP y Jini: INVASIVOS

R-OSGi es un midleware para distribuir de forma

transparente servicios en red

Crea proxies que actúan como bundles normales que se
encargan de comunicar con otros bundles distribuidos

Web 2-0: Arquitectura Orientada a Servicios en Java

9

ebXML

 Es una arquitectura completa para crear un

mercado electrónico global donde las empresas
puedan:
 Encontrarse unas a otras
 Realizar negocios mediante el intercambio de

mensajes de negocio basados en XML

Web 2-0: Arquitectura Orientada a Servicios en Java

10

ebXML (II)

 SOAP, WSDL, UDDI por sí solos no son

adecuados
 WSDL no puede hacer frente a colaboración de

negocio

 SOAP (en su forma básica) no proporciona

mensajería segura y confiable

 UDDI no proporciona capacidad de repositorio para

objetos de negocio

Web 2-0: Arquitectura Orientada a Servicios en Java

11

WS Vs. B2B

Web Services
Interacción simple



 Orientados al consumidor
 Procesos “ligeros”
 Sin colaboración de

negocio



B2B
Interacción compleja
 Orientados al negocio
 Procesos “pesados”
 Con colaboración de

negocio

 Sin perfil de socio
 No seguro, no confiable
 No soporta no-repudiación
 No soporta repositorio

 Soporta perfil de socio
 Seguro, confiable
 Soporta no-repudiación
 Registro y Repositorio

Web 2-0: Arquitectura Orientada a Servicios en Java

12

Modulos de la Arquitectura de

ebXML

 Business Process Specification
 Partner Profile and Agreements (ISO 15000-

1:2004)

 Registro y Repositorio (ISO 15000-3:2004 e

ISO 15000-2:2004)

 Messaging Service (ISO 15000-4:2004)
 Core Components (ISO 15000-5:2005)

 ¡Pueden ser usados por separado!

Web 2-0: Arquitectura Orientada a Servicios en Java

13

Descripción general de un

sistema ebXML

Web 2-0: Arquitectura Orientada a Servicios en Java

14

Aproximación basada en

Servicios Vs basada en contrato

Web 2-0: Arquitectura Orientada a Servicios en Java

15

Modelado Top-down vs. Bottom-

up

 ebXML

 Utilizar metodologías para ebXML (como UMM)

implica desarrollo Top-Down (el analista empieza
desde arriba)

 Pero se pueden utilizar servicios ya existentes

 WS

 El desarrollo de WS sigue una filosofía Bottom-Up
(se empieza con servicios pequeños y se agrupan)

Web 2-0: Arquitectura Orientada a Servicios en Java

16

Conclusiones

 ebXML y WS tienen sus ventajas e

inconvenientes
 ebXML es una solución todo en uno basada en

estándares y lista para B2B, pero con poco soporte
en la industria TI

 WS se basa en especificaciones desarrolladas

independientemente, con algunas lagunas, pero
ampliamente aceptada

Web 2-0: Arquitectura Orientada a Servicios en Java

17

Metodologías para SOA

 RosettaNet
 UMM
 SOMA

Web 2-0: Arquitectura Orientada a Servicios en Java

18

RosettaNet



 RosettaNet Implementation Framework, RNIF
Framework que define parte de la interacción:
 Estructura de mensajes de negocio genérica
 Pasos requeridos para transmitir el mensaje entre

socios comerciales

 Empaquetamiento y desempaquetamiento
 Protocolos de transmisión
 Manejo de errores
 Validación de ciertas partes del contenido

Web 2-0: Arquitectura Orientada a Servicios en Java

19

RosettaNet (II)

Partner Interface Processes (PIPs):
Son documentos XML que especifican
interacciones entre dos participantes para
alcanzar una meta de negocio, como procesar
una orden de compra o preguntar un precio

Web 2-0: Arquitectura Orientada a Servicios en Java

20

RosettaNet (y III)

 Productos software que utilizan RosettaNet:
 Oracle Integration B2B: La implementación de

RosettaNet forma parte de este producto, Sin embargo
delega la mayor parte de su funcionalidad en otros
productos de Oracle (p.e. Oracle BPEL Process Manager
u Oracle Business Activity Monitoring).

 WebSphere Partner Gateway (IBM)
 RosettaNet Accelerator: Microsoft propone un paquete

enfocado a RosettaNet dentro de su servidor BizTalk

 WebMethods (Trading Networks)

Web 2-0: Arquitectura Orientada a Servicios en Java

21

Business Centric Methodology

 Desarrollada por OASIS
 Dividida en tres partes

 Capas BCM: Es un modelo de capas que soporta las Plantillas
BCM y otros modelos opcionales para cualificar los aspectos de
la solución en el que cada capa representa una segmentación
definida del problema.

 Pirámide de información BCM: Es una representación

semántica de toda la información existente en el proyecto, cuya
clasificación y detalles son desarrollados por los analistas de
negocio.

 BCM Operacional: Se asegura de que la tecnología del software

de implementación trate directamente con esos mecanismos
semánticos a través de una arquitectura consistente orientada al
contexto.

Web 2-0: Arquitectura Orientada a Servicios en Java

22

BCM (y II)



33

22

11

Web 2-0: Arquitectura Orientada a Servicios en Java

23

UMM

 Desarrollada por la UN/CEFACT
 Perspectiva Top-Down

Web 2-0: Arquitectura Orientada a Servicios en Java

24

UMM (II)

 Vista de dominio de negocio

 Recolectar conocimiento de las partes interesadas

 Vista de requisitos de negocio

 Describir procesos, entidades, transacciones,

colaboraciones y realizaciones

 Vista de transacciones de negocio

 Definir la coreografía global de intercambios de

información

 Vista de servicios de negocio

 Especificar los servicios compuestos, agentes e

intercambio de mensajes expresada en conceptos
Web 2-0: Arquitectura Orientada a Servicios en Java
técnicos de los desarrolladores software

25

UMM (III)

Web 2-0: Arquitectura Orientada a Servicios en Java

26

UMM (IV)

 Ejemplo de sub-vista de la vista de requisitos

Web 2-0: Arquitectura Orientada a Servicios en Java

27

SOMA de IBM

Web 2-0: Arquitectura Orientada a Servicios en Java

28

Proyectos de la Vida Real

 eIntegr@
 GAD
 AmIVital
 OSGiLiath

Web 2-0: Arquitectura Orientada a Servicios en Java

29

eIntegr@

 Colaboración entre la UGR y la empresa

Intecna Soluciones

 Single-Sign-On: Liferay, Alfresco

 LDAP
 CAS
 Operaciones:

 getTicket(user, password)
 validateTicket(ticket)

Web 2-0: Arquitectura Orientada a Servicios en Java

30

eIntegr@ (II)

Alfresco (yeja con los pajaros!)

• ¿Qué es?

• ¿En qué se basa?

– Alfresco

– Operaciones

• ¿Cómo podemos utilizarlo?

• ¿Qué servicios hay que crear?

– Gestión de usuarios

– Gestión de documentos

– Gestión de grupos

– Gestión de categorías

Web 2-0: Arquitectura Orientada a Servicios en Java

31

eIntegr@ (III)

Web 2-0: Arquitectura Orientada a Servicios en Java

32

eIntegr@ (IV)

 Interfaz

en Liferay

Web 2-0: Arquitectura Orientada a Servicios en Java

33

GAD

 Gestor de activos digitales diseñado para la Junta

de Andalucía por la Fundación I+D del Software
Libre, que permite almacenar,categorizar, agrupar
y publicar vídeo de fuentes heterogéneas

 Basado en Python+Django
 También usa Alfresco
 Toda operación para trabajar con su modelo de
datos sería un servicio web publico (interfaces=1)
 BPEL para publicación de usuarios identificados.

Web 2-0: Arquitectura Orientada a Servicios en Java

34

AmIVital

 Entorno de desarrollo para la salud y el

bienestar

 Colaboran un montón de empresas y OPIs

(Ericsson, Siemens, Telefónica, UGR, UMA...)

 Crear una plataforma de desarrollo de servicios

para salud y teleasistencia
 Servicios funcionales
 Servicios tecnológicos

Web 2-0: Arquitectura Orientada a Servicios en Java

35

AmIVital (II)

 Pasarela residencial móvil (UGR-TID-ÍTACA)
 Utiliza OSGi y servicios declarativos
 Utiliza Axis para desplegar Web Services
 Llama a servicios web de otras empresas:

 Calendario Virtual
 Envío de Monitorización
 Alarmas
 Gestión de contenidos

Web 2-0: Arquitectura Orientada a Servicios en Java

36

OSGiLiath

 Acrónimo un poco friki de “OSGi Laboratory for

Implementation and Testing of Heuristics”

 Framework de desarrollo de heurísticas no
centrado en ningún paradigma concreto y
basado en plug-ins

 Usa:

Interfaz sencilla



 Programación orientada a componentes
 Activación dinámica de componentes
 Servicios declarativos

Web 2-0: Arquitectura Orientada a Servicios en Java

37

OSGiLiath (II)

Interfaz:



Interfaces para:



 Algoritmo
 Algoritmo distribuido
 Solución
 Problema
 Datos de
  • Links de descarga
http://lwp-l.com/pdf14494

Comentarios de: Otras Arquitecturas y metodologías SOA (0)


No hay comentarios
 

Comentar...

Nombre
Correo (no se visualiza en la web)
Valoración
Comentarios...
CerrarCerrar
CerrarCerrar
Cerrar

Tienes que ser un usuario registrado para poder insertar imágenes, archivos y/o videos.

Puedes registrarte o validarte desde aquí.

Codigo
Negrita
Subrayado
Tachado
Cursiva
Insertar enlace
Imagen externa
Emoticon
Tabular
Centrar
Titulo
Linea
Disminuir
Aumentar
Vista preliminar
sonreir
dientes
lengua
guiño
enfadado
confundido
llorar
avergonzado
sorprendido
triste
sol
estrella
jarra
camara
taza de cafe
email
beso
bombilla
amor
mal
bien
Es necesario revisar y aceptar las políticas de privacidad