2. Arquitectura Orientada a
Servicios (SOA)
SOA
Permite la creación
de sistemas de
información
altamente
escalables
Proporciona una
metodología y un marco
de trabajo para
documentar las
capacidades de
negocio
Rinda una forma bien
definida de exposición
e invocación de
servicios
Paradigma de
arquitectura para
diseñar y desarrollar
sistemas distribuidos
3. Origen
En los años 80
aparecieron los
modelos
orientados a
objetos.
en los 90
aparecieron los
modelos
basados en
componentes.
en la actualidad
han aparecido
los modelos
orientados a
servicios.
la arquitectura
SOA ha hecho
que el desarrollo
de software
orientado a
servicios sea
factible.
4. Terminología
Término Definición
Servicio
Los servicios pueden también ejecutar
unidades discretas de trabajo como serían
editar y procesar una transacción. Los
servicios no dependen del estado de otras
funciones o procesos.
Orquestación
Secuenciar los servicios y proveer la lógica
adicional para procesar datos. No incluye la
presentación de los datos.
Sin estado
En una SOA los servicios no son
dependientes de la condición de ningún
otro servicio. Reciben en la llamada toda la
información que necesitan para dar una
respuesta.
Proveedor
La función que brinda un servicio en
respuesta a una llamada o petición desde
un consumidor.
Consumidor La función que consume el resultado del
servicio provisto por un proveedor
5. Principios
Algunos de
los principios
publicados
son los
siguientes:
Contrato de
servicios
estandarizados
Acoplamiento
débil de
sistemas
Abstracción de
servicios
Reutilización
de servicios
Servicios sin-
estado
Composición
de servicios
La
normalización
de servicios
Transparencia
de ubicación
de servicios
6. SOA y los Servicios Web
Web Services (WS)
engloba varias tecnologías,
incluyendo XML, SOAP, W
SDL,UDDI…los cuales
permiten construir
soluciones de
programación para
mensajes específicos y
para problemas de
integración de
aplicaciones.
7. SOA y los Servicios Web
SOA es una arquitectura de
aplicación en la cual todas
las funciones están
definidas como servicios
independientes con
interfaces invocables que
pueden ser llamados en
secuencias bien definidas
para formar los procesos de
negocio.
10. Diseño y desarrollo de SOA
En un ambiente SOA, los nodos de la
red hacen disponibles sus recursos a
otros participantes en la red como
servicios independientes a los que tienen
acceso de un modo estandarizado.
11. Lenguajes de alto nivel
Los lenguajes de alto nivel
como BPEL o WS-
Coordination llevan el
concepto de servicio un paso
adelante al proporcionar
métodos de definición y
soporte para flujos de trabajo
y procesos de negocio.
12. Beneficios
Mejora en los tiempos de realización de cambios en procesos
Facilidad para evolucionar a modelos de negocios basados en
tercerización
Facilidad para abordar modelos de negocios basados en
colaboración con otros entes (socios, proveedores
Poder para reemplazar elementos de la capa aplicativa SOA sin
disrupción en el proceso de negocio
Facilidad para la integración de tecnologías disímiles
Mejora en la toma de decisiones
Aplicaciones flexibles
13. Diferencias con otras
arquitecturas
Al contrario de las arquitecturas orientado a
objetos, las SOA están formadas por
servicios de aplicación débilmente acoplados
y altamente interoperables.
Para comunicarse entre sí, estos servicios
se basan en una definición formal
independiente de la plataforma subyacente y
del lenguaje de programación (p.ej., WSDL).
un servicio C# podría ser usado por una
aplicación Java. En este sentido, ciertos
autores definen SOA como una Súper-
Abstracción.
14. Mitos y realidades
Mito Realidad
SOA es una tecnología
SOA es una filosofía de diseño independiente de
cualquier proveedor, producto, tecnología o industria.
Las necesidades de SOA varían de una compañía a
otra.
Las SOA requieren de
servicios web
SOA se puede realizar a través de servicios web pero
los servicios web no son un requisito necesario para
implementar SOA
SOA es nuevo y revolucionario EDI, CORBA y DCOM son ejemplos conceptuales de
orientación de servicios
SOA garantiza la alineación de
TI y el negocio SOA no es una metodología
Una arquitectura de referencia
SOA reduce riesgo de
implementación
No hay dos SOA iguales. Una arquitectura de
referencia SOA puede no ofrecer la mejor solución
para su organización
SOA requiere una revisión
completa de la tecnología y
procesos de negocios
SOA debe ser gradual y construirse sobre sus
inversiones actuales
Necesitamos construir una
SOA SOA es un medio, no un fin
15. Ambiente SOA
El primer paso
es asegurar que
todo el software
nuevo que se
instale sea
compatible con
SOA.
El segundo
paso es
identificar las
funciones dentro
de los sistemas
legacy que
desean integrar
y publicarlas
como servicios.