Aunque a día de hoy es difícil quedarnos sin cobertura móvil o WiFi, aún se dan situaciones en las que no disponemos de conexión a Internet, es por eso que la capacidad de trabajo offline está presente en los requisitos de muchas aplicaciones solicitadas por nuestros clientes.
Podemos pensar que añadir un “modo offline” a una aplicación ya existente es algo sencillo y no requiere de más de 4 líneas de código, pero nada más lejos de la realidad, este proceso puede ser demasiado complejo y que no compense si más tarde no se va a aprovechar esta capacidad del aplicativo. Por esto, debemos poner en la balanza los pros y contras de tomar esta decisión y decidir en base a lo que mejor nos convenga.
Ventajas e inconvenientes de aplicaciones offline
Hemos recopilado gran parte de las ventajas e inconvenientes de una aplicación online frente a una offline para que tengas cosas que poner en esa balanza que te ayudará a decantarte por una cosa u otra:
Que no haya conexión en algunos lugares del Planeta no quiere decir que todas nuestras aplicaciones deban ser offline, por eso, antes de decidir si nos interesa o no esta característica debemos hacernos una serie de preguntas:
- ¿Cuántas situaciones se van a dar en las que se requiera trabajar sin conexión?
- ¿Se podría prescindir de la APP durante estas situaciones?
- ¿Cómo de críticos son los datos con los que trabajan los usuarios?
- ¿Es posible extender la red a esos lugares en los que no se dispone de Internet?
El requisito de offline no puede ser un capricho, debemos tener claro lo que queremos, por tanto, si la probabilidad de quedarse sin conexión es muy baja o nula, lo mejor es decidirse por una aplicación totalmente online, sin embargo, si los usuarios van a moverse por países en los que no hay acceso a Internet o pueblos con muy mala cobertura, nos convendrá que la aplicación funcione sin conexión a la red.
Por otra parte, si lo que queremos es una app que muestre el stock real de nuestros almacenes, no tiene sentido que tenga capacidad de trabajo offline ya que los datos que tenga pueden no ser reales en el momento en que los consultemos.
De otro modo, si se va a usar en un lugar concreto, donde a día de hoy no hay WiFi, puede que nos interese extender la red a esos lugares en vez de asumir el sobrecoste por implementar la capacidad offline en la aplicación.
En cuanto a este sobrecoste monetario y temporal que implica desarrollar un “modo offline”, en la toma de requisitos hay que tener en cuenta más cosas de las que parece. Respecto a la sincronización de datos con el servidor, hay que pensar si los datos se descargarán y subirán de forma automática en cuanto el dispositivo disponga de Internet, o de otra manera, será el usuario el que elija en qué momento quiere sincronizar esos datos. También se debe tener en cuenta si esos datos pendientes de subir al servidor pueden editarse o no de forma local. Añadir también si esa subida de datos será selectiva o no, esto es, si no queremos subir todo lo que tenemos en nuestro dispositivo, se podrían seleccionar únicamente los datos que nos interesen. Por otra parte, puedn función de si tienes conexión o no. Como ya se ha visto, según lo fino que queramos hilar surgirán una serie de requisitos que, a simple vista no se ven, pero que podrían disparar el coste de una aplicación saliéndose del presupuesto asignado.
Según la reflexión que hayamos hecho en base a las preguntas planteadas anteriormente, teniendo siempre en cuenta nuestro escenario, ya tendríamos que tener claro si realmente es imprescindible o no poder trabajar sin conexión con nuestra APP y, consecuentemente, pagar por este “extra offline”, que no es barato ni rentable en según qué casos.