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:
Créditos fotográficos: istock bakhtiar_zein
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.
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:
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: