De Novo Orthopedics
«Offline-first» no es «tolerar estar sin conexión» — cómo funciona xGrid sin internet
Blog/

«Offline-first» no es «tolerar estar sin conexión» — cómo funciona xGrid sin internet

En la mayoría de los sistemas, el modo sin conexión es una versión degradada. En xGrid es el modo normal. En el terreno de una catástrofe, sin antenas, sin red y sin personal de TI, esa diferencia decide si el sistema sirve o no.

Un experimento mental

Ponga su teléfono en modo avión y abra la aplicación que más usa.

Algunas se quedan directamente en blanco. Otras le muestran los datos antiguos que tenían guardados, pero no le dejan hacer nada nuevo. Otras le permiten seguir trabajando con normalidad y lo sincronizan todo en cuanto vuelve la conexión.

A esta tercera categoría casi todo el mundo la llama «compatible con modo sin conexión». La etiqueta ya da por hecho que usted volverá a estar en línea pronto: que estar desconectado es solo una molestia pasajera que el sistema tolera con elegancia.

xGrid no encaja en ninguna de las tres. Su estado predeterminado es estar sin conexión. No espera a que vuelva la red, porque en los entornos donde se despliega, puede que la red nunca vuelva.

Esto no es un modo degradado. Es el modo normal.

Todo el sistema de información clínica cabe en un solo dispositivo

El núcleo de xGrid es un dispositivo dedicado de computación de borde (edge computing), del tamaño aproximado de una palma, que se alimenta con una batería portátil.

Ese único dispositivo ejecuta tres sistemas a la vez:

  • xGrid Community Grid (red de resiliencia comunitaria) — registro de pacientes, triaje, transferencias clínicas y prescripción
  • xGrid Medical Grid (red de resiliencia médica) — gestión de inventario, banco de sangre, seguimiento quirúrgico y despacho de farmacia
  • xGrid READY — inventario de suministros de la instalación y seguimiento de preparación ante desastres

Los tres sistemas son independientes entre sí, cada uno con su propia base de datos. Al encender el dispositivo, todos los servicios arrancan automáticamente, y si alguno falla, se reinicia solo en cuestión de segundos.

Después, el propio dispositivo abre un punto de acceso Wi-Fi.

Enfermeras, médicos y farmacéuticos sacan el teléfono, se conectan a esa red, abren el navegador y empiezan a trabajar. Sin router. Sin antena de telefonía. Sin ningún servicio en la nube.

El dispositivo en sí mismo es la infraestructura.

¿Qué pasa si el teléfono sale del alcance del Wi-Fi?

Una enfermera camina 50 metros hasta la carpa de triaje y su teléfono pierde la conexión Wi-Fi. Aun así, clasifica a un paciente. ¿Se pierden esos datos?

No. El sistema en su teléfono guarda la acción localmente y la sincroniza en automático en cuanto ella vuelve a estar dentro del alcance de la red.

Y ese almacenamiento temporal no es una simple cola indiferenciada: el sistema reparte las acciones en tres niveles de prioridad.

PrioridadTipoNotas
Máxima: acciones clínicasTriaje, órdenes médicas, signos vitales, medicamentos de urgenciaSe conservan 7 días; nunca se eliminan automáticamente
Media: acciones operativasMovimientos de inventario, dispensación de medicamentos, operaciones de banco de sangreSe conservan 3 días
Mínima: registros del sistemaVistas de pantalla, seguimiento de clicsSe eliminan al sincronizar

Cuando vuelve la conexión, las acciones clínicas se sincronizan primero. Si el ancho de banda no alcanza, los registros del sistema pueden descartarse sin que eso afecte a ningún dato de pacientes.

Las acciones críticas para la auditoría —autorizaciones de emergencia (break-glass), registros de transfusión sanguínea, dispensación de sustancias controladas— nunca se eliminan automáticamente, pase lo que pase: se mantienen en cola hasta que se confirma la sincronización.

Cuatro líneas de defensa para la sincronización automática

Cuando el teléfono recupera la conexión, ¿cómo sabe el sistema que debe sincronizar? No depende de un único mecanismo, sino de cuatro disparadores independientes:

  1. Al volver a la pantalla — en cuanto la enfermera regresa al sistema desde otra aplicación, se intenta sincronizar
  2. Al detectar red — en el instante en que el teléfono se conecta al Wi-Fi, sincroniza
  3. Verificación periódica — cada 30 segundos el sistema revisa automáticamente y envía lo que esté pendiente
  4. Antes de cerrar la página — un último intento, para que los datos no se pierdan solo porque se cierre el navegador

Con cuatro líneas de defensa, casi siempre se dispara al menos una. En la práctica, el retraso de sincronización de los datos que quedaron sin conexión suele medirse en segundos; en el peor de los casos, en minutos.

El cronómetro de desconexión

En la pantalla de la estación de enfermería hay un banner en la parte superior que indica, con colores, cuánto tiempo lleva el dispositivo sin conexión:

Seguro
Más de 4 horas
Precaución
1–4 horas
Advertencia
15 minutos
Crítico
El teléfono vibra para avisar

Esto no busca asustar a nadie. Le da al operador tiempo suficiente para decidir: volver al alcance del Wi-Fi y sincronizar, o seguir trabajando sin conexión. Cuanto más tiempo pasa sin conexión, mayor es la diferencia entre los datos del teléfono y los de la base de datos central. El cronómetro hace visible esa diferencia.

¿Por qué no usar la nube?

No es que no se pueda. Es que no conviene depender de ella.

El entorno donde se despliega la medicina de desastres suele ser así:

  • Las antenas de telefonía pueden estar caídas, sin red móvil de ningún tipo
  • El suministro eléctrico es inestable, así que el dispositivo funciona con batería portátil
  • No hay personal de TI; quienes operan el sistema son enfermeras y médicos
  • No hay tiempo para configurar nada: tiene que funcionar nada más sacarlo de la caja

Bajo estas condiciones, cualquier sistema que dependa de la nube tiene un defecto fatal: es justo cuando más lo necesita que es más probable que no pueda conectarse a ella.

La respuesta de xGrid es llevar «la nube» encima. Un dispositivo, una batería portátil y unos cuantos teléfonos: eso es un sistema de información clínica completo. De encendido a listo para usar: 30 segundos.

Lo que «offline-first» realmente significa

No significa «también tenemos un modo sin conexión».

Significa que nuestro sistema puede seguir cumpliendo todas sus funciones esenciales sin ninguna dependencia externa.

Cada decisión de diseño parte de esa premisa. Elegimos una base de datos embebida en lugar de una que necesite un servidor aparte. Elegimos una aplicación de navegador en lugar de una app nativa que dependa de una tienda de aplicaciones. Elegimos colas de eventos en lugar de sincronización en tiempo real. Elegimos un punto de acceso Wi-Fi en lugar de una VPN que necesite a un administrador de red para configurarla.

Cada una de estas elecciones responde a la misma pregunta: si solo hay un dispositivo y unos cuantos teléfonos, ¿esto sigue funcionando?

Si la respuesta es «no», lo rediseñamos hasta que la respuesta sea «sí».


Para profundizar: Cuando el muro se rompe — cómo Safety-II cambia el diseño de los sistemas médicos