Krypton Solid

Blog

Aprovechamiento de datos para aplicaciones móviles empresariales

Datos móviles

El ámbito laboral actual es ultramóvil y conectado, entonces, ¿por qué las aplicaciones móviles empresariales todavía decepcionan?

En el ámbito laboral de hoy en día, prácticamente todos los empleados tienen un dispositivo móvil personal y, a menudo suministrado por la empresa, conectado a Internet. Los teléfonos inteligentes son omnipresentes, abundan las tabletas, y las plataformas informáticas móviles como las computadoras portátiles o los dispositivos 2 en 1 que todavía se usan con frecuencia. Estos dispositivos ahora tienen bastante potencia informática, abundante almacenamiento y conectividad a Internet. Sin embargo, las aplicaciones móviles empresariales que se sirven como aplicaciones nativas o dentro de un navegador a menudo siguen ofreciendo a los usuarios experiencias que recuerdan a principios de la década de 2000. Dichas aplicaciones pueden depender de conexiones VPN, no funcionan cuando no hay conexión a Internet o son lentas porque dependen en gran medida de datos que no están presentes en el dispositivo. Por último, las empresas pueden estar perdiendo oportunidades para utilizar datos almacenados en dispositivos y, dentro de la organización, para proporcionar el máximo valor al personal que utiliza dichas aplicaciones.

Al final de este artículo, las recomendaciones se basarán en una arquitectura básica estándar para usar con una aplicación móvil que promueva la mejor experiencia del usuario y permita a las empresas aprovechar los datos.

Cambio de la experiencia del usuario final: modo fuera de línea

Los desarrolladores de aplicaciones móviles han aprendido lecciones importantes a lo largo de los años desde el lanzamiento del primer iPhone. Muchas de las primeras aplicaciones de iPhone no funcionaban en absoluto a menos que el teléfono tuviera una conexión a Internet. Esto tendía a irritar a los usuarios finales porque cuando la conexión a Internet se interrumpía (o se cortaba por completo) la aplicación se bloqueaba, dejando al usuario preguntándose por qué no podían hacer un nuevo movimiento en el juego o en la aplicación. Los desarrolladores aprendieron rápidamente cuando vieron el impacto en dicha conducta y el uso continuo de sus aplicaciones, llegando a la conclusión de que es importante la satisfacción del usuario y es necesario desarrollar la aplicación de tal manera que pueda continuar funcionando incluso cuando no hay conexión a Internet.

Las aplicaciones móviles empresariales también pueden beneficiarse de dicha experiencia. Las aplicaciones web se han utilizado durante mucho tiempo dentro de las organizaciones en redes corporativas donde la conectividad a los servidores es consistente y se da por sentado. Esto significa que obtener datos sobre los clientes dentro de una aplicación web es tan fácil como hacer una llamada a la interfaz de programación de aplicaciones de CRM: se realiza la llamada, se extrae el registro del cliente y se sirve esa información dentro de un navegador web.

Desafortunadamente, las aplicaciones desarrolladas para la empresa no funcionan bajo esas conexiones. Los usuarios finales no se encuentran dentro de la red con una conexión estable, son móviles y entran en perdida de cobertura, edificios antiguos con señales irregulares y áreas de uso de red de alto volumen como eventos deportivos. Los usuarios de estas aplicaciones a menudo buscan acumular información crítica para su función laboral y, por lo tanto, no puede permitirse demoras debido a estas condiciones. Eso significa que las llamadas en tiempo real a los sistemas de back-office a través de Internet simplemente no son prácticas.

En este escenario, una opción es desarrollar la aplicación en un modo que se centre en esperar que el usuario final no tenga conectividad cuando use la aplicación. En este escenario, la aplicación tiene una copia local de los datos en el dispositivo que se actualiza con información específica (en lugar de copias gigantes de bases de datos) que la aplicación recupera cuando se restablece la conectividad autentificándose y llamando a un servicio web RESTFul accesible a través de internet público. La frecuencia de actualización de los datos de origen a través de este servicio web debe estar determinada por las condiciones del negocio, con qué frecuencia es probable que cambie.

Los beneficios de esto no solo afectan al usuario final que ahora puede usar la aplicación y obtener información vital para su trabajo a demanda, sino que también es beneficioso para la empresa. Este enfoque sigue un diseño antiguo pero importante llamado Arquitectura Orientada a Servicios. Este patrón dice que la separación de las demandas es extremadamente importante y que abstraer los detalles de implementación de ciertas funciones reduce las cargas de mantenimiento porque las piezas del rompecabezas general se pueden reemplazar fácilmente. Esto se debe a que todas las interacciones ocurren a través de querys (realizados dentro del servicio web RESTful).

En el diagrama anterior, la aplicación no necesita preocuparse por lo que sucede detrás del servicio web RESTful. La base de datos detrás de ese servicio web podría reemplazarse con una llamada a un ERP o algún otro sistema que no sea una base de datos operativa. La aplicación solo se preocupa por la query que tiene con el servicio.

Por otro lado, la base de datos no necesita preocuparse por la experiencia del usuario final. La tecnología y las condiciones comerciales cambian, tal vez ya no tenga sentido servir la demanda del usuario final a través de una aplicación iOS, tal vez haya un nuevo sistema operativo Z-OS en un nuevo dispositivo. Esa nueva aplicación se puede crear y aprovechar el mismo contenido que utilizó la aplicación iOS. Durante este cambio, la base de datos nunca supo ni le importó ningún cambio en la experiencia del usuario.

¡Aprovecha esos datos!

Arquitectura estándar

En el lado izquierdo del diagrama anterior, se pueden ver bases de datos adicionales. Desde la perspectiva de la aplicación, está enviando y recibiendo datos al servicio web RESTful, y ese servicio web está enviando y recuperando datos de una base de datos. Es extremadamente común dentro de la empresa actual que los datos vivan en múltiples sistemas y también es común que los usuarios finales necesiten datos de múltiples sistemas. En este caso, tiene sentido crear un almacén de datos operativos con el que el servicio web pueda intercambiar datos que estén integrados con los sistemas de registro.

Quizás los usuarios de la aplicación necesiten datos del cliente y datos del ERP para las visitas de los clientes. En este caso, los datos críticos para esta función de trabajo se recuperan y se envían a estos sistemas de registro a través de canales de integración desde la base de datos operativa. Esto promueve la facilidad de presentación de informes (se puede hacer desde la base de datos operativa) y se hace correctamente, permite a la empresa obtener los beneficios de SOA mencionados anteriormente a través de las integraciones entre sistemas críticos. Los beneficios por sí solos de tener un sistema para crear consultas / informes accionables no pueden ser subestimados.

Sin embargo, integrar estos sistemas es complicado. Es complicado porque cada sistema tiene su API única u otros métodos para acceder y actualizar datos. A veces es un servicio web, a veces importa / exporta archivos planos, y a veces es una llamada a la base de datos ODBC. Incluso entre estos escenarios comunes, existen diversos grados de dificultad que dependen de la disposición del proveedor de dicho sistema para invertir en la capacidad de sus clientes para intercambiar datos programáticamente desde el sistema. Esto significa que es importante elegir un marco de integración flexible que cubra de manera confiable una amplia gama de escenarios.

Al final…

La creación de una aplicación que impulse la adopción del usuario, mejore su experiencia laboral y proporcione datos procesables a la organización, hace que valga la pena la inversión. Con el diseño correcto, los clientes estarán mejor atendidos, los empleados estarán menos frustrados con la tecnología provista, y la toma de decisiones dentro de la empresa puede obtener fácilmente la información que necesita.

Ahora que conoces los consejos para aprovechar los dispositivos personales para aplicaciones empresariales, ofrecemos la posibilidad de solventar cualquier problema que tengas relacionado con el mantenimiento informático y ayudarte para que tu empresa desarrolle su labor sin ningún tipo de problema informático.

Deja un comentario