Un simulador para ahorrar tiempo en el desarrollo de aplicaciones móviles
María lleva dos años trabajando en una empresa de desarrollo de aplicaciones para teléfonos móviles. Parte de su labor es desarrollar los códigos, elaborados con lenguajes de programación, que sirven como esqueleto y hacen que todo funcione correctamente cuando un usuario emplea el programa.
Normalmente, el desarrollo de una aplicación móvil requiere realizar una planificación (qué servicios se van a prestar, dónde va el menú, el perfil del usuario, si hay medio de pago, entre otras cuestiones) y una propuesta visual de cada pantalla. Después, sigue la fase de desarrollo, en la que interviene María y, a continuación, se prueba el producto.
Cada vez que se simula cómo funcionará la aplicación bajo distintas circunstancias, como una mala conexión a Internet, María tiene que realizar una serie de ajustes en el código que implican bastante tiempo y esfuerzo. En este contexto, aunque existen herramientas que ayudan a María a probar en distintos tipos de dispositivo de forma automática, es muy complicado para ella establecer una prueba realista con multitud de dispositivos que interactúen entre sí y que permitan anticipar cómo se comportará cuando llegue a los usuarios.
Para agilizar este proceso, un equipo de investigación de la Universidad de Sevilla y la Universidad de Extremadura ha desarrollado por primera vez un simulador que predice la velocidad de las aplicaciones móviles. El software anticipa cuestiones que habitualmente requieren distintas pruebas técnicas de evaluación, como la rapidez a la que opera la herramienta, el tiempo que el usuario debe esperar a que funcione y su consumo energético.
Los expertos probaron su validez en una aplicación móvil que proporcionaba el riesgo de contagio de Covid-19 de una persona simulando de forma completamente virtual un escenario real con cientos de dispositivos funcionando simultáneamente, como si hubiera usuarios de verdad utilizándolos. De este modo, comprobaron que este sistema supone una alternativa menos costosa y rápida para empresas de desarrollo software.
Evaluar la calidad
La mayoría de las aplicaciones móviles funcionan mediante un sistema que emite una orden y obtiene una respuesta que luego se almacena. Por ejemplo, los asistentes personales reciben una orden del usuario, el programa realiza la consulta y luego emiten la respuesta.
Normalmente, las empresas de desarrollo software evalúan la calidad del servicio de una aplicación móvil antes de su puesta en venta. Para ello, la desarrollan, instalan y comprueban que estas herramientas, aptas para dispositivos como teléfonos o tablets, funcionan en cualquier modelo, en distintos sistemas operativos y bajo circunstancias como una mala conexión a la red. De este modo determinan, por un lado, cómo será la experiencia del usuario y, por otro lado, cómo será el rendimiento de la aplicación. Esto es, que opere de forma precisa, rápida y no haya fallos o ‘caídas’, como ocurre ocasionalmente con plataformas como Twitter o WhatsApp.
Funciones
La propuesta de los investigadores tiene dos finalidades:
1. Ejecutar pruebas de evaluación de calidad global de la aplicación.
2. Desplegar entornos virtuales personalizados para simular con múltiples dispositivos de distintos sistemas operativos cómo funcionará la aplicación móvil en un escenario realista.
Los expertos explican que para emplearlo, desarrolladores como María tan solo tendrían que definir las características del entorno, como la disponibilidad de Internet, los atributos de calidad a comprobar y los tests de evaluación. “Este sistema facilitaría la labor de las empresas de desarrollo software y ya puede incorporarse a las metodologías de trabajo que suelen realizarse en estas entidades”, explica a la Fundación Descubre el investigador de la Universidad de Sevilla Pablo Fernández.
En su artículo, publicado en Pervasive and Mobile Computing, los investigadores definen el sistema Perses como un edificio dividido en dos plantas. Por un lado, Perses Launcher, la base, sirve para definir y configurar el entorno virtual -es decir, las condiciones ficticias bajo las que operará la aplicación-. Por otro lado, Perses Virtual Enviroment es la parte ejecutora, que realiza las pruebas y puede replicarlas de forma indefinida y anticipa cómo funcionará la aplicación. “Actualmente, no hay herramientas a nivel comercial que realicen esta función dado que, normalmente, los simuladores suelen ser caros y con características muy limitadas”, explica el investigador de la Universidad de Extremadura Sergio Laso.
De este modo, los expertos proponen este sistema como alternativa a las pruebas de calidad para aplicaciones móviles que se emplean habitualmente. Un recurso para facilitar y agilizar el trabajo que desarrolladores como María hacen en su día a día.
Más información en #CienciaDirecta: Desarrollan un simulador que predice la velocidad de las aplicaciones móviles
Suscríbete a nuestra newsletter
y recibe el mejor contenido de i+Descubre directo a tu email