Dicen los expertos que los consumidores nos hemos vuelto tan exigentes en todo lo relacionado con las aplicaciones móviles que ya no nos peleamos por tratar de utilizarlas sino que, simplemente, las dejamos de usar al segundo intento infructuoso. Tener que depender de una conexión a internet a la hora de utilizar aplicaciones móviles se ha convertido en un mito del pasado, ya que en estos casos, lo más fácil es que nuestra conexión se vea afectada por errores, y el desarrollo de la experiencia de usuario puede resultar un proceso lento e impredecible.
Para evitar tener que depender de la efectividad de las redes, los proveedores de bases de datos y servicios cloud han empezado a implementar sincronización y capacidades offline en sus ofertas de movilidad. Soluciones como Couchbase Mobile de Couchbase, Azure Mobile Services de Microsoft, Cognito de Amazon y Firebase de Google ofrecen los atributos de sincronización necesarios para capacitar a las aplicaciones a trabajar tanto online como offline. Con todo este escaparate de ofertas, la pregunta que se plantea es: ¿qué tecnología se adapta mejor a cada aplicación móvil? La mejor opción, aseguran los entendidos, consiste en seguir los criterios relacionados con las soluciones que mejor se adecúen a nuestra plataforma en aspectos de seguridad, soporte al sistema, funciones de data modeling, resolución de conflictos, optimización en la sincronización y soporte en la topología de la red.
En el apartado relacionado con las plataformas tecnológicas de los clientes, la mejor alternativa consiste en ir más allá de los tradicionales iOS y Android para abarcar plataformas de sistemas empotrados, servicios IoT y wearables. Del mismo modo, la plataforma ha de soportar Windows y estaciones de trabajo OS X así como laptops. La mayoría de las aplicaciones que utilizamos han comenzado a funcionar en sistemas de movilidad a las que se les ha añadido una aplicación nativa web o de escritorio. También es importante evaluar la operatividad de las opciones para bases de datos y cloud que son necesarias en la actualidad y en el futuro.
En el uso de tecnologías sincronizadas para funciones de almacenamiento descentralizado resulta fundamental poder realizar las tareas de acceso, transmisión y almacenamiento de datos de una manera segura. Para poder dar una cobertura de seguridad al completo es necesario disponer de sistemas de autenticación, funciones de data-at-rest/data-in-motion, y acceso a herramientas de lectura y escritura. Por su parte, la flexibilidad en data modeling determinará si un sistema podrá o no articular modelos de requerimiento de aplicaciones de una manera eficiente y adecuada y, lo más interesante, prescribirá si una aplicación desarrolla el modelo de acuerdo con los requerimientos formulados de un modo óptimo, y determina si éste será capaz de evolucionar y adaptarse a las necesidades futuras de la organización.
En este contexto, las viejas bases de datos relacionales constituyen todavía hoy en día una buena opción cuando una aplicación requiere consistencia en los datos, o cuando los datos que guarda son altamente relacionales. Pero, cuando estos requerimientos no resultan tan estrictos, las bases de datos NoSQL ofrecen niveles de flexibilidad muy superiores a las primeras.
– Network World