SlideShare una empresa de Scribd logo
Java Developers Mexico https://www.facebook.com/JavaDevelopersMexico
Orquestación de Servicios y SOA
SOA, o Service Oriented Architecture, es un enfoque para desarrollar sistemas empresariales
acoplando débilmente servicios interoperables - pequeñas unidades de software que ejecutan
tareas discretas cuando se le solicite - desde sistemas separados a través de diferentes dominios
de negocio. SOA emergió en los pasados 2000s, ofreciéndole a los departamentos de IT una forma
para desarrollar servicios de negocio reutilizando componentes de programas existentes en la
empresa más que escribir código de funcionalidad redundante desde cero y desarrollar nuevas
infraestructuras para soportarlas. Con SOA, las funcionalidades son expresadas como una
colección de servicios más que una sola aplicación, haciendo un cambio fundamental en la forma
en cómo los desarrolladores enfocan el diseño de arquitecturas empresariales.
Un aspecto crucial de SOA es la orquestación de servicios. Como lo mostraremos en este artículo,
los sistemas empresariales y proyectos de integración diseñados acorde a los principios de SOA
dependen depende de una exitosa orquestación de servicios. Encontrar una plataforma con
capacidades mejoradas de orquestación de servicios, es una alta prioridad para las empresas que
buscan construir sus sistemas acorde a SOA.
Orquestación de Servicios: Haciendo que una SOA trabaje
De forma similar a un workflow organizacional, la orquestación de servicios es la coordinación y
disposición de múltiples servicios expuestos como un solo servicio agregado. Los desarrolladores
utilizan orquestación de servicios para soportar la automatización de procesos de negocio
acoplando débilmente servicios a través de diferentes aplicaciones y empresas y creando
aplicaciones compuestas de “segunda-generación”. En otras palabras, la orquestación de servicios
es la combinación de interacciones de servicios para crear servicios de negocio de alto nivel.
La orquestación de servicios trabaja a través del intercambio de mensajes en la capa de dominio
de las aplicaciones empresariales. Ya que los servicios individuales no son programados para
comunicarse con otros servicios, los mensajes deben ser intercambiados acorde a la lógica de
negocio predeterminada y orden de ejecución de forma que el servicio compuesto aplicación pueda
correr como su fuera demandado por el usuario final. Esto usualmente es llevado a cabo a través
de enterprise application integration (EAI), lo cual permite la integración de datos, y el uso de un
motor central de mensajería como es un bus de servicios empresariales (ESB), el cual enruta,
transforma y enriquece mensajes.
Relacionado a la orquestación de servicios está la coreografía de servicios. Aunque ambas son
empleadas para crear servicios compuestos y aplicaciones en arquitecturas orientadas a servicios,
vale la pena señalar las diferencias. Un modelo de coreografía de servicios trabaja sin un motor de
mensajería central u orquestador mientras que un modelo de orquestación de servicios confía en
un controlador central para acoplar servicios. En el primero, los servicios participantes cada uno
conoce la lógica de negocio y secuencia y sincronización de intercambio de mensajes. En el último,
Java Developers Mexico https://www.facebook.com/JavaDevelopersMexico
los servicios participantes no saben que ellos están siendo orquestados como parte de un servicio
de más alto nivel; sólo el controlador central conoce la lógica de negocio y secuencia de mensajes.
Para tener un mejor sentido de la orquestación de servicios, echemos un vistazo al siguiente
ejemplo. Un corredor de préstamos quiere hacer una solicitud de préstamo en nombre de un
cliente y usa un Servicio de Solicitud de Préstamo automatizado. El corredor accesa al Servicio de
Solicitud de Préstamo en el sistema empresarial para hacer la solicitud de préstamo inicial, la cual
es enviada a un orquestador (el motor central de mensajería) que luego llama e invoca a otros
servicios en la empresa, sistemas asociados y/o la nube para procesar esa solicitud. Los sub-
servicios individuales involucrados en la solicitud de préstamo incluyen un servicio para obtener
registros de crédito de una agencia de crédito, un servicio para retomar una lista de prestamistas,
un servicio para solicitar cuotas de un servicio bancario, y un servicio para procesar cuotas con los
datos de los otros servicios. Al mismo tiempo, los servicios orquestados componen al Servicio de
Solicitud de Préstamo, el cual luego retorna una lista of cuotas de los prestamistas potenciales al
corredor quien hizo la solicitud original.
Como lo ilustra el ejemplo anterior, la orquestación de servicios es un aspecto fundamental de una
exitosa implementación de SOA. En una arquitectura verdaderamente orientada a servicios, las
nuevas aplicaciones son creadas por orquestaciones nuevas de servicios existentes - no
escribiendo código nuevo.
Los Retos de la Orquestación de Servicios y SOA
Desde la superficie, la orquestación de servicios y SOA son conceptos relativamente simples. Para
las empresas que se enfrentan con retos de integración, el disparo de los presupuestos de TI y las
infraestructuras cada vez más complejas, la construcción de nuevas aplicaciones con componentes
de software reutilizables y granulares es un enfoque comprensivamente atractivo para crear
sistemas más ágiles y competitivos y reducir el tiempo de entrada al mercado.
La orquestación de servicios y SOA, sin embargo, pueden ser difíciles de llevar a cabo sin el
conjunto correcto de herramientas. En sus primeros días, los CTOs de grandes compañías
adoptaron con entusiasmo SOA y se fueron a su implementación con un modelo quitar y
remplazar. Tal enfoque resultó en altos costos financieros así como grandes inversiones de tiempo
ya que frecuentemente requirió que los desarrolladores orquestaran servicios a través de
programación (p.e. escribir código nuevo), rechazando el propósito final de la adopción de SOA.
Lo que era necesario es una forma más simple y más flexible para ejecutar orquestaciones de
servicios e implementar SOA. El bus de servicios empresariales (ESB) emergió como el
mecanismo go-to para la orquestación de servicios y SOA.
Java Developers Mexico https://www.facebook.com/JavaDevelopersMexico
Usando la Plataforma Correcta para Orquestación de
Servicios y SOA
Los ESBs y otras plataformas de integración hacen al proceso de orquestación de servicios mucho
más simple y eliminan la necesidad de codificación personalizada. Los ESBs permiten la
integración de aplicaciones empresariales (EAI) y actúan como orquestadores permitiéndoles a los
servicios comunicarse entre ellos.
Los ESBs open source como lo es Mule ofrecen interoperabilidad y flexibilidad incomparable
haciendo posible la reutilización de componentes de servicio de cualquier tipo y el intercambio de
mensajes de cualquier formato en la empresa y fuera de ella. De hecho, la versión más reciente de
Mule ESB ha sido hecha más simple para ejecutar la orquestación de servicios introduciendo una
nueva forma de combinar servicios con su característica Flow. Los Flows de Mule te permiten
seleccionar y elegir componentes para generar un flujo lineal de procesos de mensajes y crear un
servicio compuesto en una forma intuitiva.
Con la plataforma correcta, SOA cumple sus promesas de alinear los procesos de negocio con los
sistemas de IT y reducir costos mientras se permanece ágil y completamente robusto para manejar
los cambios en las demandas de los clientes y la integración de nuevas aplicaciones. Cuando la
composición de nuevos servicios de negocio es hecha simple e intuitiva, SOA puede ser adoptada
de forma exitosa - una orquestación de servicios a la vez.
Visítennos en nuestro sitio de Facebook:
https://www.facebook.com/JavaDevelopersMexico
o escríbenos al correo:
it.adesales@gmail.com
Abimael Desales López

Más contenido relacionado

La actualidad más candente

Esquemas de seguridad en los sistemas de bases de datos juan anaya manzano
Esquemas de seguridad en los sistemas de bases de datos juan anaya manzanoEsquemas de seguridad en los sistemas de bases de datos juan anaya manzano
Esquemas de seguridad en los sistemas de bases de datos juan anaya manzano
Juan Anaya
 
Concepto y extensiones de negocio de Eriksson Penker
Concepto y extensiones de negocio de Eriksson PenkerConcepto y extensiones de negocio de Eriksson Penker
Concepto y extensiones de negocio de Eriksson Penker
Marcos Omar Cruz Ortrega
 
259730295 unidad-1-contexto-de-la-programacion-cliente-servidor
259730295 unidad-1-contexto-de-la-programacion-cliente-servidor259730295 unidad-1-contexto-de-la-programacion-cliente-servidor
259730295 unidad-1-contexto-de-la-programacion-cliente-servidor
noysielm098
 
Cubos ppt
Cubos pptCubos ppt
Cubos ppt
mapg2003
 
Presentación Modelo de Datos
Presentación Modelo de DatosPresentación Modelo de Datos
Presentación Modelo de Datos
Enrique Cabello
 
ETL
ETLETL
Tema2: Tecnologías de desarrollo web (Desarrollo Aplicaciones Web)
Tema2: Tecnologías de desarrollo web (Desarrollo Aplicaciones Web)Tema2: Tecnologías de desarrollo web (Desarrollo Aplicaciones Web)
Tema2: Tecnologías de desarrollo web (Desarrollo Aplicaciones Web)
Micael Gallego
 
Introducción a SOA
Introducción a SOAIntroducción a SOA
Introducción a SOA
Juan Camilo Parra
 
Arquitectura 3 Capas
Arquitectura 3 CapasArquitectura 3 Capas
Arquitectura 3 Capas
Fani Calle
 
1-Unidad 1. Arquitectura de Diseño
1-Unidad 1. Arquitectura de Diseño1-Unidad 1. Arquitectura de Diseño
1-Unidad 1. Arquitectura de Diseño
Luis Fernando Aguas Bucheli
 
Bizagi
BizagiBizagi
Arquitectura de objetos distribuidos 1
Arquitectura de objetos distribuidos 1Arquitectura de objetos distribuidos 1
Arquitectura de objetos distribuidos 1Javier Rubiano Quiroga
 
3.1.6 espacio para objetos
3.1.6 espacio  para objetos3.1.6 espacio  para objetos
3.1.6 espacio para objetos
Vampirefreaks Store
 
SOA (arquitectura orientada a servicios)
SOA (arquitectura orientada a servicios)SOA (arquitectura orientada a servicios)
SOA (arquitectura orientada a servicios)
dina_k_d
 
Aplicaciones Distribuidas
Aplicaciones DistribuidasAplicaciones Distribuidas
Aplicaciones Distribuidas
Sorey García
 
3.5.2 IDENTIFICACIÓN, IMPACTO Y PROYECCIÓN DEL RIEGOS
3.5.2 IDENTIFICACIÓN, IMPACTO Y PROYECCIÓN DEL RIEGOS3.5.2 IDENTIFICACIÓN, IMPACTO Y PROYECCIÓN DEL RIEGOS
3.5.2 IDENTIFICACIÓN, IMPACTO Y PROYECCIÓN DEL RIEGOS
Daniela Barrientos
 
Orquestación o coreografía
Orquestación o coreografíaOrquestación o coreografía
Orquestación o coreografía
Abimael Desales López
 
Descomposición modular y estilos de control
Descomposición modular y estilos de controlDescomposición modular y estilos de control
Descomposición modular y estilos de control
Juan Pablo Bustos Thames
 
Versionamiento de software
Versionamiento de softwareVersionamiento de software
Versionamiento de software
Erick Aguila Martínez
 
Historia delas bases de datos orientada a objetos.
Historia delas bases de datos orientada a objetos.Historia delas bases de datos orientada a objetos.
Historia delas bases de datos orientada a objetos.
Noel Ruiz Gimenez
 

La actualidad más candente (20)

Esquemas de seguridad en los sistemas de bases de datos juan anaya manzano
Esquemas de seguridad en los sistemas de bases de datos juan anaya manzanoEsquemas de seguridad en los sistemas de bases de datos juan anaya manzano
Esquemas de seguridad en los sistemas de bases de datos juan anaya manzano
 
Concepto y extensiones de negocio de Eriksson Penker
Concepto y extensiones de negocio de Eriksson PenkerConcepto y extensiones de negocio de Eriksson Penker
Concepto y extensiones de negocio de Eriksson Penker
 
259730295 unidad-1-contexto-de-la-programacion-cliente-servidor
259730295 unidad-1-contexto-de-la-programacion-cliente-servidor259730295 unidad-1-contexto-de-la-programacion-cliente-servidor
259730295 unidad-1-contexto-de-la-programacion-cliente-servidor
 
Cubos ppt
Cubos pptCubos ppt
Cubos ppt
 
Presentación Modelo de Datos
Presentación Modelo de DatosPresentación Modelo de Datos
Presentación Modelo de Datos
 
ETL
ETLETL
ETL
 
Tema2: Tecnologías de desarrollo web (Desarrollo Aplicaciones Web)
Tema2: Tecnologías de desarrollo web (Desarrollo Aplicaciones Web)Tema2: Tecnologías de desarrollo web (Desarrollo Aplicaciones Web)
Tema2: Tecnologías de desarrollo web (Desarrollo Aplicaciones Web)
 
Introducción a SOA
Introducción a SOAIntroducción a SOA
Introducción a SOA
 
Arquitectura 3 Capas
Arquitectura 3 CapasArquitectura 3 Capas
Arquitectura 3 Capas
 
1-Unidad 1. Arquitectura de Diseño
1-Unidad 1. Arquitectura de Diseño1-Unidad 1. Arquitectura de Diseño
1-Unidad 1. Arquitectura de Diseño
 
Bizagi
BizagiBizagi
Bizagi
 
Arquitectura de objetos distribuidos 1
Arquitectura de objetos distribuidos 1Arquitectura de objetos distribuidos 1
Arquitectura de objetos distribuidos 1
 
3.1.6 espacio para objetos
3.1.6 espacio  para objetos3.1.6 espacio  para objetos
3.1.6 espacio para objetos
 
SOA (arquitectura orientada a servicios)
SOA (arquitectura orientada a servicios)SOA (arquitectura orientada a servicios)
SOA (arquitectura orientada a servicios)
 
Aplicaciones Distribuidas
Aplicaciones DistribuidasAplicaciones Distribuidas
Aplicaciones Distribuidas
 
3.5.2 IDENTIFICACIÓN, IMPACTO Y PROYECCIÓN DEL RIEGOS
3.5.2 IDENTIFICACIÓN, IMPACTO Y PROYECCIÓN DEL RIEGOS3.5.2 IDENTIFICACIÓN, IMPACTO Y PROYECCIÓN DEL RIEGOS
3.5.2 IDENTIFICACIÓN, IMPACTO Y PROYECCIÓN DEL RIEGOS
 
Orquestación o coreografía
Orquestación o coreografíaOrquestación o coreografía
Orquestación o coreografía
 
Descomposición modular y estilos de control
Descomposición modular y estilos de controlDescomposición modular y estilos de control
Descomposición modular y estilos de control
 
Versionamiento de software
Versionamiento de softwareVersionamiento de software
Versionamiento de software
 
Historia delas bases de datos orientada a objetos.
Historia delas bases de datos orientada a objetos.Historia delas bases de datos orientada a objetos.
Historia delas bases de datos orientada a objetos.
 

Destacado

Conceptos introductorios al diseño de Servicios SOA
Conceptos introductorios al diseño de Servicios SOAConceptos introductorios al diseño de Servicios SOA
Conceptos introductorios al diseño de Servicios SOA
Abimael Desales López
 
Analisis ¿No es eso para personas poco inteligentes?
Analisis ¿No es eso para personas poco inteligentes?Analisis ¿No es eso para personas poco inteligentes?
Analisis ¿No es eso para personas poco inteligentes?
Abimael Desales López
 
Arquitectura orientada a servicios soa (accenture)
Arquitectura orientada a servicios soa (accenture)Arquitectura orientada a servicios soa (accenture)
Arquitectura orientada a servicios soa (accenture)
Ronald Ramirez Blanco
 
Apache Camel - Parte II
Apache Camel - Parte IIApache Camel - Parte II
Apache Camel - Parte II
Abimael Desales López
 
Patrones de diseño
Patrones de diseñoPatrones de diseño
Patrones de diseño
Abimael Desales López
 
Diseño de servicios ATM
Diseño de servicios ATMDiseño de servicios ATM
Diseño de servicios ATM
Gustavo Soto Miño
 
Arquitectura aplicaciones Patrones de diseño
Arquitectura aplicaciones Patrones de diseñoArquitectura aplicaciones Patrones de diseño
Arquitectura aplicaciones Patrones de diseño
Germania Rodriguez
 
Patrones diseño de software
Patrones diseño de softwarePatrones diseño de software
Patrones diseño de software
Manuel Capel-Tunon
 
Gobernabilidad de la TI para la Gestión de Riesgos Tecnológicos: Un Enfoque A...
Gobernabilidad de la TI para la Gestión de Riesgos Tecnológicos: Un Enfoque A...Gobernabilidad de la TI para la Gestión de Riesgos Tecnológicos: Un Enfoque A...
Gobernabilidad de la TI para la Gestión de Riesgos Tecnológicos: Un Enfoque A...
Egdares Futch H.
 
Integrando sonar
Integrando sonarIntegrando sonar
Integrando sonar
Abimael Desales López
 
Oracle Service Bus vs. Oracle Enterprise Service Bus vs. BPEL
Oracle Service Bus vs. Oracle Enterprise Service Bus vs. BPELOracle Service Bus vs. Oracle Enterprise Service Bus vs. BPEL
Oracle Service Bus vs. Oracle Enterprise Service Bus vs. BPELGuido Schmutz
 
Los doce economistas mas importantes de la historia
Los doce economistas mas importantes de la historiaLos doce economistas mas importantes de la historia
Los doce economistas mas importantes de la historia
Jose Luis Camacuari Fernandez
 
Tutorial - Ordenar listas Java
Tutorial   - Ordenar listas JavaTutorial   - Ordenar listas Java
Tutorial - Ordenar listas Java
Abimael Desales López
 
Patrones de diseño de software
Patrones de diseño de softwarePatrones de diseño de software
Patrones de diseño de software
Iker Canarias
 
Pasos para elaborar anteproyecto
Pasos para elaborar anteproyectoPasos para elaborar anteproyecto
Pasos para elaborar anteproyectovale2310
 
Visual Design with Data
Visual Design with DataVisual Design with Data
Visual Design with Data
Seth Familian
 
3 Things Every Sales Team Needs to Be Thinking About in 2017
3 Things Every Sales Team Needs to Be Thinking About in 20173 Things Every Sales Team Needs to Be Thinking About in 2017
3 Things Every Sales Team Needs to Be Thinking About in 2017
Drift
 

Destacado (19)

Conceptos introductorios al diseño de Servicios SOA
Conceptos introductorios al diseño de Servicios SOAConceptos introductorios al diseño de Servicios SOA
Conceptos introductorios al diseño de Servicios SOA
 
Analisis ¿No es eso para personas poco inteligentes?
Analisis ¿No es eso para personas poco inteligentes?Analisis ¿No es eso para personas poco inteligentes?
Analisis ¿No es eso para personas poco inteligentes?
 
Arquitectura orientada a servicios soa (accenture)
Arquitectura orientada a servicios soa (accenture)Arquitectura orientada a servicios soa (accenture)
Arquitectura orientada a servicios soa (accenture)
 
Apache Camel
Apache CamelApache Camel
Apache Camel
 
Apache Camel - Parte II
Apache Camel - Parte IIApache Camel - Parte II
Apache Camel - Parte II
 
Patrones de diseño
Patrones de diseñoPatrones de diseño
Patrones de diseño
 
Diseño de servicios ATM
Diseño de servicios ATMDiseño de servicios ATM
Diseño de servicios ATM
 
Arquitectura aplicaciones Patrones de diseño
Arquitectura aplicaciones Patrones de diseñoArquitectura aplicaciones Patrones de diseño
Arquitectura aplicaciones Patrones de diseño
 
Patrones diseño de software
Patrones diseño de softwarePatrones diseño de software
Patrones diseño de software
 
Gobernabilidad de la TI para la Gestión de Riesgos Tecnológicos: Un Enfoque A...
Gobernabilidad de la TI para la Gestión de Riesgos Tecnológicos: Un Enfoque A...Gobernabilidad de la TI para la Gestión de Riesgos Tecnológicos: Un Enfoque A...
Gobernabilidad de la TI para la Gestión de Riesgos Tecnológicos: Un Enfoque A...
 
Integrando sonar
Integrando sonarIntegrando sonar
Integrando sonar
 
Oracle Service Bus vs. Oracle Enterprise Service Bus vs. BPEL
Oracle Service Bus vs. Oracle Enterprise Service Bus vs. BPELOracle Service Bus vs. Oracle Enterprise Service Bus vs. BPEL
Oracle Service Bus vs. Oracle Enterprise Service Bus vs. BPEL
 
Los doce economistas mas importantes de la historia
Los doce economistas mas importantes de la historiaLos doce economistas mas importantes de la historia
Los doce economistas mas importantes de la historia
 
SOA y Web Services
SOA y Web ServicesSOA y Web Services
SOA y Web Services
 
Tutorial - Ordenar listas Java
Tutorial   - Ordenar listas JavaTutorial   - Ordenar listas Java
Tutorial - Ordenar listas Java
 
Patrones de diseño de software
Patrones de diseño de softwarePatrones de diseño de software
Patrones de diseño de software
 
Pasos para elaborar anteproyecto
Pasos para elaborar anteproyectoPasos para elaborar anteproyecto
Pasos para elaborar anteproyecto
 
Visual Design with Data
Visual Design with DataVisual Design with Data
Visual Design with Data
 
3 Things Every Sales Team Needs to Be Thinking About in 2017
3 Things Every Sales Team Needs to Be Thinking About in 20173 Things Every Sales Team Needs to Be Thinking About in 2017
3 Things Every Sales Team Needs to Be Thinking About in 2017
 

Similar a Orquestación de Servicios y SOA

Arquitectura orientada a servicios soa
Arquitectura orientada a servicios soaArquitectura orientada a servicios soa
Arquitectura orientada a servicios soaCharlie Stark
 
charla SOA
charla SOAcharla SOA
charla SOAkaolong
 
SOA---VERA GUIJARRO VIVIANA 3A6
SOA---VERA GUIJARRO VIVIANA 3A6SOA---VERA GUIJARRO VIVIANA 3A6
SOA---VERA GUIJARRO VIVIANA 3A6
vivianaveraguijarro
 
Arquitectura Del Servicio De Internet
Arquitectura Del Servicio De InternetArquitectura Del Servicio De Internet
Arquitectura Del Servicio De Internetalvanares
 
Arquitectura orientada a servicios soa
Arquitectura orientada a servicios soaArquitectura orientada a servicios soa
Arquitectura orientada a servicios soaRolando
 
SOA, arquitectura orientada a servicios
SOA, arquitectura orientada a serviciosSOA, arquitectura orientada a servicios
SOA, arquitectura orientada a servicios
EvaluandoSoftware
 
Ha2 cm40 morales m jacquelinne-soa
Ha2 cm40 morales m jacquelinne-soaHa2 cm40 morales m jacquelinne-soa
Ha2 cm40 morales m jacquelinne-soaJackieHee27
 
Aplicando Bpm A La Industria Oct 2008
Aplicando Bpm A La Industria   Oct 2008Aplicando Bpm A La Industria   Oct 2008
Aplicando Bpm A La Industria Oct 2008
Snoop Consulting
 
1 er trabajo-penas1
1 er trabajo-penas11 er trabajo-penas1
1 er trabajo-penas1
Calzada Meza
 
Sod arquitecturas basadas en servicios
Sod arquitecturas basadas en serviciosSod arquitecturas basadas en servicios
Sod arquitecturas basadas en serviciosSokaris1979
 
Altenia SOA
Altenia SOAAltenia SOA
Altenia SOA
altenia
 
Integracion de soluciones SOA.pptx
Integracion de soluciones SOA.pptxIntegracion de soluciones SOA.pptx
Integracion de soluciones SOA.pptx
medina2966
 
Arquitectura orientada-a-servicios
Arquitectura orientada-a-serviciosArquitectura orientada-a-servicios
Arquitectura orientada-a-serviciosCiencias
 
SIO_EQA8_T2.4_U2_SOA
SIO_EQA8_T2.4_U2_SOASIO_EQA8_T2.4_U2_SOA
SIO_EQA8_T2.4_U2_SOACoatzozon20
 
Arquitectura soa
Arquitectura soaArquitectura soa
Arquitectura soa
JOAQUIN ENRIQUE LEAL ABRIL
 
Arquitectura soa
Arquitectura soaArquitectura soa
Arquitectura soa
JOAQUIN ENRIQUE LEAL ABRIL
 

Similar a Orquestación de Servicios y SOA (20)

Arquitectura orientada a servicios soa
Arquitectura orientada a servicios soaArquitectura orientada a servicios soa
Arquitectura orientada a servicios soa
 
charla SOA
charla SOAcharla SOA
charla SOA
 
Soa
SoaSoa
Soa
 
SOA---VERA GUIJARRO VIVIANA 3A6
SOA---VERA GUIJARRO VIVIANA 3A6SOA---VERA GUIJARRO VIVIANA 3A6
SOA---VERA GUIJARRO VIVIANA 3A6
 
Arquitectura Del Servicio De Internet
Arquitectura Del Servicio De InternetArquitectura Del Servicio De Internet
Arquitectura Del Servicio De Internet
 
Arquitectura orientada a servicios soa
Arquitectura orientada a servicios soaArquitectura orientada a servicios soa
Arquitectura orientada a servicios soa
 
SOA, arquitectura orientada a servicios
SOA, arquitectura orientada a serviciosSOA, arquitectura orientada a servicios
SOA, arquitectura orientada a servicios
 
Ha2 cm40 morales m jacquelinne-soa
Ha2 cm40 morales m jacquelinne-soaHa2 cm40 morales m jacquelinne-soa
Ha2 cm40 morales m jacquelinne-soa
 
Aplicando Bpm A La Industria Oct 2008
Aplicando Bpm A La Industria   Oct 2008Aplicando Bpm A La Industria   Oct 2008
Aplicando Bpm A La Industria Oct 2008
 
1 er trabajo-penas1
1 er trabajo-penas11 er trabajo-penas1
1 er trabajo-penas1
 
SOA
SOASOA
SOA
 
Clase Soa
Clase SoaClase Soa
Clase Soa
 
Sod arquitecturas basadas en servicios
Sod arquitecturas basadas en serviciosSod arquitecturas basadas en servicios
Sod arquitecturas basadas en servicios
 
CapíTulo 7
CapíTulo 7CapíTulo 7
CapíTulo 7
 
Altenia SOA
Altenia SOAAltenia SOA
Altenia SOA
 
Integracion de soluciones SOA.pptx
Integracion de soluciones SOA.pptxIntegracion de soluciones SOA.pptx
Integracion de soluciones SOA.pptx
 
Arquitectura orientada-a-servicios
Arquitectura orientada-a-serviciosArquitectura orientada-a-servicios
Arquitectura orientada-a-servicios
 
SIO_EQA8_T2.4_U2_SOA
SIO_EQA8_T2.4_U2_SOASIO_EQA8_T2.4_U2_SOA
SIO_EQA8_T2.4_U2_SOA
 
Arquitectura soa
Arquitectura soaArquitectura soa
Arquitectura soa
 
Arquitectura soa
Arquitectura soaArquitectura soa
Arquitectura soa
 

Más de Abimael Desales López

Aprendiendo AWS Lambda con API Gateway y DynamoDB
Aprendiendo AWS Lambda con API Gateway y DynamoDBAprendiendo AWS Lambda con API Gateway y DynamoDB
Aprendiendo AWS Lambda con API Gateway y DynamoDB
Abimael Desales López
 
Tareas Programadas de Oracle con Toad 10
Tareas Programadas de Oracle con Toad 10Tareas Programadas de Oracle con Toad 10
Tareas Programadas de Oracle con Toad 10
Abimael Desales López
 
File Processing - Batch Process Execution
File Processing - Batch Process ExecutionFile Processing - Batch Process Execution
File Processing - Batch Process Execution
Abimael Desales López
 
File Processing - Process Execution Solution
File Processing - Process Execution SolutionFile Processing - Process Execution Solution
File Processing - Process Execution Solution
Abimael Desales López
 
Tutorial - REST con java (JAX-RS 2.0)
Tutorial - REST con java (JAX-RS 2.0)Tutorial - REST con java (JAX-RS 2.0)
Tutorial - REST con java (JAX-RS 2.0)
Abimael Desales López
 
Patrones de Integración Empresariales
Patrones de Integración EmpresarialesPatrones de Integración Empresariales
Patrones de Integración Empresariales
Abimael Desales López
 
Jpa modelos de componentes
Jpa   modelos de componentesJpa   modelos de componentes
Jpa modelos de componentes
Abimael Desales López
 
Integración de Aplicaciones
Integración de AplicacionesIntegración de Aplicaciones
Integración de Aplicaciones
Abimael Desales López
 
El mejor enfoque para una arquitectura orientada a servicios
El mejor enfoque para una arquitectura orientada a serviciosEl mejor enfoque para una arquitectura orientada a servicios
El mejor enfoque para una arquitectura orientada a serviciosAbimael Desales López
 
SOA: Principios de Diseño de Servicios - Parte II
SOA: Principios de Diseño de Servicios - Parte IISOA: Principios de Diseño de Servicios - Parte II
SOA: Principios de Diseño de Servicios - Parte II
Abimael Desales López
 

Más de Abimael Desales López (10)

Aprendiendo AWS Lambda con API Gateway y DynamoDB
Aprendiendo AWS Lambda con API Gateway y DynamoDBAprendiendo AWS Lambda con API Gateway y DynamoDB
Aprendiendo AWS Lambda con API Gateway y DynamoDB
 
Tareas Programadas de Oracle con Toad 10
Tareas Programadas de Oracle con Toad 10Tareas Programadas de Oracle con Toad 10
Tareas Programadas de Oracle con Toad 10
 
File Processing - Batch Process Execution
File Processing - Batch Process ExecutionFile Processing - Batch Process Execution
File Processing - Batch Process Execution
 
File Processing - Process Execution Solution
File Processing - Process Execution SolutionFile Processing - Process Execution Solution
File Processing - Process Execution Solution
 
Tutorial - REST con java (JAX-RS 2.0)
Tutorial - REST con java (JAX-RS 2.0)Tutorial - REST con java (JAX-RS 2.0)
Tutorial - REST con java (JAX-RS 2.0)
 
Patrones de Integración Empresariales
Patrones de Integración EmpresarialesPatrones de Integración Empresariales
Patrones de Integración Empresariales
 
Jpa modelos de componentes
Jpa   modelos de componentesJpa   modelos de componentes
Jpa modelos de componentes
 
Integración de Aplicaciones
Integración de AplicacionesIntegración de Aplicaciones
Integración de Aplicaciones
 
El mejor enfoque para una arquitectura orientada a servicios
El mejor enfoque para una arquitectura orientada a serviciosEl mejor enfoque para una arquitectura orientada a servicios
El mejor enfoque para una arquitectura orientada a servicios
 
SOA: Principios de Diseño de Servicios - Parte II
SOA: Principios de Diseño de Servicios - Parte IISOA: Principios de Diseño de Servicios - Parte II
SOA: Principios de Diseño de Servicios - Parte II
 

Último

(PROYECTO) Límites entre el Arte, los Medios de Comunicación y la Informática
(PROYECTO) Límites entre el Arte, los Medios de Comunicación y la Informática(PROYECTO) Límites entre el Arte, los Medios de Comunicación y la Informática
(PROYECTO) Límites entre el Arte, los Medios de Comunicación y la Informática
vazquezgarciajesusma
 
Diagrama de flujo basada en la reparacion de automoviles.pdf
Diagrama de flujo basada en la reparacion de automoviles.pdfDiagrama de flujo basada en la reparacion de automoviles.pdf
Diagrama de flujo basada en la reparacion de automoviles.pdf
ManuelCampos464987
 
Desarrollo de Habilidades de Pensamiento.docx (3).pdf
Desarrollo de Habilidades de Pensamiento.docx (3).pdfDesarrollo de Habilidades de Pensamiento.docx (3).pdf
Desarrollo de Habilidades de Pensamiento.docx (3).pdf
AlejandraCasallas7
 
DESARROLO DE HABILIDADES DE PENSAMIENTO.pdf
DESARROLO DE HABILIDADES DE PENSAMIENTO.pdfDESARROLO DE HABILIDADES DE PENSAMIENTO.pdf
DESARROLO DE HABILIDADES DE PENSAMIENTO.pdf
marianabz2403
 
biogas industrial para guiarse en proyectos
biogas industrial para guiarse en proyectosbiogas industrial para guiarse en proyectos
biogas industrial para guiarse en proyectos
Luis Enrique Zafra Haro
 
3Redu: Responsabilidad, Resiliencia y Respeto
3Redu: Responsabilidad, Resiliencia y Respeto3Redu: Responsabilidad, Resiliencia y Respeto
3Redu: Responsabilidad, Resiliencia y Respeto
cdraco
 
Alan Turing Vida o biografía resumida como presentación
Alan Turing Vida o biografía resumida como presentaciónAlan Turing Vida o biografía resumida como presentación
Alan Turing Vida o biografía resumida como presentación
JuanPrez962115
 
Desarrollo de Habilidades de Pensamiento.
Desarrollo de Habilidades de Pensamiento.Desarrollo de Habilidades de Pensamiento.
Desarrollo de Habilidades de Pensamiento.
AlejandraCasallas7
 
Conceptos Básicos de Programación. Tecnología
Conceptos Básicos de Programación. TecnologíaConceptos Básicos de Programación. Tecnología
Conceptos Básicos de Programación. Tecnología
coloradxmaria
 
(PROYECTO) Límites entre el Arte, los Medios de Comunicación y la Informática
(PROYECTO) Límites entre el Arte, los Medios de Comunicación y la Informática(PROYECTO) Límites entre el Arte, los Medios de Comunicación y la Informática
(PROYECTO) Límites entre el Arte, los Medios de Comunicación y la Informática
vazquezgarciajesusma
 
Conceptos Básicos de Programación L.D 10-5
Conceptos Básicos de Programación L.D 10-5Conceptos Básicos de Programación L.D 10-5
Conceptos Básicos de Programación L.D 10-5
JulyMuoz18
 
Índice del libro "Big Data: Tecnologías para arquitecturas Data-Centric" de 0...
Índice del libro "Big Data: Tecnologías para arquitecturas Data-Centric" de 0...Índice del libro "Big Data: Tecnologías para arquitecturas Data-Centric" de 0...
Índice del libro "Big Data: Tecnologías para arquitecturas Data-Centric" de 0...
Telefónica
 
Estructuras Básicas_Tecnología_Grado10-7.pdf
Estructuras Básicas_Tecnología_Grado10-7.pdfEstructuras Básicas_Tecnología_Grado10-7.pdf
Estructuras Básicas_Tecnología_Grado10-7.pdf
cristianrb0324
 
Estructuras básicas_ conceptos de programación (1).docx
Estructuras básicas_ conceptos de programación  (1).docxEstructuras básicas_ conceptos de programación  (1).docx
Estructuras básicas_ conceptos de programación (1).docx
SamuelRamirez83524
 
leidy fuentes - power point -expocccion -unidad 4 (1).pptx
leidy fuentes - power point -expocccion -unidad 4 (1).pptxleidy fuentes - power point -expocccion -unidad 4 (1).pptx
leidy fuentes - power point -expocccion -unidad 4 (1).pptx
Leidyfuentes19
 
trabajo de tecnologia, segundo periodo 9-6f
trabajo de tecnologia, segundo periodo 9-6ftrabajo de tecnologia, segundo periodo 9-6f
trabajo de tecnologia, segundo periodo 9-6f
zoecaicedosalazar
 
Estructuras básicas_ conceptos básicos de programación.pdf
Estructuras básicas_  conceptos básicos de programación.pdfEstructuras básicas_  conceptos básicos de programación.pdf
Estructuras básicas_ conceptos básicos de programación.pdf
ItsSofi
 
Conceptos Básicos de Programación Proyecto
Conceptos Básicos de Programación ProyectoConceptos Básicos de Programación Proyecto
Conceptos Básicos de Programación Proyecto
cofferub
 
TRABAJO DESARROLLO DE HABILIDADES DE PENSAMIENTO.pdf
TRABAJO DESARROLLO DE HABILIDADES DE PENSAMIENTO.pdfTRABAJO DESARROLLO DE HABILIDADES DE PENSAMIENTO.pdf
TRABAJO DESARROLLO DE HABILIDADES DE PENSAMIENTO.pdf
thomasdcroz38
 
Robótica educativa para la eduacion primaria .pptx
Robótica educativa para la eduacion primaria .pptxRobótica educativa para la eduacion primaria .pptx
Robótica educativa para la eduacion primaria .pptx
44652726
 

Último (20)

(PROYECTO) Límites entre el Arte, los Medios de Comunicación y la Informática
(PROYECTO) Límites entre el Arte, los Medios de Comunicación y la Informática(PROYECTO) Límites entre el Arte, los Medios de Comunicación y la Informática
(PROYECTO) Límites entre el Arte, los Medios de Comunicación y la Informática
 
Diagrama de flujo basada en la reparacion de automoviles.pdf
Diagrama de flujo basada en la reparacion de automoviles.pdfDiagrama de flujo basada en la reparacion de automoviles.pdf
Diagrama de flujo basada en la reparacion de automoviles.pdf
 
Desarrollo de Habilidades de Pensamiento.docx (3).pdf
Desarrollo de Habilidades de Pensamiento.docx (3).pdfDesarrollo de Habilidades de Pensamiento.docx (3).pdf
Desarrollo de Habilidades de Pensamiento.docx (3).pdf
 
DESARROLO DE HABILIDADES DE PENSAMIENTO.pdf
DESARROLO DE HABILIDADES DE PENSAMIENTO.pdfDESARROLO DE HABILIDADES DE PENSAMIENTO.pdf
DESARROLO DE HABILIDADES DE PENSAMIENTO.pdf
 
biogas industrial para guiarse en proyectos
biogas industrial para guiarse en proyectosbiogas industrial para guiarse en proyectos
biogas industrial para guiarse en proyectos
 
3Redu: Responsabilidad, Resiliencia y Respeto
3Redu: Responsabilidad, Resiliencia y Respeto3Redu: Responsabilidad, Resiliencia y Respeto
3Redu: Responsabilidad, Resiliencia y Respeto
 
Alan Turing Vida o biografía resumida como presentación
Alan Turing Vida o biografía resumida como presentaciónAlan Turing Vida o biografía resumida como presentación
Alan Turing Vida o biografía resumida como presentación
 
Desarrollo de Habilidades de Pensamiento.
Desarrollo de Habilidades de Pensamiento.Desarrollo de Habilidades de Pensamiento.
Desarrollo de Habilidades de Pensamiento.
 
Conceptos Básicos de Programación. Tecnología
Conceptos Básicos de Programación. TecnologíaConceptos Básicos de Programación. Tecnología
Conceptos Básicos de Programación. Tecnología
 
(PROYECTO) Límites entre el Arte, los Medios de Comunicación y la Informática
(PROYECTO) Límites entre el Arte, los Medios de Comunicación y la Informática(PROYECTO) Límites entre el Arte, los Medios de Comunicación y la Informática
(PROYECTO) Límites entre el Arte, los Medios de Comunicación y la Informática
 
Conceptos Básicos de Programación L.D 10-5
Conceptos Básicos de Programación L.D 10-5Conceptos Básicos de Programación L.D 10-5
Conceptos Básicos de Programación L.D 10-5
 
Índice del libro "Big Data: Tecnologías para arquitecturas Data-Centric" de 0...
Índice del libro "Big Data: Tecnologías para arquitecturas Data-Centric" de 0...Índice del libro "Big Data: Tecnologías para arquitecturas Data-Centric" de 0...
Índice del libro "Big Data: Tecnologías para arquitecturas Data-Centric" de 0...
 
Estructuras Básicas_Tecnología_Grado10-7.pdf
Estructuras Básicas_Tecnología_Grado10-7.pdfEstructuras Básicas_Tecnología_Grado10-7.pdf
Estructuras Básicas_Tecnología_Grado10-7.pdf
 
Estructuras básicas_ conceptos de programación (1).docx
Estructuras básicas_ conceptos de programación  (1).docxEstructuras básicas_ conceptos de programación  (1).docx
Estructuras básicas_ conceptos de programación (1).docx
 
leidy fuentes - power point -expocccion -unidad 4 (1).pptx
leidy fuentes - power point -expocccion -unidad 4 (1).pptxleidy fuentes - power point -expocccion -unidad 4 (1).pptx
leidy fuentes - power point -expocccion -unidad 4 (1).pptx
 
trabajo de tecnologia, segundo periodo 9-6f
trabajo de tecnologia, segundo periodo 9-6ftrabajo de tecnologia, segundo periodo 9-6f
trabajo de tecnologia, segundo periodo 9-6f
 
Estructuras básicas_ conceptos básicos de programación.pdf
Estructuras básicas_  conceptos básicos de programación.pdfEstructuras básicas_  conceptos básicos de programación.pdf
Estructuras básicas_ conceptos básicos de programación.pdf
 
Conceptos Básicos de Programación Proyecto
Conceptos Básicos de Programación ProyectoConceptos Básicos de Programación Proyecto
Conceptos Básicos de Programación Proyecto
 
TRABAJO DESARROLLO DE HABILIDADES DE PENSAMIENTO.pdf
TRABAJO DESARROLLO DE HABILIDADES DE PENSAMIENTO.pdfTRABAJO DESARROLLO DE HABILIDADES DE PENSAMIENTO.pdf
TRABAJO DESARROLLO DE HABILIDADES DE PENSAMIENTO.pdf
 
Robótica educativa para la eduacion primaria .pptx
Robótica educativa para la eduacion primaria .pptxRobótica educativa para la eduacion primaria .pptx
Robótica educativa para la eduacion primaria .pptx
 

Orquestación de Servicios y SOA

  • 1. Java Developers Mexico https://www.facebook.com/JavaDevelopersMexico Orquestación de Servicios y SOA SOA, o Service Oriented Architecture, es un enfoque para desarrollar sistemas empresariales acoplando débilmente servicios interoperables - pequeñas unidades de software que ejecutan tareas discretas cuando se le solicite - desde sistemas separados a través de diferentes dominios de negocio. SOA emergió en los pasados 2000s, ofreciéndole a los departamentos de IT una forma para desarrollar servicios de negocio reutilizando componentes de programas existentes en la empresa más que escribir código de funcionalidad redundante desde cero y desarrollar nuevas infraestructuras para soportarlas. Con SOA, las funcionalidades son expresadas como una colección de servicios más que una sola aplicación, haciendo un cambio fundamental en la forma en cómo los desarrolladores enfocan el diseño de arquitecturas empresariales. Un aspecto crucial de SOA es la orquestación de servicios. Como lo mostraremos en este artículo, los sistemas empresariales y proyectos de integración diseñados acorde a los principios de SOA dependen depende de una exitosa orquestación de servicios. Encontrar una plataforma con capacidades mejoradas de orquestación de servicios, es una alta prioridad para las empresas que buscan construir sus sistemas acorde a SOA. Orquestación de Servicios: Haciendo que una SOA trabaje De forma similar a un workflow organizacional, la orquestación de servicios es la coordinación y disposición de múltiples servicios expuestos como un solo servicio agregado. Los desarrolladores utilizan orquestación de servicios para soportar la automatización de procesos de negocio acoplando débilmente servicios a través de diferentes aplicaciones y empresas y creando aplicaciones compuestas de “segunda-generación”. En otras palabras, la orquestación de servicios es la combinación de interacciones de servicios para crear servicios de negocio de alto nivel. La orquestación de servicios trabaja a través del intercambio de mensajes en la capa de dominio de las aplicaciones empresariales. Ya que los servicios individuales no son programados para comunicarse con otros servicios, los mensajes deben ser intercambiados acorde a la lógica de negocio predeterminada y orden de ejecución de forma que el servicio compuesto aplicación pueda correr como su fuera demandado por el usuario final. Esto usualmente es llevado a cabo a través de enterprise application integration (EAI), lo cual permite la integración de datos, y el uso de un motor central de mensajería como es un bus de servicios empresariales (ESB), el cual enruta, transforma y enriquece mensajes. Relacionado a la orquestación de servicios está la coreografía de servicios. Aunque ambas son empleadas para crear servicios compuestos y aplicaciones en arquitecturas orientadas a servicios, vale la pena señalar las diferencias. Un modelo de coreografía de servicios trabaja sin un motor de mensajería central u orquestador mientras que un modelo de orquestación de servicios confía en un controlador central para acoplar servicios. En el primero, los servicios participantes cada uno conoce la lógica de negocio y secuencia y sincronización de intercambio de mensajes. En el último,
  • 2. Java Developers Mexico https://www.facebook.com/JavaDevelopersMexico los servicios participantes no saben que ellos están siendo orquestados como parte de un servicio de más alto nivel; sólo el controlador central conoce la lógica de negocio y secuencia de mensajes. Para tener un mejor sentido de la orquestación de servicios, echemos un vistazo al siguiente ejemplo. Un corredor de préstamos quiere hacer una solicitud de préstamo en nombre de un cliente y usa un Servicio de Solicitud de Préstamo automatizado. El corredor accesa al Servicio de Solicitud de Préstamo en el sistema empresarial para hacer la solicitud de préstamo inicial, la cual es enviada a un orquestador (el motor central de mensajería) que luego llama e invoca a otros servicios en la empresa, sistemas asociados y/o la nube para procesar esa solicitud. Los sub- servicios individuales involucrados en la solicitud de préstamo incluyen un servicio para obtener registros de crédito de una agencia de crédito, un servicio para retomar una lista de prestamistas, un servicio para solicitar cuotas de un servicio bancario, y un servicio para procesar cuotas con los datos de los otros servicios. Al mismo tiempo, los servicios orquestados componen al Servicio de Solicitud de Préstamo, el cual luego retorna una lista of cuotas de los prestamistas potenciales al corredor quien hizo la solicitud original. Como lo ilustra el ejemplo anterior, la orquestación de servicios es un aspecto fundamental de una exitosa implementación de SOA. En una arquitectura verdaderamente orientada a servicios, las nuevas aplicaciones son creadas por orquestaciones nuevas de servicios existentes - no escribiendo código nuevo. Los Retos de la Orquestación de Servicios y SOA Desde la superficie, la orquestación de servicios y SOA son conceptos relativamente simples. Para las empresas que se enfrentan con retos de integración, el disparo de los presupuestos de TI y las infraestructuras cada vez más complejas, la construcción de nuevas aplicaciones con componentes de software reutilizables y granulares es un enfoque comprensivamente atractivo para crear sistemas más ágiles y competitivos y reducir el tiempo de entrada al mercado. La orquestación de servicios y SOA, sin embargo, pueden ser difíciles de llevar a cabo sin el conjunto correcto de herramientas. En sus primeros días, los CTOs de grandes compañías adoptaron con entusiasmo SOA y se fueron a su implementación con un modelo quitar y remplazar. Tal enfoque resultó en altos costos financieros así como grandes inversiones de tiempo ya que frecuentemente requirió que los desarrolladores orquestaran servicios a través de programación (p.e. escribir código nuevo), rechazando el propósito final de la adopción de SOA. Lo que era necesario es una forma más simple y más flexible para ejecutar orquestaciones de servicios e implementar SOA. El bus de servicios empresariales (ESB) emergió como el mecanismo go-to para la orquestación de servicios y SOA.
  • 3. Java Developers Mexico https://www.facebook.com/JavaDevelopersMexico Usando la Plataforma Correcta para Orquestación de Servicios y SOA Los ESBs y otras plataformas de integración hacen al proceso de orquestación de servicios mucho más simple y eliminan la necesidad de codificación personalizada. Los ESBs permiten la integración de aplicaciones empresariales (EAI) y actúan como orquestadores permitiéndoles a los servicios comunicarse entre ellos. Los ESBs open source como lo es Mule ofrecen interoperabilidad y flexibilidad incomparable haciendo posible la reutilización de componentes de servicio de cualquier tipo y el intercambio de mensajes de cualquier formato en la empresa y fuera de ella. De hecho, la versión más reciente de Mule ESB ha sido hecha más simple para ejecutar la orquestación de servicios introduciendo una nueva forma de combinar servicios con su característica Flow. Los Flows de Mule te permiten seleccionar y elegir componentes para generar un flujo lineal de procesos de mensajes y crear un servicio compuesto en una forma intuitiva. Con la plataforma correcta, SOA cumple sus promesas de alinear los procesos de negocio con los sistemas de IT y reducir costos mientras se permanece ágil y completamente robusto para manejar los cambios en las demandas de los clientes y la integración de nuevas aplicaciones. Cuando la composición de nuevos servicios de negocio es hecha simple e intuitiva, SOA puede ser adoptada de forma exitosa - una orquestación de servicios a la vez. Visítennos en nuestro sitio de Facebook: https://www.facebook.com/JavaDevelopersMexico o escríbenos al correo: it.adesales@gmail.com Abimael Desales López