Conceptos básicos de la Arquitectura Orientada a Servicios
Conceptos básicos de la Arquitectura Orientada a Servicios
De acuerdo a analistas de la industria, los conceptos básicos de la Arquitectura Orientada a Servicios (SOA) se establecieron desde hace 20 años. Por tanto, ¿qué ofrece de nuevo?, ¿por qué esta tecnología tiene tanto éxito mientras otras fallan? Durante esta serie de cinco capítulos, BEA Systems, líder mundial en infraestructura de aplicaciones y pionero del SOA, responderá todo lo que usted quiere saber sobre ésta, en apoyo a la gira mundial del dev2dev days 2004 en 23 ciudades del mundo, incluyendo México.
¿Cuáles son los elementos del SOA más importantes para su éxito?
Como primer punto se encuentra la flexibilidad. SOA es la primera arquitectura de Tecnologías de Información (TI) que asume lo que los negocios han sabido desde hace mucho tiempo. Se trata esencialmente de un set de servicios sueltos, donde cada uno es relativamente económico para construirlo o reemplazarlo si es necesario. Al ser independientes, el poder unirlos permite a SOA adaptar cambios, cuestión imposible para arquitecturas tradicionales.
En la Arquitectura Orientada a Servicios, se puede reemplazar un servicio sin tener que preocuparse por la tecnología fundamental; la interfase es lo que importa, y está definida en un estándar universal en servicios Web y XML. Esto es flexibilidad a través de la interoperabilidad. También es la habilidad de asegurar los activos existentes, aplicaciones y bases de datos legales y hacerlos parte de las soluciones empresariales extendiéndolos al SOA en vez de reemplazarlos. El resultado en la red es la habilidad de evolucionar rápida y eficientemente, en otras palabras, adaptarse ‘orgánicamente’ de acuerdo a la demanda del negocio. Esto es realmente nuevo.
En segundo lugar está la relevancia para el negocio. SOA es TI expresada a un nivel que tiene un significado importante para la colaboración del negocio y profesionales del área. Sus servicios actuales pueden coordinar unidades de trabajo muy cercanas a las actividades del negocio; piense, por ejemplo, en un servicio llamado ‘Actualización de órdenes de trabajo’. Éstos son inmediatamente relevantes para los analistas de la empresa que participan en la creación y definición de nuevos procesos permitiendo el ‘Servicio Dirigido Empresarial’.
Desde que los servicios web sustituyen la mayoría de las tecnologías fundamentales, muy poca tecnología de habla es requerida. Los negocios y las TI se enfocan en la lógica del negocio y la comunicación; finalmente comparten el lenguaje de servicios. Esto también es relativamente nuevo y tendrá implicaciones en la entrega de servicios TI.
¿Cuáles son las principales barreras a vencer para obtener el éxito de SOA?
SOA es un nuevo horizonte para las TI. Como cualquier gran cambio, las principales barreras son organizacionales, no técnicas. A continuación ejemplificaremos algunas:
· Administración: Servicios compartidos es lo principal para utilizar SOA. La habilidad para ensamblar rápidamente aplicaciones o procesos está basada en la disponibilidad de algunos servicios que pueden ser compartidos. Hacer esto, por definición, requiere administración.
· Desarrollo Cultural: Al utilizar SOA se requiere un cambio significativo en el estilo de programar. Muchos desarrolladores utilizan equipos diferentes para resolver problemas de manera independiente para cada aplicación. En SOA necesitarán escribir aplicaciones para ser re-utilizadas en mente, usando códigos existentes, a los cuales se podrá tener acceso constantemente.
¿Cómo se distingue actualmente SOA de anteriores estándares de integración y conectividad tales como CORBA?
CORBA era mucho más ambicioso, tecnológicamente hablando, que SOA, y requería una tremenda habilidad de conocimientos en su implementación. Ésta es rara de encontrar, lo cual contribuyó a no entender el significado del estándar. SOA, en contaste, es sencillo y está basado en estándares universales, lo cual asegura que las habilidades para construir aplicaciones sean muy accesibles.
En la Arquitectura Orientada a Servicios, la distribución de los beneficios permite un desarrollo óptimo de funciones como la ‘Actualización de órdenes de trabajo’. Con CORBA, la distribución de los beneficios eran aplicaciones con diferentes propiedades y métodos. Con SOA habrá menor control y poder, pero es más fácil de manejar. Técnicamente no será muy poderoso pero es muy inteligente en el rol de las organizaciones y personas que buscan el éxito en las TI.
¿Qué rol juega Java en el éxito potencial del SOA?
Java es muy importante para un estándar de servicios. Las habilidades y herramientas que proporciona su comunidad garantiza calidad para construir en SOA. Así es como mutuamente contribuyen al éxito, ya que Java es una manera más para implementar servicios.
Por Sistemas, el 17/01/2005.