Martes 12 de febrero de 2008
Todos los especialistas en la materia coinciden en señalar que la implantación de la arquitectura SOA en una empresa no es meramente cuestión de tecnología. De hecho todos hacen hincapié en la importancia de reunir tanto a la parte de negocio como a la de TI. “Un proyecto SOA es ante todo un proyecto de negocio” indica Alejandro Lafarga desde Software AG. Ese es uno de los puntos iniciales que hay que considerar desde el inicio a la hora de adentrarse con la tecnología SOA.
Una vez iniciado el camino, se tiene al alcance de la mano un sinfín de posibilidades. Siempre que se haya iniciado correctamente el planteamiento y elegido adecuadamente las herramientas a emplear. Así, para Félix Fleck, experto en SAP NetWeaver de SAP Iberia, “Antes de nada, deberíamos especificar que SAP apuesta por el concepto de Enterprise SOA, que traslada las ventajas de la arquitectura SOA a la gestión del negocio empresarial. Enterprise SOA permite disponer no sólo de una arquitectura SOA, sino de contenido de negocio en forma de web service.” Un apunte importante que, de nuevo, apunta hacia lo que es fundamental en SOA, poner la tecnología al servicio del negocio de forma eficaz.
La visión desde Information Builder está en la misma línea al indicar que “SOA permite a las compañías alinear mejor la tecnología con las necesidades de negocio, y beneficia tanto a los gestores de negocio como a los técnicos. Los primeros se pueden limitar a definir los servicios que se necesitan, mientras que los expertos técnicos y gestores de aplicaciones se dedican a mantener el control sobre la implementación de dichos servicios”.
Las empresas que mejor pueden aprovechar SOA son precisamente, pero no de forma excluyente, las de gran tamaño que tienen un gran número de sistemas de información adquiridos para ir dando solución a diferentes problemas. Pero que buscan una creciente integración de todos los sistemas para obtener mejor calidad de datos, evitar procesos redundantes y lograr una visión más clara y completa del negocio.
Hay múltiples ejemplos que demuestran las ventajas de SOA, en sectores muy diversos. Así por ejemplo, en el caso de los CRC, Centros de Relación con Clientes, es habitual que existan múltiples aplicaciones para cubrir diferentes partes de la gestión. Y la integración de información, si bien resulta necesaria y deseable, presenta graves problemas para resolver de forma que no afecte a los sistemas actualmente en servicio.
En este entorno, donde IZO System implementa las soluciones de NICE y concretamente NICE SmartCenter, basado en SOA, las necesidades son obvias. Como indica Carlos Molina, vicepresidente de Innovación y Producto de IZO System “los CRC cuentan, en general, con múltiples tecnologías y aplicaciones que resultan en elevados TCOs. Además, necesitan, compartir diferentes procesos de negocios que operan sobre las diversas soluciones que soportan su operativa, compartiendo datos entre sistemas y flexibilizando al máximo unos entornos que, hoy por hoy, obligan a un gran esfuerzo a la hora de integrar y/o modificar los procesos”.
Esta situación desemboca en la aparición de dificultades para consolidar el negocio, dada la existencia de múltiples administraciones, portales y puntos de integración. También dificulta el aprovechamiento de las inversiones ya realizadas, debido a la imposibilidad de reutilizar integraciones anteriores y a resulte evidente en muchos casos el hecho de que las nuevas integraciones pueden ser más costosas que el producto en sí. Precisamente un problema que SOA resuelve sin necesidad de modificar los sistemas de producción existentes.
Las ventajas de ahorro de coste y reaprovechamiento resultan tan claras que las estimaciones de los analistas (Gartner) indican que la tecnología SOA se utilizará en más del 80% de las aplicaciones de misión crítica y de procesos de negocio en el año 2010.
Sin duda las ventajas de la arquitectura orientada a servicios no han pasado desapercibidos para las grandes organizaciones. Como indican desde SAP, Los sectores más involucrados en el despliegue de SOA son los de banca, finanzas, seguros, telecomunicaciones y administración pública. Según un estudio de IDC, la inversión en SOA en las organizaciones europeas será este año el doble que en 2006, con un incremento del 11%, lo que da una idea del creciente interés que existe por la adopción de esta arquitectura. Concretamente, en esta región el 40% de las entidades financieras ya tienen en marcha al menos un proyecto piloto de SOA.
Pero el campo de aplicación es notablemente amplio. Así lo ha entendido, por ejemplo, en el CERN (European Organization for Nuclear Research), el centro del que surgió la WWW. En este centro de investigación, han creado un sistema basado en SOA que toma los valores de más de 30.000 sensores y los publica como parte de un bus de servicios empresariales. Así, cada investigador, grupo de trabajo o sistema de control automatizado puede tomar los valores adecuados, suscribiéndose al servicio correspondiente, y tratarlos convenientemente.
BT, anteriormente conocido como British Telecom, ha experimentado una profunda transformación desde un enfoque de cultura centrada en productos a orientada a los clientes. Gracias al empleo de SOA, BT ha logrado prescindir de unos 800 sistemas y planea hacer lo mismo con otros 700 a 900 sistemas. Pero, más importante aun ha sido el cambio en la filosofía de organización de la empresa. El cambio hacia SOA ha permitido evolucionar el foco de la compañía de mantener operaciones a concentrarse en la experiencia del usuario. Ahora en BT se habla de SOA como un medio para crear “order to cash”, es decir convertir órdenes en ingresos. La empresa planea ser totalmente orientada a SOA hacia el 2009.
Por su parte, Intel empleó SOA para reducirla cantidad de recursos que se empleaban para la integración de diversos paquetes empresariales. La empresa estaba gastando una cantidad excesiva de su capacidad de desarrollo tanto en crearlos como luego en mantener dichas integraciones a medida que los vendedores cambiaban sus productos. Según fuentes de Intel, el retorno de la inversión ha sido “superior a varias decenas de millones de dólares” como resultado de su esfuerzo hacia SOA en los tres últimos años.
Según Alejandro Lafarga, de Software AG, “la ecualización desequilibrada hace que, como promedio, el 70% de los presupuestos de TI se destinan al mantenimiento, mientras que sólo un 30% se invierte en innovación para mejorar el negocio y crear una diferencia competitiva”. La propuesta en este caso es hacer un reparto mitad y mitad, para modernizar las infraestructuras de TI para fomentar una mayor innovación y, con ella, crear realmente una diferencia competitiva, sobre todo por su mayor eficacia frente a las empresas de la competencia”.
Como indican desde Stratesys, “SOA representa una nueva visión de los departamentos de IT como soporte al negocio de una empresa. Por tanto, la iniciativa debe ser abordada desde el punto de vista estratégico y no exclusivamente como un proyecto IT de mejora de sistemas”. Esto hace que SOA deba, ante todo ser una acción conjunta en la empresa que reúna tanto a los departamentos de informático como a los de gestión del negocio. Ante todo, hay que tener claro que SOA es un camino donde ambas partes deben poner su esfuerzo, y no meramente, como hasta ahora, una proponer soluciones y los otros resolverlas mediante procesos informáticos.
Desde luego, el primer paso supone la discusión y puesta en común de ideas y puntos de vista entre el departamento de TI de la empresa y los máximos responsables a nivel de negocio. Es importante que queden bien definidas tanto la metodología a seguir como las áreas en las que la adopción de SOA puede fomentar la innovación y reducción de costes. Durante esta etapa, desde SAP se apuesta por la organización de workshops (sesiones interactivas) en los que estudiar qué valor y qué costes se van a derivar de las distintas alternativas que existen alrededor de la implementación de Enterprise SOA.
Gran parte del cambio de SOA proviene de la necesidad de establecer criterios comunes entre diversos departamentos de la empresa, dentro de la línea de acción de conjuntar negocio y tecnología. Así que, como indica de forma clara Ángel Giménez Fumanal desde IBM, “SOA implica alinear las Tecnologías de Información con el negocio, aquí tenemos como reto importante establecer un lenguaje común entre todos los equipos e incluso que las unidades de negocio puedan participar en el diseño de las soluciones”.
Ciertamente la clave de una buena implantación pasa por una cuidadosa fase de planificación y análisis. Algo en lo que tanto la consultoras como los principales fabricantes de software SOA pueden ayudar, usando herramientas y metodologías apropiadas para analizar el problema y proponer una línea concreta de acción.
Y como resaltan desde Stratesys, “también es importante establecer un buen “gobierno” de la solución para mantener el control más allá de las primeras iniciativas. Los departamentos de IT deben introducir en sus organizaciones una nueva área para el control del repositorio de servicios y nombrar un “SOA Central Officer”. Como recomendación prudente desde Stratesys, al principio de una iniciativa SOA, “se aconseja experimentar previamente y comprender bien los conceptos y tecnologías implicadas antes de embarcarse en proyectos con aplicaciones críticas para la compañía”.
Desde Infor su responsable Leo Bensadon indica claramente la necesidad de planificar y tener una visión general del tema. “Hay algunos aspectos críticos para que la implementación de SOA sea un éxito: en primer lugar, pensar acerca de la arquitectura de la solución, lo que conocemos como “blueprint”. La blueprint define los procesos, subprocesos y la información que requiere ser intercambiada entre los componentes de software: definir los servicios y casos en los que tiene un sentido funcional. En segundo lugar, el aspecto de la “administración” es crítico, las empresas definen servicios y casos y van a necesitar gestionar su ciclo de vida, versiones, reutilización, etc. Sin reutilización, SOA no proporciona un retorno de la inversión.”
Una de las claves e SOA es que permite abordar proyectos a base de desmenuzar el problema en trozos más pequeños. De hecho esa es la esencia de SOA, crear servicios que resuelven problemas puntuales. La ventaja es que cada uno de estos servicios es reutilizable una y otra vez. Así, sólo hay que crear un único servicio de, por ejemplo, alta de producto, para que todo tipo de aplicaciones sepan recoger este dato y usarlo con múltiples fines.
SOA resulta muy eficaz, como revela Ángel Giménez Fumanal de IBM ”en aquellas que estén sometidas a cambios frecuentes, con muchos sistemas heterogéneos involucrados (altas necesidades de integración) o en entornos B2B. Con el tiempo, lo lógico es que abarque todas las áreas de negocio”. Y remata “SOA es conveniente en muchas áreas, pero especialmente en aquellos servicios que estén sometidos a cambios frecuentes o que nosotros queramos que cambien rápidamente”.
Precisamente esta capacidad de trocear el problema crea una ventaja y un, digamos inconveniente. La gran ventaja es que, en general, el servicio, cada servicio, es más simple de crear. El inconveniente es que hay que pensar de forma bastante más global, de forma que el servicio no sólo sea útil para el problema actual, sino para cualquier otro uso eventual. Esto hace que la planificación y definición del servicio, así como su documentación, sean más engorrosas que simplemente crear de forma directa un trozo dce código.
Esto exige un cambio de mentalidad a la hora de planificar, algo que cualquier buen desarrollador conoce y debe aplicar para facilitar la reutilización de los servicios, lo que va suponiendo con el tiempo un notable ahorro, ya que muchas de las necesarias fuentes de datos y sus servicios ya están disponibles mediante SOA. Este es el punto donde se comienza a aprovechar realmente la potencia y eficacia de SOA, ya que progresivamente se necesita menos esfuerzo, por tanto menos tiempo y coste, para generar más funcionalidad.
Sin embargo, “la naturaleza distribuida de los servicios web incrementa la complejidad de las TI y presenta nuevos riesgos de seguridad, por ello, la adopción de entornos SOA es lenta y, de momento, se circunscribe más a las grandes empresas”, apunta Josep Micolau, Customer Solution Architect de CA.
Ciertamente las ventajas de la tecnología SOA comienzan rápidamente a descubrirse una vez iniciado el proceso de creación de los servicios. Pronto se descubre que se reduce la complejidad de la infraestructura de TI de las empresas, ya que la integración se realiza sin problemas. Al estar basados en estándares abiertos, los Web services pueden ser reutilizados por distintas aplicaciones. De esta forma, la información proveniente de múltiples fuentes, programas o tecnologías, e incluso almacenadas en muy diversos formatos o bases de datos, quedan disponibles para múltiples usos, aplicaciones y usuarios.
Adicionalmente, aumenta la comunicación de los procesos de negocio dentro y fuera de la empresa ya que permite compartir y reutilizar servicios empresariales dentro y fuera de la compañía, es decir, con los socios estratégicos de la empresa. De igual forma, mejora el acceso a información del negocio; hasta ahora, los distintos departamentos trabajaban con silos de información aislada, que no podía ser compartida mientas que SOA facilita el intercambio de información entre aplicaciones de diferentes departamentos según sea necesario. Como claramente define Leo Bensadon, Director general de Infor, “la arquitectura SOA ha sido ideada y adoptada por los fabricantes de software y las organizaciones para eliminar los retos y dificultades que se producen en el momento de integrar soluciones”.
Mediante SOA se logra intercambiar información con proveedores y clientes, simplificando los procesos de datos de altas y bajas de producto, rotación de stock, datos sobre clientes y otros. Y ello garantizando la adecuada privacidad de los datos al nivel que se desee. Como puntualizan acertadamente desde Aqua eSolutions, “respecto al negocio de terceros, es posible realizar consultas, pero no penetrar en su estructura para realizar modificaciones”. Con información automatizada de los procesos, los trabajadores emplean menos tiempo en tareas rutinarias, liberándose de ellas y centrándose en los objetivos de negocio. Lo cual incrementa la productividad de los empleados, y con ello de la empresa.
Sin olvidar el tema del coste. “Los beneficios que aporta SOA a la empresa son claros: puede modificar procesos de negocio con más agilidad y a un menor coste, reutilizando y combinando las aplicaciones con que se cuenta, sin necesidad de programarlos de nuevo por completo ni preocuparse de modificar los sistemas subyacentes que intervienen en ellos” indican desde Information Builders.
Ni la complejidad para lograrlo. Desde SAP, se resalta que SOA “reduce la complejidad de la infraestructura de TI de las empresas: al ser reutilizables y poder integrarse sin problemas, la empresa es capaz de simplificar las herramientas de integración usadas hasta ahora para integrar aplicaciones. Las infraestructuras basadas en SOA están compuestas por Web services reutilizables que son llamados por las aplicaciones cuando lo necesitan”. Esto se traduce en una notable reducción de costes en el presente así como en el futuro.
Por una parte permite a las empresas aprovechar sus actuales inversiones en TI: las empresas que apuesten por Enterprise SOA pueden continuar utilizando las aplicaciones de gestión empresarial. Por otra parte, las actualizaciones y migraciones del software, al igual que las implementaciones, son más rápidas y, por tanto, menos costosas. “Ya no será necesario realizar migraciones en las que haya que implantar todo el paquete de soluciones, simplemente se cambiará la lógica de las aplicaciones” resalta Félix Fleck, desde SAP.
Adicionalmente se citan que aumenta la flexibilidad en la gestión del negocio: las empresas pueden introducir cambios en las aplicaciones y en la gestión del negocio de forma rápida para poder hacer frente a los cambios en las condiciones del mercado. En su caso mediante las adecuadas herramientas SOA, como, por ejemplo, Enterprise SOA de SAP, se pueden rediseñar procesos de negocio existentes para que los cambios sean más rápidos.
La ecuación tiempo y coste queda claramente definida por Leo Bensadon de Infor como “una solución basada en SOA protege sus inversiones y reduce los tiempos de implementación, desarrollo, actualización y costes de soporte, lo que tiene un impacto muy positivo en las cuentas globales de las empresas.”. Y recalca que SOA “además, facilita la interoperabilidad entre las soluciones y permite a las empresas trabajar en el entorno tecnológico deseado sin que se produzcan problemas de compatibilidad.
Carlos Molina, de Izo System indica que “en el área de Contact Center, igual que en otras, más que un cambio de metodología, SOA proporciona una clara simplificación de la que se ha venido aplicando hasta ahora. De hecho, esta arquitectura elimina muchos de los obstáculos que la tecnología crea a las empresas actualmente. La capacidad de compartir información y funcionalidades en todo el sistema elimina las barreras tecnológicas para implementar procesos eficientes. La apertura de la información generada por el CRC hacia el resto de las áreas de la empresa mejora sustancialmente la operativa de negocio y refuerza el papel del CRC como un área de negocio alineada con los objetivos de la organización.”
Ninguna tecnología es perfecta ni adecuada para cualquier empleo. De igual forma que SOA es idónea para resolver una serie de problemas, no resulta adecuada para otras. Algo que hay que considerar para ver si SOA es la solución idónea para el problema propuesto.
Dentro de los campos donde no se aconseja introducir SOA cabe mencionar aquellos donde frente a la flexibilidad se prefiera una centralización de la información, y ya se cuente con los programas y aplicaciones para ello. La arquitectura SOA precisamente permite lo opuesto, es decir, estructuras desacopladas, totalmente descentralizadas, en las cuales posee servicios externos a la plataforma de gestión.
Otro campo donde SOA puede resultar menos atractiva es la relacionada con temas que requieran alta seguridad. Y no porque la arquitectura SOA no permita controlar con seguridad los procesos, sino porque resulta más complejo hacerlo con múltiples procesos independientes preparados fácilmente para compartir información que con un reducido número dentro de una aplicación monolítica.
En cuanto al coste, como indican desde Stratesys, “SOA no es aconsejable en procesos consolidados, estables, y que no sean susceptibles de reducción de costes, salvo cuando haya que desarrollar aplicaciones totalmente nuevas. Sin un beneficio claro en desarrollo de negocio o en la cuenta de resultados, un cambio TI tan profundo como es la aplicación de SOA no se ve justificado.”
Según la opinión de Aqua eSolutions acerca de áreas donde SOA no resulta aconsejable, “quizás en empresas donde la información debe mantenerse en total confidencialidad, y donde ni siquiera es recomendable compartirla entre delegaciones, ya que a pesar de que los módulos de integración posean elevados niveles de encriptación, es posible que SOA no resulte lo más adecuado para compartir información. Es el caso de compañías como Coca Cola, cuyos procesos productivos deben mantenerse de forma centralizada.”
En la misma línea apunta Josep Micolau, Customer Solution Architect de CA, cuando indica “la implementación de SOA está inevitablemente asociada a arquitecturas TI altamente distribuidas, por este motivo la gestión de seguridad puede convertirse en un importante reto. Sin una infraestructura adecuada, la gestión de la seguridad de las aplicaciones se convierte habitualmente en una serie de silos que conllevan un incremento del riesgo de filtraciones de información, un coste en la gestión de seguridad y en el cumplimiento de normativas”.
Pero, con un enfoque más positivo, acorde con su filosofía actualmente totalmente basada en SOA, Leo Bensadon de Infor indica que “en ningún caso puede llegar a ser desaconsejable la aplicación de una tecnología que reduce costes, mejora la interoperabilidad de las soluciones y repercute directamente y de forma positiva en los resultados de la empresa”. Toda una declaración favorable a las enormes capacidades de SOA para reformar y fortalecer los procesos de cualquier empresa. Ð
De forma detallada, Ángel Giménez Fumanal, Responsable de Ventas de SOA en IBM propone un detallado decálogo de éxito, basado en la experiencia de IBM en casi 6.000 proyectos: