Arquitectura Orientada Servicio
Enviado por jeanbayadares • 22 de Enero de 2014 • 4.093 Palabras (17 Páginas) • 647 Visitas
Arquitectura orientada servicios (Service Oriented Architecture),
La arquitectura orientada a los servicios SOA, es uno de los términos de moda. Sin ser una solución para todo tipo de aplicaciones, lo cierto es que tiene importantes ventajas para dar respuesta a problemas empresariales.
El concepto de SOA (Service Oriented Architecture) ofrece un marco de trabajo para alinear los procesos de negocio con los sistemas de TI. Es una plataforma de servicios que representan procesos de negocio y que se combinan entre sí para ofrecer soluciones adecuadas a las diferentes necesidades de negocio.
Entre las ventajas más evidentes e inmediatas, se encuentra la de ofrecer mayor flexibilidad y la de reutilizar procesos para acomodarlos en el nuevo sistema de información de la empresa, consiguiendo así la adaptación al cambio con el menor costo y tiempo posible.
Cuando hablamos de arquitectura orientada a servicio podemos manejar varios conceptos:
es un concepto de arquitectura de software que define la utilización de servicios para dar soporte a los requisitos del negocio.
Permite la creación de sistemas de información altamente escalables que reflejan el negocio de la organización, a su vez brinda una forma bien definida de exposición e invocación de servicios (comúnmente pero no exclusivamente servicios web), lo cual facilita la interacción entre diferentes sistemas propios o de terceros.
Una arquitectura orientada a servicios es una colección de servicios que se comunican unos con otros. Los servicios son auto contenido y no dependen del contexto o estado de otros servicios. Funcionan dentro de una arquitectura de sistemas distribuida.
Arquitectura orientada a servicios es un paradigma para organizar y utilizar capacidades distribuidas que pueden estar bajo el control de distintos dueños. Provee una manera uniforme de ofrecer, descubrir, interactuar y usar capacidades para producir efectos deseados consistentes con condiciones y expectativas mesurables. (OASIS)
es un marco de trabajo conceptual, no se trata de hardware, software o de un lenguaje de programación. Es la unión de los objetivos de negocio con la infraestructura tecnológica, integrando la lógica del negocio y los datos de todos sus sistemas, aprovechando la red y los Web Services. Esta arquitectura describe los aspectos estándares de los servicios para entregar procesos de negocios, desarrollando para ello interfaces entre servicios para que cooperen fácilmente.
es un modelo de componentes que interrelaciona las diferentes unidades funcionales de las aplicaciones, denominadas servicios, a través de interfaces y contratos bien definidos entre esos servicios. La interfaz se define de forma neutral, y debería ser independiente de la plataforma hardware, del sistema operativo y del lenguaje de programación utilizado. Esto permite a los servicios, construidos sobre sistemas heterogéneos, interactuar entre ellos de una manera uniforme y universal.”1
"La Arquitectura SOA establece un marco de diseño para la integración de aplicaciones independientes
de manera que desde la red pueda accederse a sus funcionalidades, las cuales se ofrecen como servicios.
Fundamentos
De manera genérica se fundamente en los siguientes frentes:
• Ejecutar rápido, adaptarse al mercado, ganar ante la competencia.
• Reutilizar los componentes de los procesos de negocios.
• Medir los resultados y tomar acción sobre ellos.
• Garantizar resultados que sean repetibles y predecibles.
• Empezar donde sea necesario (área de negocios - área de tecnología).
Beneficios
• Reducir los costos y el tiempo de desarrollo: Los servicios SOA pueden reutilizarse fácilmente y pueden convertirse en nuevas aplicaciones compuestas
• Reducir los costos de mantenimiento: Los servicios reutilizables reducen el grado de complejidad interna de los servicios de IT
• Aumentar la calidad de los servicios: Una mayor reutilización de servicios crea servicios de mejor calidad en múltiples ciclos de prueba de diferentes consumidores de servicios
• Reducir los costos de integración: Los servicios estandarizados pueden trabajar en conjunto, permitiendo que las aplicaciones dispares se conecten con rapidez y facilidad
• Reducir el riesgo: Menos servicios reutilizables brindan mayor control sobre las políticas gubernamentales de IT y corporativas, y reducen el riesgo general relacionado con el cumplimiento.
Beneficios
Los beneficios que puede obtener una organización que adopte SOA son:
• 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.
SOA define las siguientes capas de software:
• Aplicaciones básicas - Sistemas desarrollados bajo cualquier arquitectura o tecnología, geográficamente dispersos y bajo cualquier figura de propiedad;
• De exposición de funcionalidades - Donde las funcionalidades de la capa aplicativa son expuestas en forma de servicios (generalmente como servicios web);
• De integración de servicios - Facilitan el intercambio de datos entre elementos de la capa aplicativa orientada a procesos empresariales internos o en colaboración;
• De composición de procesos - Que define el proceso en términos del negocio y sus necesidades, y que varía en función del negocio:
• De entrega - donde los servicios son desplegados a los usuarios finales
Diseño y desarrollo de SOA
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. El desarrollo de sistemas usando SOA requiere un compromiso con este modelo en términos de planificación, herramientas e infraestructura.
Cuando la mayoría de la gente habla de una arquitectura orientada a servicios están hablando de un juego de servicios residentes en Internet o en una intranet,
...