Al igual que multitud de elementos que utilizamos en nuestra vida cotidiana, el mantenimiento de los sistemas nos aseguran un correcto funcionamiento en el día a día. En este caso, además, es más importante, si cabe, un buen mantenimiento preventivo y evolutivo. Que evite su posible obsolescencia con el transcurso del tiempo, que el meramente correctivo, que suele ser utilizado con poca frecuencia.
Por ello es enormemente importante no descuidar los sistemas de información una vez desarrollados y/o integrados en el normal funcionamiento. Y de dicha importancia se deriva que la etapa de mantenimiento cuente en cualquier metodología de desarrollo como una fase más en el ciclo de vida de un proyecto software. Con igual importancia que cualquiera de las demás etapas. Y en dicha etapa deberían ser tenidos en cuenta todos los posibles objetivos del mantenimiento: correctivo, preventivo y evolutivo.
Tipos de mantenimiento de los sistemas de información
Mantenimiento correctivo
El hecho de que los sistemas software no puedan sufrir averías fortuitas o simple desgaste. Y que en el propio proyecto de desarrollo y/o integración se lleven a cabo pruebas de funcionalidad para asegurar el correcto funcionamiento de los sistemas con carácter previo a la entrega al cliente. Hace que pocas veces sea necesario realizar alguna acción correctiva tras la finalización y puesta en marcha de los mismos.
Sin embargo, como en cualquier sistema de ingeniería. No ha de ser menospreciada la posibilidad de que algún fallo oculto subsista tras el paso de dichas pruebas.
Por la naturaleza de estas herramientas, sin embargo, si existiesen dichos problemas tras la puesta en marcha de un sistema. Estos saldrían a la luz con toda probabilidad en los primeros días, meses a lo sumo. Cuando los usuarios los hayan probado por sí mismos en la práctica totalidad de los casos.
Lejos de ahí, los problemas tendrán que ver sin duda con casos poco probables en el trabajo diario, que seguramente no hayan sido mostrados ni detectados en las fases de análisis y diseño del sistema de información.
Mantenimiento preventivo
Aunque este tipo de mantenimiento es importante en sistemas de información, se suele trasladar su tratamiento a las fases de análisis y diseño de los mismos (anteponiéndose antes de su desarrollo a posibles problemas que pudieran darse en su uso, por razones sobre todo de entorno o de carga), o a considerarse junto al mantenimiento evolutivo (por idénticas razones, previendo problemas frente a los cambios que se puedan ir sucediendo).
Mantenimiento evolutivo
Es éste, sin duda, el tipo de mantenimiento al que más importancia deberíamos prestar tras la puesta en marcha de un sistema de información. Y es que, teniendo en cuenta que hoy en día, los sistemas de información sustentan la lógica de funcionamiento de toda una organización, estos deben ser ampliados y adaptados a los nuevos requerimientos de la misma para hacer frente a las nuevas necesidades que aparecen.
Las necesidades de crecimiento de estos sistemas, a menudo, vienen determinadas por factores como:
- Objetivos estratégicos: por un crecimiento de la organización, cambios en los procesos operativos de la misma, nuevas líneas de actividad, etc.
- Necesidades tecnológicas: los sistemas de información se sustentan sobre elementos, software y hardware que evolucionan por caminos diferentes a como lo hace nuestro sistema de información. Un mantenimiento evolutivo se hace necesario para adaptarse a las nuevas necesidades tecnológicas y no quedar obsoleto en breve plazo de tiempo.
- Integración con otros sistemas de información de la organización: la incorporación de nuevos sistemas de información, que por diferentes cuestiones han de provenir a veces de diferentes fabricantes, hacen necesario el desarrollo de elementos de integración entre ellos, de manera que puedan aunarse los objetivos que con todos ellos se quieran conseguir.
La conjunción de estas necesidades hace que bajo el mantenimiento evolutivo se recoja en realidad dos tipos conceptuales de mantenimiento: el adaptativo, que trata la modificación de un sistema de software o de un componente para adaptarlo a cambios del entorno o en los mecanismos de trabajo; y el perfectivo, cuando el objetivo es mejorar la funcionalidad, el rendimiento u otros atributos.
Contrato de mantenimiento de los sistemas
Como respuesta a esas necesidades que se van a presentar sin duda en la vida de un sistema de información. Deberíamos anticipar la posibilidad de contar con un servicio de mantenimiento que nos permita abordarlas. Y hacer que el sistema permanezca en funcionamiento, y perfectamente alineado en todo momento con los objetivos con los que se puso en marcha.
Parece, por tanto, evidente que cuando pensemos en poner un sistema de información al servicio de nuestra organización, deberíamos pensar también en contratar un servicio de mantenimiento, como si de cualquier máquina o herramienta se tratase.
Pero, ante todo, e independientemente del mecanismo elegido. Es bueno asegurarse de que vamos a poder disponer de un equipo humano que posea todo el conocimiento sobre las especiales características de nuestro tipo de actividad. En todos los casos, además, es importante contar con una asistencia telefónica directa (hot line). Que nos permita resolver posibles dudas en el funcionamiento y resolución rápida de posibles problemas.
Consejos y recomendaciones
A partir de esas necesidades básicas, un mantenimiento preventivo, y eventualmente correctivo, puede ser resuelto simplemente contando con unas ciertas revisiones y/u operaciones programadas, por parte de personal que conozca el sistema y cómo ha de ser controlado (copias de seguridad, revisión de los gestores de bases de datos, …). Este servicio suele estar unido a la asistencia telefónica, hasta el punto en que, si las infraestructuras lo permiten, puede ser realizado también de forma remota, estableciendo una conexión electrónica con el cliente (a través de Internet, normalmente).
Para el mantenimiento evolutivo, además, será conveniente (y económicamente rentable) pactar un determinado número de horas de desarrollo. Que se vayan a emplear periódicamente en actualizar y mejorar el sistema. Eso nos obligará sin duda a mantener la atención sobre posibles cambios a realizar. Evitando el abandono en que podría quedar el sistema hasta que no haya más remedio.
Conclusiones
Cuando los sistemas de información son comerciales (de tipo horizontal, no realizados directamente a medida para nuestra organización). Parte de esta evolución suele ser cubierta por los propios fabricantes del software. Que, por una cuota anual, pondrán a nuestra disposición cuantas mejoras y optimizaciones vayan realizando sobre las funcionalidades de su software.
En algunos casos, cuando el sistema lo requiere e independientemente del tipo de mantenimiento que estemos afrontando. Puede ser muy conveniente disponer, durante el tiempo que dure el contrato de mantenimiento. De una réplica del sistema de información en las propias instalaciones del desarrollador. Esto posibilita que se pueda actuar con la mayor rapidez ante hipotéticos problemas. Al planificar mejoras y probar de forma previa los desarrollos para las mismas, etc.
En definitiva, con resaltar la importancia del mantenimiento en estos sistemas no hacemos, sino equiparar el papel de los mismos con cualquier otro sistema que la Ingeniería haya puesto a nuestro alcance. Nadie dejaría sin engrasar las máquinas que sacan adelante la producción de una empresa. Ni dejaría de ir renovándolas si quiere que esa compañía se mantenga competitiva. No parece, pues, de lógica que las conclusiones sean diferentes cuando se trata de los sistemas de información sobre los que descansa, cada vez más, el corazón de nuestra organización.
Jorge Ruiz Magaña
Director de la Unidad de Desarrollo