lunes, 11 de enero de 2016

Espagueti de sistemas. Receta para la construcción y la deconstrucción

Espagueti de sistemas... No sé si suena apetitoso... pero en realidad no lo es, no lo es en absoluto. Es la pesadilla (y por desgracia, con frecuencia la realidad) de los departamentos de sistemas de las grandes corporaciones.

Una maraña inmensa de sistemas construidos con diferentes tecnologías, diferentes modelos de información, diferentes tecnologías de integración, diferentes semánticas de datos...pero interconectados entre sí, influyéndose entre sí, solapándose entre sí, limitándose entre sí.. y complicando la vida, a veces hasta extremos insospechados e insoportables, del departamento de sistemas y de los departamentos de negocio a que estos dan soporte.

Es una pesadilla...pero es real, muy real...

Leyendo 'Leading digital' de George Westerman, Didier Bonet y Andrew McAfee encuentro razonamientos y situaciones que me resultan tan familiares que no sé si consolarme con aquello del mal de muchos...

Así se describe en 'Leading digital' el espagueti:
why do so many large companies have poorly designed technology platforms?. Large companies operate in silos each with its own systems, data definitions and business processes. The systems are confusing, sometimes duplicative, and often tied together in complex (and sometimes unknown) ways. Generating a common view of customers or products can be very difficult.

¿Cómo se llega a estos espaguetis de sistemas? ¿Cuál es la desgraciada receta?

En general se produce en organizaciones grandes y con historia más o menos larga. En esa situación, los sistemas surgen (o surgieron en el pasado) para ir dando respuesta a necesidades puntuales de diferentes departamentos. Mientras los sistemas todavía eran una pieza relativamente secundaria, mientras existían pocos sistemas, mientras estos no eran críticos para el negocio, y mientras sólo existían islas de informatización no solapadas, esta situación, sin ser óptima, no era especialmente problemática.

Pero con esa dinámica, el número de sistemas crece. Poco a poco, además, se hacen más críticos para el negocio. Poco a poco toda la actividad  de la empresa se encuentra informatizada... Así que los sistemas ya son muchos, heterogéneos, solapados e interconectados. Es decir: primera aparición del espagueti en el menú... 


Todavía, empero, podría haber sido la situación en ese punto reconducible con un esfuerzo razonable de racionalización y ordenación de demandas. Pero entonces surgen las presiones del negocio, del 'time-to-market', de los resultados, y... la ortodoxia de la arquitectura y mapa de sistemas se rompe irremediablemente...

De nuevo, en 'Leading digital':

Every request for a nonstandard technology, every demand to do things your own way, every choice to go around corporate governance processes so you can move faster, and every integration meeting that your staff people miss will create more complexity. Sometimes that complexity is neccessary, but often it is not.

Como consecuencia de esa presiones de tiempo y de la falta de una adecuada racionalización arquitectural se adoptan presuntas soluciones, construyendo nuevos sistemas encima de los anteriores o de capas que presuntamente ocultan la complejidad de los anteriores...pero sin eliminar ningún sistema ni revisar el mapa de sistemas en su conjunto.

We don't retire systmes. We just add on top of them, which creates a tremendous amount of expense and complexity.

Más sistemas, más intereracciones, más complejidad...El espagueti en todo su esplendor...

¿Y qué hacemos ahora?

Pues ahora tenemos un gran problema y no queda otra que un profundo programa de transformación, de revisión, reordenación, reducción y simplificación del mapa de sistemas.

El trabajo es titánico...pero inevitable. La propia supervivencia de la empresa a medio plazo puede estar en juego si no se acomete.

El trabajo es ciertamente inmenso, pero hay tres ingredientes que nos pueden ayudar en esta deconstrucción, en esta transformación de sistemas.

En primer lugar, la arquitectura empresarial, una herramienta que nos permite ordenar los procesos, la información y las tecnologías con visión global de compañía. En esta arquitectura debe encajarse de manera limpia cualquier solución de futuro.

En segundo lugar, SOA, como tecnología de integración que permite ordenar los servicios de negocio y la información que intercambian esos servicios...servicios e información que, además, deben encajar perfectamente en la arquitectura empresarial.

Y la tercera, liderazgo, mucho liderazgo. Liderazgo intelectual para saber poner orden en el caos y mantener el rigor en la aplicación de la arquitectura empresarial y SOA. Y liderazgo transformador, para construir la visión, comunicarla y movilizar a la organización en pos de su consecución. En cierto modo, la falta de este liderazgo ha permitido en el pasado llegar al espagueti, y ahora ese liderazgo perdido se debe recuperar... 

Spaghetti happens only because leaders let it happen. And removing spaghetti requires strong leadership.

No, el espagueti de sistemas no es apetecible en absoluto. 

Una deconstrucción de sistemas, con guarnición de nuevo mapa de sistemas, cocinada conforme a la receta de la arquitectura empresarial y sazonada con SOA es mucho más apetecible y, para conseguirlo, más que buenos cocineros necesitamos líderes...

Que aproveche...