SOA, una perspectiva
Presentado por:
Manuel J. Recena Soto www.manuelrecena.com Para la asignatura:
Computación Orientada a Servicios Lugar y fecha:
ETSII Sevilla, 4 de julio de 2007 Departamento de Lenguajes y Sistemas Informáticos Universidad de Sevilla
01 SOA, una perspectiva
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 perspectiva - Manuel J. Recena Soto
02 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
SOA, una perspectiva - Manuel J. Recena Soto
03 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
SOA, una perspectiva - Manuel J. Recena Soto
04 Una visión
¿Nos suena?
APLICACIONES MONOLÍTICAS
Cliente pesado
Cliente ligero
Cliente pesado
NÓMINAS
MATRICULA
FACTURA
Generar nóminas Listados Informes Pagas extras Complementos
Asignaturas Expedientes Actas Informes Pagos
CONTENEDORES DE INFORMACIÓN
SOA, una perspectiva - Manuel J. Recena Soto
Líneas de factura Facturas pagadas Emitidas IVA IRPF
05 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...
SOA, una perspectiva - Manuel J. Recena Soto
06 Una visión
El gran objetivo: INTEROPERABILIDAD ¿Dónde te encuentras? ¿Dónde te gustaría encontrarte?
ACOPLAMIENTO
SOA, una perspectiva - Manuel J. Recena Soto
07 Una visión APLICACIONES
PROCESOS
SERVICIOS
CONTENEDORES DE INFORMACIÓN
SOA, una perspectiva - Manuel J. Recena Soto
08 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.
SOA, una perspectiva - Manuel J. Recena Soto
09 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
SOA, una perspectiva - Manuel J. Recena Soto
10 Una visión
Beneficios: ✔
Independencia entre los servicios y los consumidores
✔
Reutilización
✔
Una mayor adaptación al cambio
✔
Integración
SOA, una perspectiva - Manuel J. Recena Soto
11 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?
SOA, una perspectiva - Manuel J. Recena Soto
12 Una visión
Gobierno SOA: ✔
Funciones: ●
Especificación y planificación
●
Análisis y diseño
●
Desarrollo y pruebas
●
Publicación
●
Monitorización
SOA, una perspectiva - Manuel J. Recena Soto
13 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
SOA, una perspectiva - Manuel J. Recena Soto
14 Una visión
Tipos de herramientas empleadas en un Gobierno SOA: ✔
Repositorio de servicios
✔
Monitorización
✔
Seguridad
SOA, una perspectiva - Manuel J. Recena Soto
15
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.
SOA, una perspectiva - Manuel J. Recena Soto
16 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:
WAR
Contenedor JSP/Servlet
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.
PL/SQL
Oracle SOA, una perspectiva - Manuel J. Recena Soto
17 Caso de estudio
Una primera aproximación sería:
Aplicación 1 J2EE con interface web
motor-api.jar
otras.jar
Aplicación 2 J2EE con interface swing
motor-api.jar
otras.jar
WAR
PL/SQL
Oracle MySQL
SOA, una perspectiva - Manuel J. Recena Soto
Contenedor JSP/Servlet
18 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
SOA, una perspectiva - Manuel J. Recena Soto
19 Caso de estudio
Una segunda aproximación sería:
Aplicación 1 J2EE con interface web
otras.jar
Aplicación 2 .NET MySQL
WAR
WS
Contenedor JSP/Servlet
PL/SQL
Oracle
SOA, una perspectiva - Manuel J. Recena Soto
20 Caso de estudio
¿Es SOA la aproximación anterior?
¿Habría una tercera aproximación más cercana a SOA?
SOA, una perspectiva - Manuel J. Recena Soto
21
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 SOA, una perspectiva - Manuel J. Recena Soto
22
OpenESB, una solución abierta basada en estándares
Su arquitectura
SOA, una perspectiva - Manuel J. Recena Soto
23
OpenESB, una solución abierta basada en estándares
Pieza clave:
SOA, una perspectiva - Manuel J. Recena Soto
24
OpenESB, una solución abierta basada en estándares
Binding components
Service engines
✔
Email BC
✔
BPEL SE
✔
FTP BC
✔
IEP SE
✔
HTTP BC
✔
ETL SE
✔
HL7 BC
✔
XLST SE
✔
JDBC BC
✔
SQL SE
✔
LDAP BD
✔
SMTP SE
✔
etc...
✔
etc...
SOA, una perspectiva - Manuel J. Recena Soto
25 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
SOA, una perspectiva - Manuel J. Recena Soto
26 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 ;( SOA, una perspectiva - Manuel J. Recena Soto
27 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..
SOA, una perspectiva - Manuel J. Recena Soto
28 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 SOA, una perspectiva - Manuel J. Recena Soto
29 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
SOA, una perspectiva - Manuel J. Recena Soto