Mobile and offline
Offline-first no es una función, es el reconocimiento de una realidad
Todas las herramientas de campo afirman funcionar sin conexión. La pregunta importante es qué hace el software cuando dos técnicos modifican el mismo cierre de empalme desde dos zonas sin cobertura diferentes.
La conectividad no es la parte difícil
Guardar un mapa en caché y poner un formulario en cola son problemas resueltos. La dificultad comienza en la segunda sincronización, cuando la cola contiene dos cambios sobre el mismo objeto realizados con horas de diferencia por personas que no podían ver el trabajo de la otra.
Una herramienta que acepta en silencio la última escritura no ha resuelto el funcionamiento sin conexión. Solo ha trasladado el fallo a un lugar menos visible, donde aparece semanas después como una discrepancia de capacidad que nadie puede explicar.
Preguntas que merece la pena hacer a un proveedor
- ¿Qué ocurre en caso de conflicto?
- Prevalece la última escritura, los datos se combinan o el conflicto se envía a una cola de revisión humana. Las tres opciones son defendibles. El silencio no lo es.
- ¿Cuál es la unidad de sincronización?
- Una orden de trabajo completa o los campos individuales que contiene. Esta decisión determina la frecuencia con la que dos cuadrillas entran en conflicto.
- ¿Puede la cuadrilla ver el estado de la cola?
- Un técnico que no puede saber qué se ha sincronizado volverá a introducir los datos por precaución, creando los duplicados que se intentaban evitar.
La sincronización funcionó a la perfección. Ese fue el problema: sobrescribió seis horas de trabajo de empalme sin avisar a nadie.
Diseñe para la reconexión, no solo para la desconexión
Trate cada cambio sin conexión como una propuesta sobre una versión conocida del objeto. Al restablecer la conexión, aplique lo que no sea ambiguo y envíe el resto a una persona, con ambas versiones y las evidencias adjuntas.
Es más difícil de desarrollar, pero es la única solución que mantiene confiable el registro de la red después de que llegue el segundo vehículo.