200 likes | 377 Views
Metodología SOA. Desarrollo de aplicaciones empresariales con Web Services. Ing. Amparo Olaya Benavides. Metodología SOA. Plan de trabajo. Conceptos Básicos de SOA Modelos de madurez para SOA Análisis y diseño orientado a servicios SOA dentro de la organización SOA y Web Services
E N D
Metodología SOA Desarrollo de aplicaciones empresariales con Web Services Ing. Amparo Olaya Benavides
Metodología SOA Plan de trabajo • Conceptos Básicos de SOA • Modelos de madurez para SOA • Análisis y diseño orientado a servicios • SOA dentro de la organización • SOA y Web Services • El mercado SOA Ing. Amparo Olaya Benavides
Metodología SOA Service Oriented Architecture (SOA). Is a computer systems architectural style for creating and using business processes, packaged as services, throughout their lifecycle. SOA also defines and provisions the IT infrastructure to allow different applications to exchange data and participate in business processes. These functions are loosely coupled with the operating systems and programming languages underlying the applications. SOA separates functions into distinct units (services), which can be distributed over a network and can be combined and reused to create business applications. These services communicate with each other by passing data from one service to another, or by coordinating an activity between two or more services Ing. Amparo Olaya Benavides
Metodología SOA Conceptos Servicio Una función sin estado, auto-contenida, que acepta una o mas llamada y devuelve una o más respuesta mediante una interfaz bien definida. 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. Coordinación. Ing. Amparo Olaya Benavides
Metodología SOA Conceptos Sin estado No mantiene ni depende de condición pre-existente alguna. 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. Debido a que los servicios son "sin estado", pueden ser secuenciados (orquestados) en numerosas secuencias (algunas veces llamadas tuberías o pipelines) para realizar la lógica del negocio. Ing. Amparo Olaya Benavides
Metodología SOA Conceptos 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 Ing. Amparo Olaya Benavides
Metodología SOA Conceptos La metodología de modelado y diseño para aplicaciones SOA se conoce como análisis y diseño orientado a servicios La arquitectura orientada a servicios es tanto un marco de trabajo para el desarrollo de software como un marco de trabajo de implementación Para que un proyecto SOA tenga éxito los desarrolladores de software deben orientarse ellos mismos a esta mentalidad de crear servicios comunes que son orquestados por clientes o middleware para implementar los procesos de negocio Ing. Amparo Olaya Benavides
Metodología SOA Conceptos En la actualidad el concepto de SOA ha resurgido, gracias al auge y madurez de los Web Services Los Web Services se han convertido en el estandarte de SOA, ya que esta tecnología posee un conjunto de características que permiten cubrir todos los principios de la orientación a servicios. • Se pueden generar dos tipos de Arquitecturas Orientadas a Servicios: • Arquitectura Orientada a Servicios Tradicional. • Arquitectura Orientada a Servicios de segunda generación Ing. Amparo Olaya Benavides
Metodología SOA Conceptos SOA Tradicional La SOA Tradicional es aquella que utiliza los principios y tecnologías básicos de los Web Services. Esto significa utilizar SOAP como lenguaje de intercambio, WSDL como lenguaje para la descripción de los servicios y UDDI para la publicación o registro de los mismos. En la imagen se puede ver la estructura básica de funcionamiento de una SOA tradicional. Ing. Amparo Olaya Benavides
Metodología SOA Conceptos Estructura básica de funcionamiento de una SOA tradicional. Ing. Amparo Olaya Benavides
Metodología SOA Conceptos Estructura básica de funcionamiento de una SOA tradicional. Cliente del servicio: Es el que solicita la ejecución del servicio Web, y por lo tanto el que lo consume. Proveedor del servicio: Es el encargado de implementar el servicio Web y ofrecerlo a los clientes. Registro del servicio: Es un repositorio donde se almacenan las descripciones de los servicios, para que así los clientes puedan buscar el servicio Web que mejor se adapte a sus necesidades. Ing. Amparo Olaya Benavides
Metodología SOA Conceptos Estructura básica de funcionamiento de una SOA tradicional. • secuencia de ejecución • El proveedor del servicio da de alta el servicio Web en el registro. Para realizar esto, el proveedor almacena en el registro el documento de descripción de este. • 2. El solicitante del servicio busca en el registro un servicio Web que pueda adaptarse a sus necesidades. • 3. Una vez seleccionado el servicio, el solicitante lo invoca mediante el envío de un mensaje SOAP, en el cual se indica la acción a realizar y los datos de entrada. • 4. El servicio Web recibe la petición y ejecuta la funcionalidad. Para finalizar envía un mensaje SOAP al solicitante con los resultados obtenidos. Ing. Amparo Olaya Benavides
Metodología SOA Conceptos Estructura básica de funcionamiento de una SOA tradicional. una SOA tradicional estará compuesta por un conjunto de servicios que reciben y envían mensajes SOAP(Simple Object Access Protocol) en base a una descripción WSDL. Este tipo de arquitecturas hoy en día es muy utilizado, pero no es el más óptimo debido a que no proporciona una serie de características esenciales a la hora de crear una Arquitectura profesional. • Seguridad • Transaccionabilidad • Garantía de entrega • Orquestación • Coreografía • Direccionamiento Ing. Amparo Olaya Benavides
Metodología SOA Conceptos SOA de segunda generación Está basado en el SOA tradicional, añadiendo lo necesario para cubrir sus carencias. Es decir, proporciona los elementos necesarios para cumplir con todos los principios de la orientación a objetos Ing. Amparo Olaya Benavides
Metodología SOA Conceptos SOA de segunda generación Ing. Amparo Olaya Benavides
Metodología SOA Conceptos SOA de segunda generación - Funciones Transporte: Mecanismo utilizado para trasladar las peticiones desde el cliente, hasta el proveedor del servicio, y viceversa. Protocolo de comunicación: Es el sistema de comunicación entre el cliente y el proveedor de servicios. Descripción del servicio: Es un esquema utilizado para describir qué servicio es, como se le puede invocar, y cuales son los datos necesarios para realizar su invocación. Ing. Amparo Olaya Benavides
Metodología SOA Conceptos SOA de segunda generación - Funciones Servicio: Es la implementación del servicio. Proceso de negocio: Colección de servicios, invocados en una determinada secuencia, con un conjunto particular de reglas para satisfaces un requisito de negocio. Registro de servicios: Repositorio de servicios y datos, usado por los proveedores de servicio y publicar los servicios, y para los clientes, donde buscarlos. Ing. Amparo Olaya Benavides
Metodología SOA Conceptos SOA de segunda generación - Calidad Política: Conjunto de reglas bajo las cuales, un proveedor de servicio hace que el servicio esté disponible para los clientes (WS-Policy). Seguridad: Conjunto de reglas que podrían ser aplicadas en la identificación, autorización y control de acceso a los servicios, por parte del cliente (WS-Security). Transacción: Conjunto de atributos que podrían ser aplicados sobre un grupo de servicios para devolver un conjunto de datos consistentes (WS-Transaction, WS-Coordination). Gestión: Conjunto de atributos que podrían ser aplicados para gestionar los servicios proporcionados (WS-Manageability). Ing. Amparo Olaya Benavides
Metodología SOA Modelo de madurez para SOA ……. Ing. Amparo Olaya Benavides