Publicado el

El antídoto para el error es la experiencia

Es muy fácil redactar un artículo sobre logros conseguidos y premios ganados. Distinto es cuando nos toca hablar de nuestros errores. Sin embargo, en Fimedi NET tenemos una filosofía de trabajo basada en la efectividad y elocuencia.

Errar es humano, corregirlo es divino.

Posiblemente escuchaste hablar del término bug (bicho) para referirse a fallas de un programa informático. El término tiene su origen en 1947, cuando ingenieros que trabajaban en el Mark II informaron que el ordenador sufrió un fallo en un relé electromagnético. Cuando se investigó ese relé, se encontró una polilla (bug) que provocó que el relé quedase abierto. Los ingenieros pegaron el insecto con cinta adhesiva en la bitácora con el comentario «Primer caso real de bug encontrado».​

Hoy me toca hacer anuncio y mención de una inconsistencia en nuestra plataforma (bug) detectada gracias a la observación de la Lic. Irene Ávila. Afortunadamente, esta inconsistencia se da únicamente en el orden de algunos pocos controles en las 3 gráficas históricas de Fimedi: Histórico de Peso, Histórico de Composición Corporal, Histórico de Escala de Grasa Visceral.

Descripción del Problema

Un registro de control se almacena con dos fechas importantes:

  1. La fecha de visita: es decir la fecha en que se efectuó efectivamente el control clínico en cuestión. El especialista puede cambiar esta fecha a alguna del pasado para registrar controles antiguos.
  2. La fecha de ingreso del registro: Esta fecha es implícita y no puede modificarse por el especialista, porque nos permite tener una auditoría de la fecha real de ingreso de tal registro.

En muy pocas ocasiones, cuando el especialista ingresa controles retroactivos, es decir con fecha de visita anterior a la fecha efectiva de ingreso de datos, las gráficas históricas representarían los puntos evolutivos en el orden que se ingresaron, y no en el orden real en que se efectuaron los controles clínicos (valoraciones).

De manera que en estos casos (y sólo en estos casos), algunas gráficas mostrarían un avance cronológico inconsistente. Así, en una distracción, podría pensarse que hubo una subida de peso seguida de un descenso, cuando en realidad el paciente tuvo un progreso continuo.

Desde luego, Fimedi NET es simplemente una herramienta, y el paciente siempre cuenta con el control, seguimiento y buen juicio de su profesional a cargo para interpretar los datos.

Vemos que el control del 5 de Junio debería haberse graficado antes del 7 de Julio para respetar el orden cronológico.

Naturaleza de la Falla

Conversando con la Lic. Ávila, efectuamos un análisis para reproducir el problema en nuestro estudio. Finalmente detectamos que se debió a al componente que se encarga de reunir los datos de control para generar las gráficas históricas.

Resolución del Problema

El arreglo consistió en un ajuste a dicho componente, que se encarga de re-ordenar los controles en caso de ser necesario, y así garantizar su representación cronológica correcta.

Vale aclarar que esta corrección se aplica a nivel representación de datos y no tiene absolutamente ningún impacto en el registro de datos.

Como nos complace mantener un seguimiento de los cambios y mejoras que hacemos a la plataforma para mantener informados a los usuarios profesionales, volcamos las novedades en nuestro Tablero de Desarrollo en el sistema Trello.

Problema Corregido

En menos de 24 horas desde el reporte del incidente, identificamos la causa y desarrollamos la solución.

Una vez aplicado el correctivo, las gráficas imprimen correctamente las líneas evolutivas, y se hace evidente el progreso continuo para nuestro caso de ejemplo.

Observamos que luego del correctivo los puntos se grafican en el orden cronológico esperado.

Recomendaciones

Como comentamos, es posible que problema se evidencie en menos del 1% de los controles registrados. La corrección no requiere ninguna acción por parte de los profesionales. De todas maneras, recomendamos estar atentos a la graficación a partir del 1/Nov/2018 y reportarnos cualquier comportamiento no esperado.

Conclusiones

Los errores, obviamente, nos muestran lo que necesitamos mejorar. Sin errores, ¿cómo sabríamos qué tenemos que trabajar?

Desarrollar software significa traducir las necesidades del profesional en instrucciones que una máquina pueda entender. Esa labor de traducción es extremadamente compleja y requiere de mucho foco en actividades altamente técnicas, mientras buscamos mantener un costo razonable para nuestro servicio. Hacemos el mejor esfuerzo por evitar que se deslicen errores como éste; debemos admitir que después de todo somos seres humanos y a veces nos equivocamos. Pero lo que nos hace más humanos aún, es reconocer los desvíos a tiempo y actuar consecuentemente para corregirlo, sumado a un proceso de soporte reactivo.

En Fimedi NET nos encanta recibir comentarios, sugerencias e ideas de nuestros profesionales.

Si encontraste algo que te gustaría compartir, no dudes en escribirnos o sumarte a nuestro Tablero de Desarrollo en Trello.

Ariel es Analista en Sistemas de Información de la Universidad Tecnológica Nacional regional Buenos Aires. Habiéndose desempeñado en el área de tecnología de la información en diversas industrias en el ámbito corporativo, es actualmente responsable y principal desarrollador de la plataforma Fimedi NET.