Todo lo que necesitas saber acerca de la arquitectura SOA

Descubre las 2 claves del diseño para SOA y los 3 desafíos más importantes a que se enfrenta la arquitectura SOA.


 

La arquitectura SOA es un principio que permite a las empresas gestionar su transformación de infraestructura tecnológica y de negocio para conseguir una ventaja competitiva. Esta Arquitectura Orientada a Servicio, ofrece diversos beneficios entre los cuales se encuentran:

arquitectura_soa.jpg

Créditos fotográficos: istock bakhtiar_zein

  1. Visión del funcionamiento del negocio al completo.
  2. Integración sin fisuras entre los sistemas y la nube.
  3. Vinculación de los sistemas front office y back office.

El World Wide Web Consortium define la arquitectura SOA como “un conjunto de componentes que pueden ser invocados y cuyas descripciones de interfaz pueden ser publicadas y divulgadas”.

Una definición más completa de arquitectura SOA sería la que la considera como el conjunto de políticas, prácticas y frameworks que permiten que la funcionalidad de aplicación sea proporcionada y consumida por un conjunto de servicios publicados con una gran granularidad que es relevante para el consumidor del servicio. Los servicios pueden ser invocados, publicados y divulgados, y se abstraen de la implementación utilizando una interfaz simple, basada en estándares.

 

Diseño para arquitectura SOA

SOA proporciona a las empresas una visión más holística de su funcionamiento y por lo tanto les permite ejercer un mayor control sobre sus procesos y operaciones. También facilita el que los sistemas respondan más rápidamente a las demandas cambiantes, al permitir la reutilización de los servicios existentes en diferentes combinaciones.

Podría decirse que el objetivo detrás de SOA es el hacer posible la combinación de una serie de servicios para formar una aplicación más grande y más compleja. Esto implica la necesidad de incorporar SOA ya desde la fase de diseño, para asegurarse de que todos los módulos de servicio trabajarán juntos.

Debido a que la arquitectura orientada a servicios divide las funciones en unidades de servicio individuales, éstas deben estar disponibles a través de una red para que sean accesibles a los usuarios y puedan combinarse para crear aplicaciones. Esto, por supuesto, requiere:

  • Un conjunto común de normas para ser utilizado. Hablamos del lenguaje de descripción de servicios Web (WSDL) que suele usarse de forma conjunta con el protocolo SOAP, para definir los protocolos de comunicaciones utilizados para intercambiar información entre ellos.
  • Una mejor definición de los metadatos. Debido a la gran dependencia de SOA hacia este tipo de datos, hay que garantizar que éstos permitan definir y descubrir los servicios y también mantener su integridad. Por supuesto, no hay que olvidar la necesidad de asegurar que su formato pueda ser fácilmente gestionado por diseñadores y desarrolladores.

 

Desafíos de la arquitectura SOA

SOA permite a los desarrolladores internos colaborar con proveedores externos, de plataformas y de software, para producir soluciones más eficaces. Además de una mayor flexibilidad, la arquitectura SOA ofrece la posibilidad de reducir costes, particularmente al integrar nuevos servicios. Pero para poder beneficiarse de sus ventajas, antes es necesario superar retos como los relacionados con:

  1. Metadatos. El mayor reto en la gestión de implementaciones SOA es garantizar la integridad de los metadatos (los datos sobre los datos); algo que resulta determinante para que diferentes servicios funcionen correctamente juntos.
  2. Entornos de test. No es sencillo lograr un marco de pruebas unificado cuando los servicios están separados y se ejecutan en plataformas distintas. Éste es otro de los desafíos de SOA, que tiene su origen en la variedad de posibles combinaciones en las que los servicios puedan interactuar y se complica con la adición de nuevas características y servicios, que aún hace más difícil la tarea de definir un punto de referencia fijo para las pruebas.
  3. Negocio. SOA es mucho más que un simple software. La implementación de la arquitectura SOA supone una transformación que puede obligar a las empresas a prestar atención, no sólo a sus procesos de desarrollo, sino también a sus procesos de negocio, llegando a poder ser preciso revisar toda la relación entre el proveedor y el cliente para aprovechar al máximo las ventajas que SOA ofrece.

 

New Call-to-action

 

Artículos relacionados

Subscríbete a nuestro blog y recibe las últimas actualizaciones sobre gestión de datos.

Descubre contenido nuevo todos los días para profundizar la transformación digital en tu organización.