SOA resuelve la mayoría de los problemas de software que se presentan en la
actualidad, como son los de facilitar y estandarizar la integración de los sistemas, a
través de la interoperabilidad entre los datos de negocio, las aplicaciones y los requerimientos de los procesos de negocio. Permitiendo mayor flexibilidad y la de reutilización de los procesos de negocio para acomodarlos en el nuevo sistema de información de la empresa. Y todo ello con dos importantes factores, menor coste y mayor rapidez de desarrollo. Cubriendo las necesidades de las empresas modernas:adaptación al cambio con el menor coste y tiempo posible.
Mediante la arquitectura SOA las empresas pueden alcanzar el alto rendimiento a
través de tres palancas: diferenciación en el mercado, simplificación interna en la operación, y flexibilidad y rapidez de adaptación al cambio
PRINCIPIOS FUNDAMENTALES.
Los principios fundamentales de la arquitectura estilo SOA son:
• Los servicios son autónomos. Cada servicio SOA es mantenido,
desarrollado, instalado y versionado de forma independiente.
• Los servicios son distribuibles. Los servicios SOA pueden ser
localizados en cualquier parte sobre la red, local o remotamente en tanto que la red soporte los protocolos de comunicación requeridos.
• Los servicios son desacoplados. Cada servicio SOA es independiente
de los otros y puede ser reemplazado o actualizado sin romper con las aplicaciones que lo consumen en tanto que la interface siga siendo compatible.
• Los servicios comparten esquemas y contratos no clases. Los servicios
SOA comparten contraltos y esquemas cuando se comunican, no clases internas.
• La compatibilidad está basada en políticas. Política en este caso
significa la definición de características como transporte, protocolo y seguridad
¿Cuáles son los principios fundamentales de diseño de una arquitectura
orientada a servicios? Los componentes se acoplan de forma abierta. Un componente que accede a otro no necesita conocer las estructuras de datos, las llamadas a otros componentes, la gestión de transacciones, etc. del ese otro componente. Los componentes son configurables. Observar una aplicación de arquitectura orientada a servicios como la del diagrama anterior es parecido a observar un diagrama de configuración. Los componentes pueden añadirse, suprimirse y configurarse con diferentes procedimientos para crear aplicaciones nuevas. Los componentes pueden trabajar conjuntamente. Cualquier componente puede trabajar con otro, incluidos los componentes creados por entornos de desarrollo de proveedores diferentes. Los componentes son independientes de la ubicación.