¿Cómo asegurar el éxito de SOA? Juan Manuel Caracoche, SOA Practice Leader Buenos Aires, Argentina La adopción de una Arquitectura Orientada a Servicios (SOA) ofrece ventajas más que atractivas para las empresas, entre ellas: satisfacer las necesidades del negocio de manera más eficiente, potenciar la reutilización de servicios y obtener un Retorno de la Inversión (ROI) de corto plazo en cada proyecto encarado bajo esta modalidad. Sin embargo, la mayoría de las organizaciones no consigue completar estas premisas por diversos motivos, en general relacionados con el sponsorship de los proyectos y la ejecución de los mismos (Governance). Se recomienda utilizar este documento como una herramienta para aprender de los errores cometidos por otras compañías, para evitar riesgos y garantizar una utilización SOA completa y satisfactoria. ¿Cómo asegurar el éxito de SOA? Juan Manuel Caracoche, SOA Practice Leader Introducción GlobalLogic lleva 7 años realizando proyectos SOA en el mercado latinoamericano. A lo largo de este tiempo hemos acompañado a empresas en diferentes fases de implementación. En este sentido, contamos con experiencia en el desarrollo del roadmap en firmas con madurez cero y también en la provisión de servicios a organizaciones que se consideran maduras. Adicionalmente, hemos sido socios estratégicos de más de 20 firmas líderes del sector de Finanzas, Telecomunicaciones y Retail. Definitivamente, contamos con todas las credenciales para poder efectuar un análisis de las causas del “fracaso” a la hora de implementar SOA en grandes empresas. preconcepto de reducir el desarrollo de software a la etapa de programación, donde se ignoran por completo la utilidad del análisis, del diseño, testing, validación y verificación. Otro error frecuente es confundirla con integración de aplicaciones. Esta última es una consecuencia natural que debe implementarse en el camino hacia una Arquitectura Orientada a Servicios. Es decir, la integración de herramientas es sólo una de las consecuencias de aplicar SOA. Claramente este comportamiento es algo deseable y con alto impacto, pero es importante notar que SOA trasciende a la mera integración de aplicaciones. El objetivo de este documento no es explicar la teoría de SOA, sino referirnos a ella como marco de trabajo global a nivel corporativo, es decir, como una forma de acercar el área de TI con el Negocio. Un “fracaso” al adoptar SOA se da como resultado de no implementar alguna iniciativa tal como está definida, o de simplificar o subestimar conceptos claves dentro de SOA, lo cual lleva a no obtener un ROI efectivo. En este contexto, es importante hacer una aclaración: en muchos casos se confunde la sigla SOA con el nombre de algún producto comercial o lenguaje de desarrollo, cuando en realidad se trata de un concepto que va mucho más allá de eso. SOA es, en realidad, un concepto integral que no sólo incluye funcionalidad, TI y herramientas, sino que también incorpora gestión y planificación. Es decir, SOA reúne y recorre transversalmente la organización de una empresa, requiriendo un fuerte compromiso de todas las partes. Considerar que SOA es solamente una herramienta o lenguaje es el equivalente moderno del viejo Basándonos en nuestra experiencia, observamos que muchas empresas utilizan el concepto de SOA solamente a nivel técnico (TI). Como resultado de esta precaria adopción, SOA se reduce a la implementación de un producto para hacer integraciones y no en una iniciativa estratégica a nivel organización. GlobalLogic Inc. El objetivo del resto del presente documento consiste en explicitar distintos escenarios que llevan al fracaso de una iniciativa SOA, y describir distintos mecanismos destinados a reducir estos riesgos. www.globallogic.com 2 ¿Cómo asegurar el éxito de SOA? ¿Cómo asegurar el éxito de SOA? Para comenzar a responder la pregunta conviene comenzar categorizando los diferentes motivos por los cuales las organizaciones no pueden llevar adelante con éxito una iniciativa SOA. Estos motivos pueden dividirse según su naturaleza: Aspectos Corporativos o Estratégicos y Aspectos de Ejecución o Governance. Aspectos Corporativos o Estratégicos Clasificaremos los aspectos corporativos o estratégicos como problemáticas que tienen que ver con el Corporate Governance de la compañía. Al respecto, la decisión de una iniciativa SOA debe contemplar a toda la organización. De esta manera, la firma en su conjunto debe comenzar a pensar en servicios y procesos de negocio. Con el fin de lograr un resultado satisfactorio, este cambio cultural debe ser impulsado desde el Top Management. SOA Como Estrategia Corporativa En líneas generales, el Top Management y el Directorio definen la estrategia de negocios de la compañía para alcanzar su misión. Una vez decidida la estrategia corporativa, se debe definir el plan estratégico, el cual debe contar con las herramientas y metodologías adecuadas para medir la efectividad del mismo y evaluar si las acciones tomadas dirigen a la organización hacia dicho objetivo. Dentro de este plan estratégico es donde entra SOA, permitiendo alinear los objetivos del negocio con los objetivos de TI, reduciendo la brecha entre las expectativas del negocio con las posibilidades tecnológicas. En este sentido, actualmente no existe ninguna compañía que no necesite de TI para alcanzar sus metas estratégicas. Por este motivo, SOA debería ser impulsado por un plan estratégico a nivel corporativo. En la realidad de las empresas que hemos apoyado, los proyectos SOA son impulsados por la gerencia de TI como una manera de organización de los activos y GlobalLogic Inc. Juan Manuel Caracoche, SOA Practice Leader como forma de responder a las necesidades de las otras áreas de la compañía en tiempo y forma, en lugar de ser una iniciativa corporativa para acercar a las áreas de negocios con TI y maximizar los beneficios, minimizando el Time-To-Market de la empresa. El problema de una iniciativa SOA que no es impulsada desde el Top Management es que no cuenta con el apoyo de todas las áreas de la organización para llevar adelante un proyecto de largo plazo. En este punto es importante destacar que consideramos que una iniciativa de este tipo está madura (asumiendo que se parte de un escenario de madurez cero) a los dos o tres años de su implementación. Siguiendo esta línea, es responsabilidad del Top Management crear los mecanismos e incentivos necesarios para asegurar que se cumplan los objetivos de largo plazo para los Managers. Aspectos de Ejecución o Governance Los aspectos relacionados con el Governance son los más frecuentes dentro de las organizaciones latinoamericanas. Nosotros llamamos Governance a la acción de llevar adelante la iniciativa SOA para cumplir con los objetivos del plan estratégico de la compañía. Cualquier persona involucrada en la gestión de proyectos a nivel gerencial sabe que la planificación no sirve de nada sin las actividades necesarias para controlar que dicha planificación se lleve a cabo. Esto incluye no sólo el monitoreo, sino también la posibilidad de intervenir y redefinir actividades. En este contexto, describiremos los problemas más frecuentes que enfrentan nuestros clientes: Carencia de métricas para medir el ROI de los proyectos Uno de los principales drivers de los proyectos SOA es la posibilidad de reutilizar servicios. Esto hace que los primeros proyectos “carguen” con el costo de desarrollo de los servicios iniciales. Por ende, hay que tener en cuenta que, con el paso del tiempo, los proyectos serán cada vez más económicos y ágiles, justificando www.globallogic.com 3 ¿Cómo asegurar el éxito de SOA? y respaldando la inversión realizada en la primera etapa. En este sentido, es cada vez más frecuente la realización de encuentros interdisciplinarios al estilo de retrospectivas de metodologías ágiles, que tienen el objetivo de poder capturar la experiencia obtenida en cada proyecto y que la misma pueda trasladarse de manera natural al próximo. Esto es lo que la teoría y el sentido común dicen, pero en la práctica no sucede así porque no hay métricas para evaluar el ROI de cada uno de los proyectos ni la distribución de costos por los servicios reutilizados. En definitiva, esto acontece porque los proyectos son encarados por diferentes áreas y, al no contar con una métrica confiable de los costos, cada proyecto prefiere desarrollar sus propios servicios en lugar de reutilizar los ya existentes. En este sentido, y según nuestra experiencia, los argumentos de los diferentes Jefes de Proyecto son varios, y todos ellos están relacionados con la confiabilidad del servicio (performance) y por la carencia de documentación en la que se valide el costo real del mismo, ya que puede haber costos ocultos por mala ejecución del Proyecto, entre otros. Esta desconfianza entre las áreas y proyectos hace fracasar uno de los principales drivers de la iniciativa SOA. De esta manera, no se reutilizan servicios y no se re-paga nunca la inversión. Esto tiene un serio agravante, que es la multiplicidad de funciones en diferentes servicios, lo que hace que la catalogación de los mismos sea imposible de mantener o realizar. Esto lleva a un doble papel de las métricas: Por un lado, son fundamentales para poder relevar, exponer y cuantificar los logros esperados en cada paso y actividad SOA. Y, por otro, permiten el seguimiento de los proyectos a largo plazo para tener claro el momento oportuno para intervenir y ajustar lo planeado. En este sentido, la falta de una decisión a nivel gerencial de impulsar las métricas ocasionará los problemas ya mencionados. GlobalLogic Inc. Juan Manuel Caracoche, SOA Practice Leader No se le da continuidad a la iniciativa SOA Un escenario recurrente entre nuestros clientes es que eligen SOA como su estrategia, entonces deciden impulsarla a nivel corporativo. En esta instancia, solo el CIO y/o el CTO están convencidos que SOA es la solución para llevar adelante su plan estratégico. Paralelamente son conscientes que la organización no está preparada para esta nueva cultura ni cuenta con los skills necesarios, entonces deciden aliarse estratégicamente con un socio que tenga experiencia en este proceso. En GlobalLogic hemos visto este escenario en numerosas ocasiones. En base a nuestra experiencia, consideramos que el primer paso en toda firma consiste en definir el nivel de madurez SOA que alcanza la compañía en ese primer estadio. Luego se llega a un consenso sobre el objetivo, se establece el gap y se traza un plan de corto y largo plazo para implementar la iniciativa SOA. Generalmente, este proceso lleva entre seis y ocho meses, dependiendo la complejidad de la compañía. Bajo este esquema hemos tenido muy buenos resultados en todos los casos. Sin embargo, una vez que finaliza nuestro trabajo, la empresa no continúa con los lineamientos definidos con respecto al governance y comienza a construir un servicio sin control para justificar la inversión realizada en las etapas previas. Nosotros no objetamos el hecho de construir servicios, sino que remarcamos que éstos deben hacerse en forma controlada, utilizando el aprendizaje obtenido del partner. Es evidente que luego de seis u ocho meses la organización aún no está madura, y debería continuar trabajando con el partner a través de un servicio de acompañamiento y auditoría hasta ganar madurez en el proceso de governance. Este período tiene una duración aproximada de un año o más, dependiendo de cada compañía. www.globallogic.com 4 ¿Cómo asegurar el éxito de SOA? Juan Manuel Caracoche, SOA Practice Leader Es importante no perder de vista el impacto a largo plazo, el cual trasciende a un proyecto en particular. La adopción SOA tiene una curva de aprendizaje y mucha “sobrecarga” en las etapas iniciales, las cuales “pagarán” su esfuerzo recién a medida que se logre madurez y estabilidad. Sin esta continuidad es altamente probable que el tiempo y esfuerzo invertidos nunca se recuperen de manera apropiada. Diferentes proveedores con diferentes metodologías Frecuentemente, por no decir siempre, las organizaciones no cuentan con la experiencia o con los recursos necesarios para afrontar el desarrollo de los proyectos SOA. Para ello, se apoyan en diferentes proveedores especializados. Este proceder es correcto ya que las empresas logran tener un volumen de mano de obra especializada a demanda que, desde el punto de vista de optimización de costos y tiempos de respuesta al negocio, sería imposible de conseguir con recursos propios. Por lo general, y por temas vinculados a la diversificación de riesgos y demanda de trabajo, las áreas de TI cuentan con más de un proveedor especializado. Esto también es correcto. Sin embargo, hay que considerar la posibilidad de que surjan inconvenientes cuando la compañía no está lo suficientemente madura en la gestión y control de los proyectos SOA. Si la organización no cuenta con un governance apropiado, donde se especifiquen los estándares de desarrollo, nomenclaturas, entregables y demás, y el desarrollo de los servicios y procesos de negocios sean construidos por diferentes proveedores con sus propias metodologías, es probable que reine el caos y el desorden en la posterior evolución de los mismos. Performing SOA Governance Increases Satisfaction with SOA Source: Forrester Research, Inc. 24% Expanding Use of SOA SOA has delivered most or all the benefits we expected, and we will continue to expand our use. SOA has delivered less benefit than expected but enough, and we will continue to expand our use. 36% 20% Not Expanding Use of SOA We struggle to get the benefits we expected, and we won’t expand our use until we resolve the issues. It’s too early to tell. 19% Cutting Back of SOA 1% We have seen little or no benefit, and we will cut back on our use. SOA users at global enterprises and SMBs. N=579 GlobalLogic Inc. www.globallogic.com 5 ¿Cómo asegurar el éxito de SOA? Esta heterogeneidad de proveedores, metodologías y servicios implica necesariamente actividades específicas de governance, destinadas a la gestión de dichos servicios. Esta situación va más allá de la forma de construcción o diseño de los servicios, ya que provoca que la empresa pierda el ownership del servicio, y así, es posible que no sea catalogado, motivo por el cual otro proyecto no lo podrá reutilizar y se perderá uno de los valores más importantes de la iniciativa SOA, que es el re-uso para mejorar el ROI. Dependencia de proveedores especializados En el inicio de este documento comentamos que la iniciativa SOA es de carácter estratégico y debe ser apoyado por el Top Management de la compañía. Luego indicamos que las organizaciones deberían apoyarse en los proveedores, pero bajo un contexto maduro de governance. En este sentido, nuestra recomendación consiste en que es fundamental recibir apoyo de partners especializados para definir el Center Of Excellence (COE), los roles, los estándares, la forma de trabajo y las responsabilidades, entre otros. Vale aclarar que el COE es un grupo multidisciplinario compuesto por profesionales que se desempeñan en el negocio de la firma, TI y especialistas del producto con el cual se da soporte a la iniciativa (ESB, Repository, Registry, etc.) y un arquitecto SOA. En un comienzo, el servicio del especialista de producto y el arquitecto SOA son provistos por el partner especializado. Esto es razonable porque ellos son los que tienen mayores conocimientos. En este contexto, el COE es el responsable del governance de la iniciativa SOA y se convierte en un grupo estratégico para la organización. Por ello, la compañía debería absorber el conocimiento provisto por los partners especializados y no depender de ellos en el largo plazo. Definitivamente, sería un riesgo muy grande que el funcionamiento del COE dependiera de un proveedor. Por supuesto que es aceptable que tenga una GlobalLogic Inc. Juan Manuel Caracoche, SOA Practice Leader participación importante, pero de ninguna manera que el funcionamiento dependa de él. Tal como afirmamos anteriormente, es necesaria la participación de un partner especializado para llevar adelante la iniciativa SOA y darle continuidad, pero la organización debe adaptarse a esta nueva cultura y, en el mediano plazo (dos años), debe dejar de depender del proveedor para tener la capacidad de continuar con la iniciativa por sus propios medios. Se deben mostrar resultados Un problema común, sobre todo en las empresas latinoamericanas, es que los CIOs deben justificar la inversión en SOA. A tal fin, comienzan a desarrollar servicios para mostrar resultados, pero no tienen en cuenta muchos de los aspectos del governance. Más tarde, cuando son conscientes de esta situación, se hace muy difícil volver atrás y, en la mayoría de los casos, esos servicios necesitan ser re-implementados. En otras ocasiones, luego se los trata como legacies y se comienzan a construir los nuevos servicios de la forma correcta. Sin embargo, lo cierto es que en muchas ocasiones no es posible justificar el tiempo que realmente se necesita para encarar una iniciativa SOA cuando ésta es encarada por el sector de TI. A propósito, es más fácil contar con el tiempo apropiado si el proyecto tiene el apoyo del Top Management. Con respecto a este punto, en el caso de que no se pueda contar con el tiempo y/o el presupuesto necesario, nuestra recomendación es contratar un partner especializado, al menos, para conocer su grado de madurez y poder tomar consciencia del riesgo que se corre por implementar servicios con esa brecha madurativa. Para minimizar ese riesgo, recomendamos no comenzar con un proyecto que le de visibilidad a la iniciativa sino lo contrario, es decir, hacer experiencia con un proyecto de bajo impacto para el negocio. En caso de éxito, el proyecto de más alto impacto posicionará mejor al CIO en la organización, pero las probabilidades de www.globallogic.com 6 ¿Cómo asegurar el éxito de SOA? que esto suceda son muy bajas cuando no se tiene la madurez apropiada, y comprometerá la confiabilidad de la iniciativa SOA frente al resto de la organización. Esta práctica lleva a una adopción gradual de la filosofía SOA, lo cual es lo recomendado desde la comunidad. Evangelización El proceso de evangelización es fundamental a la hora de difundir qué es SOA. Independientemente de quién impulse la iniciativa, en la comunicación del objetivo es clave la participación de cada una de las áreas de la empresa. De esta manera, se logrará contar con un compromiso mayor. Es crucial reiterar que el éxito requiere que todas las partes involucradas cumplan adecuadamente lo esperado. Cada una de las áreas debe sentirse parte del cambio y aportar su grano de arena en la consolidación SOA. Vale aclarar que tal compromiso se ve amenazado cuando la comunicación no es clara ni amplia, y no surge desde las primeras etapas. Además, es importante seleccionar a la/s persona/s y los medios adecuadas/os para impulsar esta actividad para garantizar que el mensaje sea asertivo. Seleccionar el perfil adecuado es tan importante como el mensaje a transmitir. Obviamente, este mensaje es más fácil de comunicar si se cuenta con el apoyo del Top Management ya que, de esta manera, se pueden fijar incentivos para que los Managers estén alineados a la iniciativa. En este punto es muy importante que quede en claro que se trata de una decisión estratégica, y que la organización debe adaptarse a esta nueva cultura y forma de trabajo. SOA vs. Integración de Sistemas Un error común en el que caen muchas compañías es creer que están llevando adelante una iniciativa SOA aunque, en realidad, están integrando sistemas y exponiendo los servicios en un Enterprise Service Bus. Como mencionamos en la introducción, SOA es una forma de trabajo que, entre otras cosas, implica integrar sistemas. GlobalLogic Inc. Juan Manuel Caracoche, SOA Practice Leader De esta manera, tal integración es parte del “cómo” llevar adelante la iniciativa, pero no es SOA. Esto muchas veces es impulsado por las mismas áreas comerciales de los vendors de las soluciones tecnológicas. Así, los CIOs adquieren una solución y la comienzan a utilizar creyendo que están “haciendo SOA”, pero en realidad están integrando sistemas. Es claro que con esta modalidad no se lograrán todos los objetivos que plantea SOA, ya que solo se está obteniendo una buena manera de integrar sistemas. Como se ha mencionado anteriormente, SOA es un concepto amplio y abarcativo. En esta línea, la selección de la solución es el segundo paso en el camino de la iniciativa SOA, y hay diferentes escalones antes de decidir cuál es la más adecuada. Los proyectos SOA no se deben encarar como proyectos tradicionales Las iniciativas SOA no deben ser administradas de la misma manera que los proyectos tradicionales ya que requieren una forma de trabajo determinada, bajo una metodología estricta. Además, deben ser auditadas y ejecutadas bajos los estándares del COE. En este sentido, cuando un área de negocio requiere un determinado servicio, debe explorar en el catálogo y, en caso de no contar con él, deberá solicitar su creación al COE, que validará la no existencia y buscará si no hay algún servicio del cual se pueda generar una nueva versión para minimizar el tiempo de desarrollo. El COE deberá dar las indicaciones al proyecto sobre la forma de construirlos desde cero o cómo generar una nueva versión de un servicio actual. Es importante que todas las áreas sigan este protocolo de manera constante y uniforme. Eso evitará redundancia, y se potenciará el trabajo de todos los involucrados. Está claro que en muchas organizaciones esta metodología podría ser vista como “burocracia”, y los proyectos terminarían implementando sus propios servicios. Incluso en determinados casos podrían crear sus propios ESB. Estas prácticas detalladas implican www.globallogic.com 7 ¿Cómo asegurar el éxito de SOA? Juan Manuel Caracoche, SOA Practice Leader el fin de cualquier iniciativa SOA, ya que no solo se está generando multiplicidad de servicios sino que se producen silos aislados de soluciones que no son sanas para la organización. Para evitar este tipo de prácticas, el COE tiene que brindar un servicio ágil y expeditivo. En consecuencia, de él dependerá cómo segregar funciones y cómo conformar la PMO para evitar que el COE sea un cuello de botella en el desarrollo de servicios. El CIO debe velar para que la iniciativa SOA definida a nivel corporativo cumpla con sus objetivos. Es responsabilidad de él modificar lo que sea necesario para cumplir con el objetivo estratégico y no comprometer la iniciativa. It Takes More Than a Little SOA Governance to See Better Results Source: Forrester Research, Inc. 6 5 24% 2 Expanding Use of SOA SOA has delivered less benefit than expected but enough, and we will continue to expand our use. 8 8 10 36% We struggle to get the benefits we expected, and we won’t expand our use until we resolve the issues. 1 5 Not Expanding Use of SOA 20% 5 3 Cutting Back of SOA SOA hzas delivered most or all the benefits we expected, and we will continue to expand our use. It’s too early to tell. 19% 1% N=15 N=18 N=20 We have seen little or no benefit, and we will cut back on our use. N=579 SOA users at global enterprises and SMBs. GlobalLogic Inc. www.globallogic.com 8 ¿Cómo asegurar el éxito de SOA? Juan Manuel Caracoche, SOA Practice Leader Conclusiones El análisis del presente documento permite concluir que las principales razones por las cuales fracasan las iniciativas SOA surgen de considerarlas como una única actividad, en vez de hacerlo como un concepto integral del cual nacen numerosas actividades. Dejar de lado o minimizar las cuestiones de governance representan una fuerte amenaza. En segundo término, el impulso SOA debe proceder desde el TOP Management, con una comunicación clara y sólida, buscando el compromiso de todas las áreas involucradas. Esto muchas veces implicará un cambio cultural trascendente para la vida de la empresa. Más allá del apoyo de la Alta Gerencia, se necesita la colaboración de partners especializados con experiencia comprobable en el desarrollo de iniciativas SOA, para hacer un análisis del estado de madurez actual de la organización y trace un camino a transitar. Además, será el sostén de la organización por al menos 2 años, hasta que la firma pueda hacer el cambio cultural y se GlobalLogic Inc. alcance un nivel de madurez objetivo. No hay que dejar de observar la planificación y los beneficios SOA a largo plazo, permitiendo una continuidad que facilite alcanzar la madurez SOA. Para que tenga éxito la iniciativa y se sostenga en el tiempo, es imprescindible la conformación del COE, que funcionará como órgano de control y auditoría. Este documento debería ser considerado como una lista de patrones de comportamiento que hemos recopilado tras nuestro trabajo en compañías latinoamericanas. Lejos de tratarse de juicios de valor, se presentan como experiencias que se pueden evitar para prevenir el “fracaso” de la iniciativa SOA. En pocas palabras, esta lista debería ser tomada como una enseñanza de errores conocidos. Esperamos que tras su lectura, los tomadores de decisiones puedan encarar una iniciativa SOA efectiva. www.globallogic.com 9 Sobre GlobalLogic GlobalLogic es una empresa lider en el desarrollo completo del ciclo de vida de los productos de software. Combinando su experiencia en diversas industrias y su expertise en nuevas tecnologías ayuda a sus clientes a conectar ideas innovadoras con resultados de negocio. A partir del conocimiento obtenido en la creacion de productos de software innovadores con tecnologías de vanguardia, GlobalLogic provee servicios de consultoria y desarrollo en areas como Mobile, Cloud Computing, SaaS, UX Design, Rich Internet Applications, Social Media, SOA&BPM, entre otros. A traves de una estrecha colaboracion con sus clientes, GlobalLogic los ayuda a responder a las exigencias del time to market y a lograr costos competitivos en cada fase del ciclo de vida del desarrollo. Para obtener más información, visite www.globallogic.com.ar Contacto Daniela Castelli +54.11.5533.8300 x 1016 [email protected]
© Copyright 2024