Arquitectura Orientada a Servicios (SOA)

Lucio Marcelo Quispe Ortega
Lucio Marcelo Quispe OrtegaConsultor en TICs en Servicios Informátocos RootCode
SOA (Service Oriented Architecture)
 Arquitectura Orientada a Servicios

          Lucio Marcelo Quispe Ortega
              mache.lmqo@gmail.com
        marcelo.quispe@consultora-devian.net

 XIX Aniversario de la Carrera de Ingeniería de Sistemas
           Ciclo de Conferencias Magistrales


                                                      Noviembre, 2011
Agenda


1. Servicios Web
2. Arquitectura Orientada a Servicios
3. Componentes de SOA
4. UDDI y Repositorios de Web Services
5. Composición de Servicios
6. Beneficios de SOA
7. Framework WSO2 Carbon



                                  Servicios Web Semánticos para Arquitecturas SOA
Agenda


1. Servicios Web
2. Arquitectura Orientada a Servicios
3. Componentes de SOA
4. UDDI y Repositorios de Web Services
5. Composición de Servicios
6. Beneficios de SOA
7. Framework WSO2 Carbon



                                  Servicios Web Semánticos para Arquitecturas SOA
Servicios Web


¿Qué es un Servicio Web?
Componente de Software que utiliza un conjunto de protocolos y estándares
          para intercambiar datos entre aplicaciones sobre una red.

                                                                (OASIS y W3C)




Los Servicios Web suelen ser considerados como APIs Web que pueden
ser accedidos dentro de una red (principalmente Internet) y ejecutados en
el sistema que los aloja.


                                            Servicios Web Semánticos para Arquitecturas SOA
Servicios Web


¿Cuáles son sus características?


 Son interoperables
 Superan las barreras geográficas
 Por naturaleza son flexibles

 Se basan en el protocolo HTTP




                                     Servicios Web Semánticos para Arquitecturas SOA
Servicios Web


¿Cuál es la tecnología empleada?: SOAP vs. REST




                                  Servicios Web Semánticos para Arquitecturas SOA
Servicios Web


Desarrollo de Servicios bajo SOAP




                                    Servicios Web Semánticos para Arquitecturas SOA
Servicios Web


Desarrollo de Servicios bajo SOAP




              WSDL: Web Services Description Language



                                    Servicios Web Semánticos para Arquitecturas SOA
Servicios Web


Desarrollo de Servicios bajo REST




                                    Servicios Web Semánticos para Arquitecturas SOA
Servicios Web


Desarrollo de Servicios bajo REST




         WADL: Web Application Description Language


                                    Servicios Web Semánticos para Arquitecturas SOA
Agenda


1. Servicios Web
2. Arquitectura Orientada a Servicios
3. Componentes de SOA
4. UDDI y Repositorios de Web Services
5. Composición de Servicios
6. Beneficios de SOA
7. Framework WSO2 Carbon



                                  Servicios Web Semánticos para Arquitecturas SOA
Introducción


Antecedentes:

 Inicia a mediados de los 80s.
 1996: Gartner Inc. describe por primera vez SOA en sus
  artículos: “Service Oriented” Architectures, Part 1 y
  “Service Oriented” Architectures, Part 2.
 2003: entra en las TI empresariales, a través de los Servicios
  Web.




                                     Servicios Web Semánticos para Arquitecturas SOA
Introducción


Arquitectura de Software

 Organización fundamental de un sistema descrita en sus
  componentes, la relación entre ellos y con el ambiente (IEEE)
   Nivel conceptual más alto de un sistema
   Principios que guían su diseño y evolución




                                   Servicios Web Semánticos para Arquitecturas SOA
Introducción


Service Oriented Architecture: Definición

Organización fundamental de un sistema descrita en:
servicios (componentes), la composición (relación) entre
éstos.
Características:
 Está basada en estándares.
 Los servicios son autónomos y granulares.
 Y los proveedores y consumidores, débilmente acoplados.

                                  Servicios Web Semánticos para Arquitecturas SOA
Introducción


¿Qué es un Servicio en SOA?
Unidad de software con una funcionalidad mínima, con las
siguientes características:
 Interfaz definida o Contrato de Servicio
      Descripción de cómo el servicio va a ser usado desde cualquier otro
       servicio o programa: Nombre, Parámetros, Resultado y Ubicación.
 Reutilizable y/o Componible con otros
      Pueda ser utilizado por más de una aplicación y/u otros servicios
         o Intranet o Internet: SaS, Cloud Computing
 Desacoplado
      Que para prestar su funcionalidad dependa en lo mínimo de otro servicio.
                                               Servicios Web Semánticos para Arquitecturas SOA
Introducción


Ejemplos de Servicios


 Consultar la hora
 Calcular monto literal
 Consultar Cliente
     Consultar datos básicos
     Consultar Cartera




                                Servicios Web Semánticos para Arquitecturas SOA
Agenda


1. Servicios Web
2. Arquitectura Orientada a Servicios
3. Componentes de SOA
4. UDDI y Repositorios de Web Services
5. Composición de Servicios
6. Beneficios de SOA
7. Framework WSO2 Carbon



                                  Servicios Web Semánticos para Arquitecturas SOA
Componentes de SOA


 Capas de SOA:




                    Arquitectura basada en estándares


 Funciones principales: Publicación, Descubrimiento y Composición de
  servicios


                                        Servicios Web Semánticos para Arquitecturas SOA
Componentes de SOA:
Publicación y Descubrimiento con el Estándar UDDI




UDDI (Universal Description, Discovery and Integration)
 IBM, Microsoft, HP y SAP proporcionaban UDDI públicos.
 UDDI privados: Windows 2003, jUDDI, Novell Nsure UDDI Server
 UDDI y Repositorios de Servicios Web
                                               Servicios Web Semánticos para Arquitecturas SOA
Agenda


1. Servicios Web
2. Arquitectura Orientada a Servicios
3. Componentes de SOA
4. UDDI y Repositorios de Web Services
5. Composición de Servicios
6. Beneficios de SOA
7. Framework WSO2 Carbono



                                  Servicios Web Semánticos para Arquitecturas SOA
UDDI y Repositorios de Web Services




                           Servicios Web Semánticos para Arquitecturas SOA
UDDI y Repositorios de Web Services




                           Servicios Web Semánticos para Arquitecturas SOA
Servicios Web Semánticos para Arquitecturas SOA
jUDDI
Publicación y Descubrimiento con el Estándar UDDI


1. get_authToken (API Security Police)

Solicitud:




Respuesta:




                                         Servicios Web Semánticos para Arquitecturas SOA
jUDDI
Publicación de servicios con UDDI



2. save_bussiness (API Publishing)

Solicitud:




                                     Servicios Web Semánticos para Arquitecturas SOA
jUDDI
Publicación de servicios con UDDI



2. save_bussiness (API Publishing)

Respuesta:




                                     Servicios Web Semánticos para Arquitecturas SOA
jUDDI
Publicación de servicios con UDDI



3. save_tModel (API Publishing)

Solicitud:




                                    Servicios Web Semánticos para Arquitecturas SOA
jUDDI
Publicación de servicios con UDDI



3. save_tModel (API Publishing)

Respuesta:




                                    Servicios Web Semánticos para Arquitecturas SOA
jUDDI
Publicación de servicios con UDDI



4. save_service (API Publishing)

Solicitud:




                                    Servicios Web Semánticos para Arquitecturas SOA
jUDDI
Publicación de servicios con UDDI



4. save_service (API Publishing)

Respuesta:




                                    Servicios Web Semánticos para Arquitecturas SOA
jUDDI
Descubrimiento de Servicios



API Inquiry:
 find_business, find_service, find_binding, find_tModel, find_relatedBusinesses,
 get_businessDetail, get_serviceDetail, get_bindingDetail, get_tModelDetail,
    get_operationalInfo.

Solicitud a get_serviceDetail:




                                                  Servicios Web Semánticos para Arquitecturas SOA
jUDDI
Descubrimiento de Servicios



Respuesta:




                              Servicios Web Semánticos para Arquitecturas SOA
jUDDI




Librerías:
 API Security Policy
 API Publishing
 API Inquiry

                        Servicios Web Semánticos para Arquitecturas SOA
Agenda


1. Servicios Web
2. Arquitectura Orientada a Servicios
3. Componentes de SOA
4. UDDI y Repositorios de Web Services
5. Composición de Servicios
6. Beneficios de SOA
7. Framework WSO2 Carbon



                                  Servicios Web Semánticos para Arquitecturas SOA
Composición de Servicios (Orquestación)


Unir dos o más servicios, con alguna lógica, para crear otro
servicio más complejo.

 Esa lógica depende de los procesos del negocio: simple o secuencial
 Estos servicios más complejos se pueden crear con lenguajes diferentes a
  los servicios básicos, como BPEL.
 La administración, metodología y estándares utilizados para estos
  procesos es lo que se conoce como BPM (Business Process Management).




                                         Servicios Web Semánticos para Arquitecturas SOA
Composición de Servicios


Ejemplo de un proceso de negocio: Venta de Libros




                                    Servicio Web del almacén




                                    Servicio Web del pago online


                                    Servicio Web de la empresa
                                    de mensajería




                                            Servicios Web Semánticos para Arquitecturas SOA
Composición de Servicios


Proceso de negocio en BPEL:




                              Servicios Web Semánticos para Arquitecturas SOA
Agenda


1. Servicios Web
2. Arquitectura Orientada a Servicios
3. Componentes de SOA
4. UDDI y Repositorios de Web Services
5. Composición de Servicios
6. Beneficios de SOA
7. Framework WSO2 Carbon



                                  Servicios Web Semánticos para Arquitecturas SOA
Beneficios de SOA




                    Servicios Web Semánticos para Arquitecturas SOA
Beneficios de SOA


Beneficios a nivel de empresa

 Reducción de la dependencia tecnológica
 Simplificación del desarrollo
 Aumento de la flexibilidad y reutilización de la infraestructura
  del negocio
 Mitigación del riesgo
 Reducción de costos




                                     Servicios Web Semánticos para Arquitecturas SOA
Agenda


1. Servicios Web
2. Arquitectura Orientada a Servicios
3. Componentes de SOA
4. UDDI y Repositorios de Web Services
5. Composición de Servicios
6. Beneficios de SOA
7. Framework WSO2 Carbon



                                  Servicios Web Semánticos para Arquitecturas SOA
Framework SOA: WSO2 Carbon




                        Servicios Web Semánticos para Arquitecturas SOA
SOA (Service Oriented Architecture)
 Arquitectura Orientada a Servicios

          Lucio Marcelo Quispe Ortega
              mache.lmqo@gmail.com
        marcelo.quispe@consultora-devian.net

 XIX Aniversario de la Carrera de Ingeniería de Sistemas
           Ciclo de Conferencias Magistrales


                                                            Noviembre, 2011
                                  Servicios Web Semánticos para Arquitecturas SOA
1 de 43

Recomendados

Diagramas componentes por
Diagramas componentesDiagramas componentes
Diagramas componentesRene Guaman-Quinche
961 vistas29 diapositivas
Arquitecturas de pizarra o repositório por
Arquitecturas de pizarra o repositórioArquitecturas de pizarra o repositório
Arquitecturas de pizarra o repositóriorehoscript
8.2K vistas13 diapositivas
Ingenieria de requerimientos 1 por
Ingenieria de requerimientos 1Ingenieria de requerimientos 1
Ingenieria de requerimientos 1jmpov441
33.3K vistas28 diapositivas
Ejemplo plan de desarrollo de software rup por
Ejemplo plan de desarrollo de software rupEjemplo plan de desarrollo de software rup
Ejemplo plan de desarrollo de software rupXochitl Saucedo Muñoz
87.7K vistas16 diapositivas
Arquitectura de cliente-servidor de tres capas por
Arquitectura de cliente-servidor de tres capasArquitectura de cliente-servidor de tres capas
Arquitectura de cliente-servidor de tres capasanibalsmit
6.6K vistas11 diapositivas
Proyecto Final - Calidad de Software por
Proyecto Final - Calidad de SoftwareProyecto Final - Calidad de Software
Proyecto Final - Calidad de SoftwareYessenia I. Martínez M.
15.4K vistas45 diapositivas

Más contenido relacionado

La actualidad más candente

Casos de Uso ejercicios por
Casos de Uso ejerciciosCasos de Uso ejercicios
Casos de Uso ejerciciosWalter Chacon
31.7K vistas35 diapositivas
Ventajas y desventajas de los servidores apache y IIS por
Ventajas y desventajas de los servidores apache y IISVentajas y desventajas de los servidores apache y IIS
Ventajas y desventajas de los servidores apache y IISelianaespinoza
23.5K vistas3 diapositivas
Diagramas UML por
Diagramas UMLDiagramas UML
Diagramas UMLNadiia Val Castellanos Daniel
2.9K vistas36 diapositivas
Vista lógica por
Vista lógicaVista lógica
Vista lógicathyago1211
19.1K vistas74 diapositivas
Diagramas de paquetes por
Diagramas de paquetesDiagramas de paquetes
Diagramas de paquetesMoises Cruz
33.1K vistas8 diapositivas
Metodologías Para AnáLisis Y DiseñO Orientado A Objetos por
Metodologías Para AnáLisis Y DiseñO Orientado A ObjetosMetodologías Para AnáLisis Y DiseñO Orientado A Objetos
Metodologías Para AnáLisis Y DiseñO Orientado A Objetoshector_h30
22.2K vistas33 diapositivas

La actualidad más candente(20)

Casos de Uso ejercicios por Walter Chacon
Casos de Uso ejerciciosCasos de Uso ejercicios
Casos de Uso ejercicios
Walter Chacon31.7K vistas
Ventajas y desventajas de los servidores apache y IIS por elianaespinoza
Ventajas y desventajas de los servidores apache y IISVentajas y desventajas de los servidores apache y IIS
Ventajas y desventajas de los servidores apache y IIS
elianaespinoza23.5K vistas
Vista lógica por thyago1211
Vista lógicaVista lógica
Vista lógica
thyago121119.1K vistas
Diagramas de paquetes por Moises Cruz
Diagramas de paquetesDiagramas de paquetes
Diagramas de paquetes
Moises Cruz33.1K vistas
Metodologías Para AnáLisis Y DiseñO Orientado A Objetos por hector_h30
Metodologías Para AnáLisis Y DiseñO Orientado A ObjetosMetodologías Para AnáLisis Y DiseñO Orientado A Objetos
Metodologías Para AnáLisis Y DiseñO Orientado A Objetos
hector_h3022.2K vistas
Lectura 3 Modelo De Analisis por guest0a6e49
Lectura 3   Modelo De AnalisisLectura 3   Modelo De Analisis
Lectura 3 Modelo De Analisis
guest0a6e4926K vistas
Modelado de requisitos por Kleo Jorgee
Modelado de requisitosModelado de requisitos
Modelado de requisitos
Kleo Jorgee14.9K vistas
Introducción a las Arquitecturas Orientadas a Servicios por Marta Silvia Tabares
Introducción a las Arquitecturas Orientadas a ServiciosIntroducción a las Arquitecturas Orientadas a Servicios
Introducción a las Arquitecturas Orientadas a Servicios
Unidad 2. modelo entidad relacion por LuiS YmAY
Unidad 2. modelo entidad relacionUnidad 2. modelo entidad relacion
Unidad 2. modelo entidad relacion
LuiS YmAY14.7K vistas
Modelos de software ventajas y desventajas por Edith Carreño
Modelos de software ventajas y desventajasModelos de software ventajas y desventajas
Modelos de software ventajas y desventajas
Edith Carreño29.1K vistas
Modelo componentes por martin
Modelo componentesModelo componentes
Modelo componentes
martin20.9K vistas

Destacado

Ley n° 1178 warisata por
Ley n° 1178 warisataLey n° 1178 warisata
Ley n° 1178 warisatawarisata
20.7K vistas103 diapositivas
Introducción a SOA por
Introducción a SOAIntroducción a SOA
Introducción a SOAJuan Camilo Parra
1.6K vistas29 diapositivas
Sistemas Distribuidos Arquitectura XML SOA Middleware Web Services por
Sistemas Distribuidos Arquitectura XML SOA Middleware Web ServicesSistemas Distribuidos Arquitectura XML SOA Middleware Web Services
Sistemas Distribuidos Arquitectura XML SOA Middleware Web ServicesJulio Pari
2.7K vistas11 diapositivas
SOA por
SOASOA
SOANatasha Ramírez
1.3K vistas23 diapositivas
SOA para Novatos por
SOA para NovatosSOA para Novatos
SOA para NovatosMauricio Caceres
11.7K vistas36 diapositivas
Soa y los servicios web de segunda generacion por
Soa y los servicios web de segunda generacionSoa y los servicios web de segunda generacion
Soa y los servicios web de segunda generacionwachu wachu pi
615 vistas2 diapositivas

Destacado(7)

Ley n° 1178 warisata por warisata
Ley n° 1178 warisataLey n° 1178 warisata
Ley n° 1178 warisata
warisata20.7K vistas
Sistemas Distribuidos Arquitectura XML SOA Middleware Web Services por Julio Pari
Sistemas Distribuidos Arquitectura XML SOA Middleware Web ServicesSistemas Distribuidos Arquitectura XML SOA Middleware Web Services
Sistemas Distribuidos Arquitectura XML SOA Middleware Web Services
Julio Pari2.7K vistas
Soa y los servicios web de segunda generacion por wachu wachu pi
Soa y los servicios web de segunda generacionSoa y los servicios web de segunda generacion
Soa y los servicios web de segunda generacion
wachu wachu pi615 vistas
Architectural Layers for SOA por ukdpe
Architectural Layers for SOAArchitectural Layers for SOA
Architectural Layers for SOA
ukdpe679 vistas

Similar a Arquitectura Orientada a Servicios (SOA)

Benchmarking por
BenchmarkingBenchmarking
BenchmarkingUJAP
459 vistas128 diapositivas
Soa por
SoaSoa
SoaUJAP
958 vistas128 diapositivas
SOA por
SOASOA
SOApruebasj
1.2K vistas128 diapositivas
Resumido por
ResumidoResumido
Resumidoguest639eba
592 vistas59 diapositivas
3/9 soa y web services por
3/9 soa y web services3/9 soa y web services
3/9 soa y web servicesJuan Carlos Rubio Pineda
3K vistas64 diapositivas
Web Services en .NET Compact Framework por
Web Services en .NET Compact FrameworkWeb Services en .NET Compact Framework
Web Services en .NET Compact FrameworkUTPc09071
708 vistas16 diapositivas

Similar a Arquitectura Orientada a Servicios (SOA)(20)

Benchmarking por UJAP
BenchmarkingBenchmarking
Benchmarking
UJAP459 vistas
Soa por UJAP
SoaSoa
Soa
UJAP958 vistas
SOA por pruebasj
SOASOA
SOA
pruebasj1.2K vistas
Web Services en .NET Compact Framework por UTPc09071
Web Services en .NET Compact FrameworkWeb Services en .NET Compact Framework
Web Services en .NET Compact Framework
UTPc09071708 vistas
[ES] Construyendo Servicios Web con JDeveloper por Eudris Cabrera
[ES] Construyendo Servicios Web con JDeveloper[ES] Construyendo Servicios Web con JDeveloper
[ES] Construyendo Servicios Web con JDeveloper
Eudris Cabrera2.4K vistas
Web Services Evento Bea Systems por BaltaCarretero
Web Services Evento Bea SystemsWeb Services Evento Bea Systems
Web Services Evento Bea Systems
BaltaCarretero796 vistas
SOA en la Práctica: WCF & WSSF por juliocasal
SOA en la Práctica: WCF & WSSFSOA en la Práctica: WCF & WSSF
SOA en la Práctica: WCF & WSSF
juliocasal809 vistas
Soa expo por lizombie
Soa expoSoa expo
Soa expo
lizombie191 vistas
Integracion de soluciones SOA.pptx por medina2966
Integracion de soluciones SOA.pptxIntegracion de soluciones SOA.pptx
Integracion de soluciones SOA.pptx
medina29664 vistas
Portales Enterprise 2.0 con WebCenter por Jaime Cid
Portales Enterprise 2.0 con WebCenterPortales Enterprise 2.0 con WebCenter
Portales Enterprise 2.0 con WebCenter
Jaime Cid731 vistas
23444719 monografia-de-web-services por casper088
23444719 monografia-de-web-services23444719 monografia-de-web-services
23444719 monografia-de-web-services
casper088856 vistas
Sharepoint server 2010 - La nueva colaboración por Andrés Iturralde
Sharepoint server 2010  - La nueva colaboraciónSharepoint server 2010  - La nueva colaboración
Sharepoint server 2010 - La nueva colaboración
Andrés Iturralde1.2K vistas

Último

Tarea15.pptx por
Tarea15.pptxTarea15.pptx
Tarea15.pptxillanlir
9 vistas6 diapositivas
Como sacar el máximo partido a los Cores de MuleSoft - optimización y buenas ... por
Como sacar el máximo partido a los Cores de MuleSoft - optimización y buenas ...Como sacar el máximo partido a los Cores de MuleSoft - optimización y buenas ...
Como sacar el máximo partido a los Cores de MuleSoft - optimización y buenas ...Francisco Javier Toscano Lopez
36 vistas29 diapositivas
Meetup_Secrets_of_DW_2_Esp.pptx por
Meetup_Secrets_of_DW_2_Esp.pptxMeetup_Secrets_of_DW_2_Esp.pptx
Meetup_Secrets_of_DW_2_Esp.pptxFedericoCastellari
10 vistas15 diapositivas
¡Planificando para el éxito! Usando los Planners de Semantic Kernel para real... por
¡Planificando para el éxito! Usando los Planners de Semantic Kernel para real...¡Planificando para el éxito! Usando los Planners de Semantic Kernel para real...
¡Planificando para el éxito! Usando los Planners de Semantic Kernel para real...codertectura
57 vistas19 diapositivas
Google alternativo, para volar por
Google alternativo, para volarGoogle alternativo, para volar
Google alternativo, para volarcorpbracat
9 vistas1 diapositiva
Tecnologías para la enseñanza virtual.pptx por
Tecnologías para la enseñanza virtual.pptxTecnologías para la enseñanza virtual.pptx
Tecnologías para la enseñanza virtual.pptxexprosaavedra
9 vistas7 diapositivas

Último(17)

Tarea15.pptx por illanlir
Tarea15.pptxTarea15.pptx
Tarea15.pptx
illanlir9 vistas
¡Planificando para el éxito! Usando los Planners de Semantic Kernel para real... por codertectura
¡Planificando para el éxito! Usando los Planners de Semantic Kernel para real...¡Planificando para el éxito! Usando los Planners de Semantic Kernel para real...
¡Planificando para el éxito! Usando los Planners de Semantic Kernel para real...
codertectura57 vistas
Google alternativo, para volar por corpbracat
Google alternativo, para volarGoogle alternativo, para volar
Google alternativo, para volar
corpbracat9 vistas
Tecnologías para la enseñanza virtual.pptx por exprosaavedra
Tecnologías para la enseñanza virtual.pptxTecnologías para la enseñanza virtual.pptx
Tecnologías para la enseñanza virtual.pptx
exprosaavedra9 vistas
Presentación: El impacto y peligro de la piratería de software por EmanuelMuoz11
Presentación: El impacto y peligro de la piratería de softwarePresentación: El impacto y peligro de la piratería de software
Presentación: El impacto y peligro de la piratería de software
EmanuelMuoz1116 vistas
FUNDAMENTOS DE ELECTRICIDAD Y ELECTRONICA.pdf por ortizjuanjose591
FUNDAMENTOS DE ELECTRICIDAD Y ELECTRONICA.pdfFUNDAMENTOS DE ELECTRICIDAD Y ELECTRONICA.pdf
FUNDAMENTOS DE ELECTRICIDAD Y ELECTRONICA.pdf
ortizjuanjose5915 vistas
Probando aplicaciones basadas en LLMs.pdf por Federico Toledo
Probando aplicaciones basadas en LLMs.pdfProbando aplicaciones basadas en LLMs.pdf
Probando aplicaciones basadas en LLMs.pdf
Federico Toledo45 vistas
El Ciberespacio y sus Características.pptx por AnthlingPereira
El Ciberespacio y  sus Características.pptxEl Ciberespacio y  sus Características.pptx
El Ciberespacio y sus Características.pptx
AnthlingPereira7 vistas
Fundamentos De Electricidad y Electrónica equipo 5.pdf por coloradxmaria
Fundamentos De Electricidad y Electrónica equipo 5.pdfFundamentos De Electricidad y Electrónica equipo 5.pdf
Fundamentos De Electricidad y Electrónica equipo 5.pdf
coloradxmaria13 vistas

Arquitectura Orientada a Servicios (SOA)

  • 1. SOA (Service Oriented Architecture) Arquitectura Orientada a Servicios Lucio Marcelo Quispe Ortega mache.lmqo@gmail.com marcelo.quispe@consultora-devian.net XIX Aniversario de la Carrera de Ingeniería de Sistemas Ciclo de Conferencias Magistrales Noviembre, 2011
  • 2. Agenda 1. Servicios Web 2. Arquitectura Orientada a Servicios 3. Componentes de SOA 4. UDDI y Repositorios de Web Services 5. Composición de Servicios 6. Beneficios de SOA 7. Framework WSO2 Carbon Servicios Web Semánticos para Arquitecturas SOA
  • 3. Agenda 1. Servicios Web 2. Arquitectura Orientada a Servicios 3. Componentes de SOA 4. UDDI y Repositorios de Web Services 5. Composición de Servicios 6. Beneficios de SOA 7. Framework WSO2 Carbon Servicios Web Semánticos para Arquitecturas SOA
  • 4. Servicios Web ¿Qué es un Servicio Web? Componente de Software que utiliza un conjunto de protocolos y estándares para intercambiar datos entre aplicaciones sobre una red. (OASIS y W3C) Los Servicios Web suelen ser considerados como APIs Web que pueden ser accedidos dentro de una red (principalmente Internet) y ejecutados en el sistema que los aloja. Servicios Web Semánticos para Arquitecturas SOA
  • 5. Servicios Web ¿Cuáles son sus características?  Son interoperables  Superan las barreras geográficas  Por naturaleza son flexibles  Se basan en el protocolo HTTP Servicios Web Semánticos para Arquitecturas SOA
  • 6. Servicios Web ¿Cuál es la tecnología empleada?: SOAP vs. REST Servicios Web Semánticos para Arquitecturas SOA
  • 7. Servicios Web Desarrollo de Servicios bajo SOAP Servicios Web Semánticos para Arquitecturas SOA
  • 8. Servicios Web Desarrollo de Servicios bajo SOAP WSDL: Web Services Description Language Servicios Web Semánticos para Arquitecturas SOA
  • 9. Servicios Web Desarrollo de Servicios bajo REST Servicios Web Semánticos para Arquitecturas SOA
  • 10. Servicios Web Desarrollo de Servicios bajo REST WADL: Web Application Description Language Servicios Web Semánticos para Arquitecturas SOA
  • 11. Agenda 1. Servicios Web 2. Arquitectura Orientada a Servicios 3. Componentes de SOA 4. UDDI y Repositorios de Web Services 5. Composición de Servicios 6. Beneficios de SOA 7. Framework WSO2 Carbon Servicios Web Semánticos para Arquitecturas SOA
  • 12. Introducción Antecedentes:  Inicia a mediados de los 80s.  1996: Gartner Inc. describe por primera vez SOA en sus artículos: “Service Oriented” Architectures, Part 1 y “Service Oriented” Architectures, Part 2.  2003: entra en las TI empresariales, a través de los Servicios Web. Servicios Web Semánticos para Arquitecturas SOA
  • 13. Introducción Arquitectura de Software  Organización fundamental de un sistema descrita en sus componentes, la relación entre ellos y con el ambiente (IEEE) Nivel conceptual más alto de un sistema Principios que guían su diseño y evolución Servicios Web Semánticos para Arquitecturas SOA
  • 14. Introducción Service Oriented Architecture: Definición Organización fundamental de un sistema descrita en: servicios (componentes), la composición (relación) entre éstos. Características:  Está basada en estándares.  Los servicios son autónomos y granulares.  Y los proveedores y consumidores, débilmente acoplados. Servicios Web Semánticos para Arquitecturas SOA
  • 15. Introducción ¿Qué es un Servicio en SOA? Unidad de software con una funcionalidad mínima, con las siguientes características:  Interfaz definida o Contrato de Servicio  Descripción de cómo el servicio va a ser usado desde cualquier otro servicio o programa: Nombre, Parámetros, Resultado y Ubicación.  Reutilizable y/o Componible con otros  Pueda ser utilizado por más de una aplicación y/u otros servicios o Intranet o Internet: SaS, Cloud Computing  Desacoplado  Que para prestar su funcionalidad dependa en lo mínimo de otro servicio. Servicios Web Semánticos para Arquitecturas SOA
  • 16. Introducción Ejemplos de Servicios  Consultar la hora  Calcular monto literal  Consultar Cliente  Consultar datos básicos  Consultar Cartera Servicios Web Semánticos para Arquitecturas SOA
  • 17. Agenda 1. Servicios Web 2. Arquitectura Orientada a Servicios 3. Componentes de SOA 4. UDDI y Repositorios de Web Services 5. Composición de Servicios 6. Beneficios de SOA 7. Framework WSO2 Carbon Servicios Web Semánticos para Arquitecturas SOA
  • 18. Componentes de SOA  Capas de SOA: Arquitectura basada en estándares  Funciones principales: Publicación, Descubrimiento y Composición de servicios Servicios Web Semánticos para Arquitecturas SOA
  • 19. Componentes de SOA: Publicación y Descubrimiento con el Estándar UDDI UDDI (Universal Description, Discovery and Integration)  IBM, Microsoft, HP y SAP proporcionaban UDDI públicos.  UDDI privados: Windows 2003, jUDDI, Novell Nsure UDDI Server  UDDI y Repositorios de Servicios Web Servicios Web Semánticos para Arquitecturas SOA
  • 20. Agenda 1. Servicios Web 2. Arquitectura Orientada a Servicios 3. Componentes de SOA 4. UDDI y Repositorios de Web Services 5. Composición de Servicios 6. Beneficios de SOA 7. Framework WSO2 Carbono Servicios Web Semánticos para Arquitecturas SOA
  • 21. UDDI y Repositorios de Web Services Servicios Web Semánticos para Arquitecturas SOA
  • 22. UDDI y Repositorios de Web Services Servicios Web Semánticos para Arquitecturas SOA
  • 23. Servicios Web Semánticos para Arquitecturas SOA
  • 24. jUDDI Publicación y Descubrimiento con el Estándar UDDI 1. get_authToken (API Security Police) Solicitud: Respuesta: Servicios Web Semánticos para Arquitecturas SOA
  • 25. jUDDI Publicación de servicios con UDDI 2. save_bussiness (API Publishing) Solicitud: Servicios Web Semánticos para Arquitecturas SOA
  • 26. jUDDI Publicación de servicios con UDDI 2. save_bussiness (API Publishing) Respuesta: Servicios Web Semánticos para Arquitecturas SOA
  • 27. jUDDI Publicación de servicios con UDDI 3. save_tModel (API Publishing) Solicitud: Servicios Web Semánticos para Arquitecturas SOA
  • 28. jUDDI Publicación de servicios con UDDI 3. save_tModel (API Publishing) Respuesta: Servicios Web Semánticos para Arquitecturas SOA
  • 29. jUDDI Publicación de servicios con UDDI 4. save_service (API Publishing) Solicitud: Servicios Web Semánticos para Arquitecturas SOA
  • 30. jUDDI Publicación de servicios con UDDI 4. save_service (API Publishing) Respuesta: Servicios Web Semánticos para Arquitecturas SOA
  • 31. jUDDI Descubrimiento de Servicios API Inquiry:  find_business, find_service, find_binding, find_tModel, find_relatedBusinesses,  get_businessDetail, get_serviceDetail, get_bindingDetail, get_tModelDetail, get_operationalInfo. Solicitud a get_serviceDetail: Servicios Web Semánticos para Arquitecturas SOA
  • 32. jUDDI Descubrimiento de Servicios Respuesta: Servicios Web Semánticos para Arquitecturas SOA
  • 33. jUDDI Librerías:  API Security Policy  API Publishing  API Inquiry Servicios Web Semánticos para Arquitecturas SOA
  • 34. Agenda 1. Servicios Web 2. Arquitectura Orientada a Servicios 3. Componentes de SOA 4. UDDI y Repositorios de Web Services 5. Composición de Servicios 6. Beneficios de SOA 7. Framework WSO2 Carbon Servicios Web Semánticos para Arquitecturas SOA
  • 35. Composición de Servicios (Orquestación) Unir dos o más servicios, con alguna lógica, para crear otro servicio más complejo.  Esa lógica depende de los procesos del negocio: simple o secuencial  Estos servicios más complejos se pueden crear con lenguajes diferentes a los servicios básicos, como BPEL.  La administración, metodología y estándares utilizados para estos procesos es lo que se conoce como BPM (Business Process Management). Servicios Web Semánticos para Arquitecturas SOA
  • 36. Composición de Servicios Ejemplo de un proceso de negocio: Venta de Libros Servicio Web del almacén Servicio Web del pago online Servicio Web de la empresa de mensajería Servicios Web Semánticos para Arquitecturas SOA
  • 37. Composición de Servicios Proceso de negocio en BPEL: Servicios Web Semánticos para Arquitecturas SOA
  • 38. Agenda 1. Servicios Web 2. Arquitectura Orientada a Servicios 3. Componentes de SOA 4. UDDI y Repositorios de Web Services 5. Composición de Servicios 6. Beneficios de SOA 7. Framework WSO2 Carbon Servicios Web Semánticos para Arquitecturas SOA
  • 39. Beneficios de SOA Servicios Web Semánticos para Arquitecturas SOA
  • 40. Beneficios de SOA Beneficios a nivel de empresa  Reducción de la dependencia tecnológica  Simplificación del desarrollo  Aumento de la flexibilidad y reutilización de la infraestructura del negocio  Mitigación del riesgo  Reducción de costos Servicios Web Semánticos para Arquitecturas SOA
  • 41. Agenda 1. Servicios Web 2. Arquitectura Orientada a Servicios 3. Componentes de SOA 4. UDDI y Repositorios de Web Services 5. Composición de Servicios 6. Beneficios de SOA 7. Framework WSO2 Carbon Servicios Web Semánticos para Arquitecturas SOA
  • 42. Framework SOA: WSO2 Carbon Servicios Web Semánticos para Arquitecturas SOA
  • 43. SOA (Service Oriented Architecture) Arquitectura Orientada a Servicios Lucio Marcelo Quispe Ortega mache.lmqo@gmail.com marcelo.quispe@consultora-devian.net XIX Aniversario de la Carrera de Ingeniería de Sistemas Ciclo de Conferencias Magistrales Noviembre, 2011 Servicios Web Semánticos para Arquitecturas SOA