Acerca del Envejecimiento de los Sistemas

Para todo aquel que haya simplemente hojeado los diarios de los últimos días, pareciera que se ha desatado una suerte de ‘pandemia informática’.

No nos referimos a algún problema en pequeños softwares de gestión de algunas PyMEs, sino a colapsos de sistemas del tamaño de Mercado Libre ® y Mercado Pago ®, asi como el megasistema de control de tráfico aéreo de los EEUU que confinó a tierra algunos miles de aviones y millones de pasajeros.

Si bien ambos problemas quedaron resueltos en cuestión de (varias) horas (al precio de la internación en TI de algunos responsables informáticos de ML y MP … aclaro que TI está por ‘terapia intensiva’ … no por ‘tecnología informática’) la reparación fue – seguramente – una ‘acción contingente’. En el ‘dialecto’ de la calidad se trata de una intervención que remueve el problema inmediato, haciendo que el sistema vuelva a operar, pero sin atacar la causa raíz y en consecuencia sin poder evitar que el problema (el mismo u otro) vuelva a aparecer más temprano que tarde.

La acción contingente es una solución de emergencia, como para ‘seguir operando’ hasta tanto se resuelva el problema de fondo mediante una ‘acción correctiva’. Vulgarmente, un parche … al que los informáticos le decimos ‘patch’ que es exactamente lo mismo pero suena mejor y permite facturar horas de consultoría …

Ahora bien … ¿ Qué tiene que ver esto con el envejecimiento que titula nuestra nota ?

Ocurre que eso, exactamente, es lo que les ocurre a los sistemas y softwares (con toda intención … no son exactamente lo mismo aunque muchos los traten como sinónimos), por diversos mecanismos bastante parecidos a los del envejecimiento en los humanos.

Como en los humanos, el proceso de envejecer es lento y muchas veces imperceptible, hasta que se produce un colapso brusco … no necesariamente un infarto o ACV, pero podría ser una fractura o un desgarro.

En el caso de los sistemas, la primera causa de ‘envejecimiento’ es el cambio de las plataformas de hardware y software de base. Hace pocos años recibí un llamado de una empresa que había implementado un software de gestión de manufactura mío hacía 17 años … durante los cuales el sistema funcionó sin inconvenientes salvo el pequeño detalle de que ya no quedaban PC’s con Windows XP sobre las cuales correr esa aplicación. Algo parecido me sucedió con una PyME metalúrgica que maneja una base de datos de 40.000 clientes y prospectos (hoy son 70000), colectada a lo largo de 35 años, y montada sobre archivos en DBF que solo algunos ‘dinosaurios informáticos’ son capaces de abrir y operar.

Ambos casos son reales … ocurre que los paradigmas tecnológicos cambian a velocidad de tren expreso y nuestros sistemas si no acompañan quedan inutilizados en poco tiempo (tentativamente unos 5 años al ritmo actual).

El segundo factor de envejecimiento son justamente los parches. Demos gracias al Todopoderoso si solo son los propios … aquellos que le hemos pedido (y pagado) a nuestro desarrollador para introducir algún automatismo, unas alertas o validación de datos. Los reportes puros no suelen corromper el funcionamiento del soft … aunque todo es posible … he visto casos de que una nueva consulta anodina hizo colapsar por completo un sistema que hasta el día anterior funcionaba como un violín (afinado …).

Pero los verdaderamente graves son los parches solicitados por (e implementados para) otros usuarios que no conocemos y con los que no tenemos nada que ver. Tanto si tenemos un ‘enlatado’ del cual hay algunos miles de ejemplares distribuidos por el universo informático o un software SaaS en la nube, como si tenemos un desarrollo ‘propio’ (en ultima instancia nuestro programador no suele ser de ‘dedicación exclusiva a nosotros’) inevitablemente en algún momento se hará algún ‘toque’ que resuelva la necesidad de otro usuario y haga colapsar nuestro sistema. Lo que se arregla, fácilmente … con otro parche … Ahora bien … salir a a la ruta con ruedas emparchadas … ¿ lo harías ?

Y finalmente el tercer factor de envejecimiento es nuestra propia empresa … las necesidades y requerimientos de hace 5 años hoy devinieron obsoletos. Y el sistema que hace 5 años manejaba TODA la gestión ahora se ve complementado por algunas docenas de hojas de cálculo que “resuelven” lo que el sistema de gestión no hace. Mi opinión – fundada – acerca de la hoja de cálculo como herramienta de gestión está en otra nota.

¿ Qué hacer entonces frente a este envejecimiento que aparece como inevitable ? Ante todo, actuar preventivamente. Si ocurre un fallo y no estoy preparado, lo mejor que podré hacer es una acción contingente … un parche. Que inevitablemente producirá otros problemas que resolveremos … con más parches. Obviamente una solución bastante mala … y – agrego – costosa como lo es siempre la urgencia.

Razonablemente debería implementar acciones preventivas, para estar preparado para enfrentar problemas ANTES DE QUE OCURRAN. Para los que objeten lo costoso de este enfoque, les pido que saquen la cuenta de cuánto le pudo haber costado a ML las 3,5 horas que su sistema completo estuvo caído. Y cuánto le costaría a mi PyME de 20 – 30 empleados estar tan solo un día sin poder facturar, tener información de stocks y situación financiera.

Un diagnóstico tal como recomienda mi colega y amigo Agustín desde México puede ser un buen paso inicial, aún cuando en absoluto comparto el compromiso que tiene Agustín con cierta marca de software de gestión ‘libre’ (gratis es costosisimo en mi opinión). Pero hay que hacerlo pronto … si nos demoramos el diagnóstico puede devenir en ‘autopsia’ (pido perdón por las analogías médicas, pero resultan bien gráficas).

Y después tenemos opciones. Elaborar un documento de alcance que nos permita saber no solo si nuestro sistema actual aún es (y será por algunos años más) el que mi empresa necesita. Tambien qué ampliaciones o complementos serían necesarios. O proyectar – con tiempo – el diseño e implementación de un nuevo soft. Que cubra a) Todo lo que hace el actual; b) Todas las necesidades detectadas en el diagnóstico y finalmente c) Nos permita migrar TODA la data del viejo al nuevo sistema. Y digo TODA … caso contrario nos condenamos a convivir con ambos sistemas por mucho tiempo (varios años). Y esto será como tener un pie en el muelle y el otro en el bote … adivinen cuánto durará hasta que nos vayamos de narices al agua.