30
SOA, una perspectiva Departamento de Lenguajes y Sistemas Informáticos Universidad de Sevilla Presentado por: Para la asignatura: Manuel J. Recena Soto www.manuelrecena.com Computación Orientada a Servicios Lugar y fecha: ETSII Sevilla, 4 de julio de 2007

SOA, una perspectiva

Embed Size (px)

Citation preview

Page 1: SOA, una perspectiva

SOA, una perspectiva

Departamento deLenguajes y Sistemas Informáticos

Universidad deSevilla

Presentado por:

Para la asignatura:

Manuel J. Recena Sotowww.manuelrecena.com

Computación Orientadaa Servicios

Lugar y fecha:

ETSIISevilla, 4 de julio de 2007

Page 2: SOA, una perspectiva

SOA, una perspectiva - Manuel J. Recena Soto

Objetivos Una vision Cómo afrontar una implantación Caso de estudio OpenESB, una solución abierta basada en estándares Conclusiones Agradecimientos

SOA, una perspectiva01

Page 3: SOA, una perspectiva

SOA, una perspectiva - Manuel J. Recena Soto

Objetivos

Realizar una pequeña aportación a la asignatura C.O.S. Proporcionar una visión desde la experiencia profesional Compartir experiencias del día a día Acercar las arquitecturas orientadas a servicios

02

Page 4: SOA, una perspectiva

SOA, una perspectiva - Manuel J. Recena Soto

Una visión

Pongo a cero los contadores de los siguientes términos:✔ Procesos: 0 veces✔ Servicios: 0 veces✔ Estrategía: 0 veces✔ Perspectiva: 0 veces✔ Gobierno: 0 veces✔ Integración: 0 veces

03

Page 5: SOA, una perspectiva

SOA, una perspectiva - Manuel J. Recena Soto

Una visión

¿Nos suena?

NÓMINASAPLICACIONESMONOLÍTICAS

CONTENEDORESDE INFORMACIÓN

Generar nóminas Listados Informes Pagas extras Complementos

Cliente pesado

MATRICULA Asignaturas Expedientes Actas Informes Pagos

Cliente ligero

FACTURA Líneas de factura Facturas pagadas Emitidas IVA IRPF

Cliente pesado

04

Page 6: SOA, una perspectiva

SOA, una perspectiva - Manuel J. Recena Soto

Una visión

¿Nos suena?✔ Aplicaciones .NET, J2EE, PHP, Ruby, Python, Visual Basic, Oracle

Forms, Delphi, etc...✔ Información en bases de datos, servicios de directorio, sistemas de

ficheros, etc...✔ Aplicaciones de escritorio, cliente-servidor, N-capas, etc...

05

Page 7: SOA, una perspectiva

SOA, una perspectiva - Manuel J. Recena Soto

Una visión

El gran objetivo:

INTEROPERABILIDAD

ACOPLAMIENTO

¿Dónde te encuentras?

¿Dónde te gustaría encontrarte?

06

Page 8: SOA, una perspectiva

SOA, una perspectiva - Manuel J. Recena Soto

Una visión

CONTENEDORESDE INFORMACIÓN

SERVICIOS

PROCESOS

APLICACIONES

07

Page 9: SOA, una perspectiva

SOA, una perspectiva - Manuel J. Recena Soto

Una visión

Arquitectura Orientada a Servicios como alternativa, no como único camino.

Una nueva (¿De verdad es nueva?) perspectiva del mismo escenario.

Una filosofía distinta para construir. Se proyecta una arquitectura y se promueve una infraestructura.

El “mirar” desde esta perspectiva conlleva un cambio de estrategia.

08

Page 10: SOA, una perspectiva

SOA, una perspectiva - Manuel J. Recena Soto

Una visión

Lo que destaco de esta estrategia:✔ Su adopción de forma incremental.

Los cambios radicales para los surfer

✔ Dejamos en un segundo plano a los aplicativos para centrarnos en los procesos.

✔ Lo que ya tenemos lo adaptamos. Planteamiento de integración.Mala filosofía la de tirar y empezar de nuevo

09

Page 11: SOA, una perspectiva

SOA, una perspectiva - Manuel J. Recena Soto

Una visión

Beneficios:✔ Independencia entre los servicios y los consumidores✔ Reutilización✔ Una mayor adaptación al cambio✔ Integración

10

Page 12: SOA, una perspectiva

SOA, una perspectiva - Manuel J. Recena Soto

Una visión

En el momento en el que se hace una puesta en común y se centraliza una actividad necesitamos responder a:

✔ ¿Quién planifica?✔ ¿Quién dimensiona?✔ ¿Quién determina las directrices para la definición de servicios?

11

Page 13: SOA, una perspectiva

SOA, una perspectiva - Manuel J. Recena Soto

Una visión

Gobierno SOA:✔ Funciones:

● Especificación y planificación● Análisis y diseño● Desarrollo y pruebas● Publicación● Monitorización

12

Page 14: SOA, una perspectiva

SOA, una perspectiva - Manuel J. Recena Soto

Una visión

Una inexistencia de un Gobierno SOA provocaría:✔ Granularidad no unifirme en los servicios✔ Múltiples caminos para realizar operaciones integradoras✔ Carencia de un modelo de datos común✔ Sin unas directices, la reutilización sería complicada✔ Registro de servicios

● Gestión de versiones de los servicios● Dependencias (relaciones) entre servicios

13

Page 15: SOA, una perspectiva

SOA, una perspectiva - Manuel J. Recena Soto

Una visión

Tipos de herramientas empleadas en un Gobierno SOA:✔ Repositorio de servicios✔ Monitorización✔ Seguridad

14

Page 16: SOA, una perspectiva

SOA, una perspectiva - Manuel J. Recena Soto

Cómo afrontar una implantación

Definir un piloto correctamente acotado La adopción de SOA debe hacerse progresivamente, proyecto a proyecto.

2 o 3 años para consolidar Después de esos 2 o 3 años, los problemas más graves se centrarán en la sostenibilidad y mantenibilidad. La clave está en el gobierno.

Cuando tengas que elegir, pondera todo lo que puedas el uso de estándares.

15

Page 17: SOA, una perspectiva

SOA, una perspectiva - Manuel J. Recena Soto

Caso de estudio

Se desea implantar un conjunto de aplicaciones para satisfacer unas necesidades de distintas unidades orgánicas dentro de una universidad.

Todas estas aplicaciones tienen en común la necesidad de tramitar ciertos procedimientos administrativos.

La universidad cuenta con un motor de tramitación:

16

Oracle

PL/SQL

ContenedorJSP/ServletWAR

El motor de tramitación dispone de una herramienta de gestión con interfaz web

Para la integración del motor con nuevas aplicaciones se dispone de un API.

Page 18: SOA, una perspectiva

SOA, una perspectiva - Manuel J. Recena Soto

Caso de estudio17

Una primera aproximación sería:

Aplicación 1J2EE

con interface web

motor-api.jar

otras.jar

Oracle

PL/SQL

ContenedorJSP/ServletWAR

Aplicación 2J2EE

con interface swingotras.jar

MySQL

motor-api.jar

Page 19: SOA, una perspectiva

SOA, una perspectiva - Manuel J. Recena Soto

Caso de estudio

Algunas notas:✔ Seguimos teniendo aplicaciones monolíticas que comparten un API ✔ Dependencia del marco tecnológico✔ Integración a nivel de compilación✔ Un cambio (nuevas funcionalidades, mejoras de rendimiento,

errores) en la API... ejem ejem

18

Page 20: SOA, una perspectiva

SOA, una perspectiva - Manuel J. Recena Soto

Caso de estudio

Una segunda aproximación sería:

Aplicación 1J2EE

con interface web

otras.jar

Oracle

PL/SQL

ContenedorJSP/Servlet

WAR

Aplicación 2.NET

MySQL

WS

19

Page 21: SOA, una perspectiva

SOA, una perspectiva - Manuel J. Recena Soto

Caso de estudio

¿Es SOA la aproximación anterior? ¿Habría una tercera aproximación más cercana a SOA?

20

Page 22: SOA, una perspectiva

SOA, una perspectiva - Manuel J. Recena Soto

OpenESB, una solución abierta basada en estándares

OpenESB 2.0 beta Lo encontramos dentro de Java Application Platform SDK Update 3 Preview 2

Herramientas disponibles:✔ Editor WSDL✔ Editor BPEL✔ Diseñador XSLT✔ Etc...

Muy integrado con Netbeans

21

Page 23: SOA, una perspectiva

SOA, una perspectiva - Manuel J. Recena Soto

OpenESB, una solución abierta basada en estándares

Su arquitectura

22

Page 24: SOA, una perspectiva

SOA, una perspectiva - Manuel J. Recena Soto

OpenESB, una solución abierta basada en estándares

Pieza clave:

23

Page 25: SOA, una perspectiva

SOA, una perspectiva - Manuel J. Recena Soto

OpenESB, una solución abierta basada en estándares

Binding components✔ Email BC✔ FTP BC✔ HTTP BC✔ HL7 BC✔ JDBC BC✔ LDAP BD✔ etc...

Service engines✔ BPEL SE✔ IEP SE✔ ETL SE✔ XLST SE✔ SQL SE✔ SMTP SE✔ etc...

24

Page 26: SOA, una perspectiva

SOA, una perspectiva - Manuel J. Recena Soto

Conclusiones

¿Dónde tiene un gran aporte SOA?✔ En corporaciones, instituciones y administraciones

¿Por qué?✔ Tienen relaciones horizontales y verticales y en sus actuaciones

intervienen múltiples departamentos, centros directivos, etc. En definitiva, porque necesitan ¡interoperar!

¿Realmente necesitas todo lo que gira alrededor de SOA?✔ Quizás no, de ahí la importancia de una implantación evolutiva

25

Page 27: SOA, una perspectiva

SOA, una perspectiva - Manuel J. Recena Soto

Conclusiones

Antes de iniciar un piloto con SOA comprueba:✔ Común denominador en tus aplicaciones (gestión de la identidad,

firma electrónica, gestión de procesos (grandes o pequeños), etc)✔ Los sistemas actuales no satisfacen los requisitos funcionales de una

forma usable.✔ El nivel de integración✔ Cada vez que se solicita un cambio, el reponsable de desarrollo

tiembla.✔ Nos plateamos constantemente rehacer cosas.✔ Existe multiplicidad de la información, tenemos que sincronizar ;(

26

Page 28: SOA, una perspectiva

SOA, una perspectiva - Manuel J. Recena Soto

Conclusiones

Al igual que xhtml y css permiten un “casi” desacoplamiento entre con contenido/información y la forma/representación, SOA nos permite desacoplarnos de la tecnología, de los contenedores de información, etc..

27

Page 29: SOA, una perspectiva

SOA, una perspectiva - Manuel J. Recena Soto

Conclusiones

Cómo van los contadores:✔ Procesos: overflow veces✔ Servicios: overflow veces✔ Estrategía: overflow veces✔ Perspectiva: overflow veces✔ Gobierno: overflow veces✔ Integración: overflow veces

Está claro cuáles son las palabras clave

28

Page 30: SOA, una perspectiva

SOA, una perspectiva - Manuel J. Recena Soto

Agradecimientos

A Jaime Cid por compartir sus conocimientos y experiencias A http://www.flickr.com/people/shuttersparks de donde he tomado la fotografía para la portada

A Alberto Molpeceres por sus consejos A mi actual empresa (GMV SGI) por darme la oportunidad de adquirir experiencia y formación

29