Fotolia

Lo básico Póngase al día con nuestro contenido introductorio.

Cómo hacer que sus aplicaciones móviles funcionen

Los usuarios móviles tienen altas expectativas, y no hay tal cosa como un tamaño que se adapte a todos. Observamos cómo esto afecta al desarrollo de aplicaciones móviles.

Muchas organizaciones ven las aplicaciones móviles como una excelente forma de interactuar con empleados, consumidores e individuos de otras empresas. El desarrollo de aplicaciones móviles ha pasado de ser una idea tardía o una versión móvil ligera de una aplicación tradicional a una mentalidad de móvil primero.

Los usuarios móviles tienen altas expectativas, y no hay tal cosa como un tamaño que se adapte a todos. Muchos utilizarán diferentes factores de forma de dispositivo –teléfonos inteligentes y tabletas– y una mezcla de sistemas operativos, a veces de forma intercambiable.

Esto tiene un efecto profundo en el desarrollo de aplicaciones móviles. Las aplicaciones móviles no solo tendrán que estar disponibles en el dispositivo preferido de un usuario dado, sino que también funcionarán de forma consistente en diferentes dispositivos.

Las aplicaciones también deben ofrecer valor a los usuarios y ser atractivas, lo que significa que el desarrollo de aplicaciones móviles debe abarcar áreas innovadoras e inusuales, más allá del desarrollo de aplicaciones tradicionales.

Un enfoque más inteligente en el usuario

El usuario viene primero. Históricamente, se ha hecho mucho hincapié en la estética y el aspecto y la sensación, pero esto ahora está cambiando hacia la usabilidad, la interacción efectiva y la experiencia general del usuario.

Para mejorar la usabilidad y el compromiso, parte de esta interacción se está moviendo más allá de la pequeña pantalla móvil tradicional, hacia la realidad virtual y aumentada (VR y AR).

Aunque la naturaleza inmersiva de VR ha atraído por mucho tiempo, fue AR la que tuvo un gran impulso en 2016 con la popularidad de Pokemon Go. A pesar de sonar similar, VR y AR tienen fines completamente diferentes y requieren formas de pensar completamente diferentes desde una perspectiva de desarrollador. Es probable que el impacto de AR sea más amplio que el de VR, ya que puede ser agregado a tantas aplicaciones y no obliga a los usuarios a sumergirse, sino que simplemente lo asiste, a medida que sus mundos físico y digital se superponen y, por lo tanto, pueden aplicarse a dispositivos móviles existentes.

Los productos en esta área de ritmo rápido y embrionario van y vienen, incluso los grandes como Here de Nokia, y probablemente hay más proyectos de código abierto que kits de herramientas de desarrollo AR propietarios, como ARToolkit, y especialistas en desarrollo como Azoft, que pueden ayudar con la integración de AR. Aurasma de HP, Blippar y Wikitude proporcionan capacidades de extremo a extremo con kits de desarrollo de software (SDK) en maduración, para que los desarrolladores de aplicaciones los puedan utilizar.

Poner la movilidad en contexto

No es solo el extremo frontal de las aplicaciones móviles lo que está cambiando. En un momento, el enfoque para el contexto móvil giraba en torno a la ubicación y la oportunidad de servicios basados ​​en la localización, que en algunos aspectos se ha transformado en apetito por AR. Ahora se hace más hincapié en una comprensión contextual más amplia que explote el alcance sensorial del entorno del dispositivo móvil, en combinación con la potencia y la capacidad de big data en la nube. Combinando esto con capacidades remotas para explotar la inteligencia artificial (IA), el aprendizaje automático y lo que a veces se llama inteligencia ambiental (AmI).

AmI a menudo hace una aparición como asistentes personales y chatbots en muchos escenarios, pero no hay ninguna razón por la cual la interacción móvil soportada con inteligencia no deba ser utilizada en las actividades mundanas –simplificar la sobrecarga de comunicaciones de correo electrónico, por ejemplo– o para mejorar las aplicaciones empresariales.

Microsoft ya ha integrado Intellisense en Visual Studio, y Amazon Web Services (AWS) ha anunciado recientemente la integración de Amazon Lex. Mientras que Siri de Apple, Cortana de Microsoft e incluso Google Now han luchado para ganar más que una adopción geek, Alexa de Amazon realmente ha despegado y ya está siendo promocionada para aplicaciones empresariales. Esto tendrá un impacto en el desarrollo de aplicaciones móviles a medida que se difundan las aplicaciones iniciadas por voz.

El énfasis en la experiencia del usuario a menudo se beneficiará de un enfoque ágil respecto al desarrollo de software, con la creación de prototipos y la participación de los usuarios tan pronto como sea posible. El prototipado rápido y desarrollo ciudadano, donde los no programadores pueden convertir ideas empresariales en aplicaciones móviles, cambia la atención hacia generar rápidamente valor. Hay una serie de plataformas de plataformas de "código bajo" o "sin código" dirigidas a constructores de aplicaciones no técnicas, que utilizan una mezcla de prototipos rápidos y servicios de back-end basados ​​en la nube, como Appery.io, MobileSmith, K2, Visualiser de Kony, Mercato KnowledgeKube, Mendix y OutSystems. Estos enfoques hacen que sea más fácil combinar la funcionalidad con la necesidad, y liberar tiempo de ejecución para que otros puedan abordar algunos de los desafíos de desarrollo más técnicos.

Haciendo ingeniería de la experiencia móvil

A pesar de todo el brillo requerido para que las aplicaciones móviles sean atractivas, deben ser diseñadas para trabajar en una amplia gama de dispositivos, producir aplicaciones que funcionen eficazmente en múltiples plataformas es el desafío eterno para los desarrolladores. La movilidad hace la vida más dura con la gama de tipos de dispositivos y sistemas operativos, espacios de pantalla de tamaño limitado y variable, conexión de red intermitente y expectativas de los usuarios de una experiencia más simple.

Gestionar una serie de diferentes variantes para diferentes plataformas es un desafío. Mientras que las plataformas universales de "escribir una vez, correr en cualquier parte", como Java, han existido desde hace algún tiempo, la realidad es un poco más compleja. No solo los sistemas operativos y las interfaces de programación de aplicaciones (API) de la plataforma varían, sino también los lenguajes de programación nativos; Java en Android, Objective C en iOS (aunque el nuevo idioma de Apple, Swift, crecerá este año) y C++ en Windows Mobile. Sin embargo, existen cuatro mecanismos principales a través de los cuales se puede lograr fácilmente el desarrollo de multiplataformas móviles: aplicaciones web de estilo móvil, aplicaciones híbridas, aplicaciones cruzadas y back-end como servicio.

  • Aplicación web de estilo móvil: Con un estándar HTML5 mucho más establecido, JavaScript y hojas de estilo en cascada, y herramientas como Sencha, esta es una forma rápida de difuminar las diferencias entre las plataformas, pero en última instancia no es tan funcional como las alternativas y tiene menos control para el desarrollador.
  • Aplicación híbrida: Una conveniente combinación de enfoques de desarrollo nativo y web, originalmente popularizados por PhoneGap, donde una aplicación nativa ligera lanza un navegador integrado. El código abierto Apache Cordova es el punto de partida común para PhoneGap, pero también para otras herramientas híbridas como Telerik y Ionic.
  • Aplicación cruzada: Aquí, productos como Xamarin (propiedad de Microsoft), Appcelerator o 5App permiten a los desarrolladores escribir código en un idioma y luego convertirlo a código nativo para los dispositivos móviles de destino. Lo nativo es mejor para el mejor rendimiento –generalmente vital para juegos, menos para la mayoría de aplicaciones empresariales– y también da acceso completo a las características y funcionalidades de la plataforma subyacente. Otros, como RubyMotion, utilizan Ruby y luego compilan en aplicaciones nativas.
  • Back-end como servicio: Esta es una tendencia relativamente reciente, para descargar mucha más lógica de negocios en la nube. Algunos, como Kai, AnyPresence o Kumulos, funcionarán bien para desarrolladores independientes. Otros, como Kinvey, están dirigidos a la empresa. Entre los jugadores de nube más grandes también está AWS con su Mobile Hub y Lambda; Google tiene CloudFunctions; y la iniciativa de IBM sin servidores con OpenWhisk.

Si bien el enfoque en el usuario móvil es importante, y ahora puede ser un enfoque principal en lugar de un enfoque secundario, muchas empresas requerirán que las aplicaciones funcionen bien tanto en el escritorio, como en las plataformas de dispositivos móviles. Si bien existen muchas herramientas de bajo costo, de código abierto y herramientas específicas para móviles primero y solo móviles, también hay plataformas de desarrollo empresarial más plenamente funcionales a considerar, desde Kony, Pega ApplicationMobility Platform (anteriormente Antenna) y SAP Mobile Platform. Estas ofrecen entornos completos para el desarrollo, la entrega y la gestión de aplicaciones móviles.

Haga tiempo para las pruebas

El gran número de dispositivos y variantes de sistemas operativos con emuladores asociados crea desafíos para las pruebas, especialmente porque los usuarios no perdonan los problemas y eliminarán rápidamente las aplicaciones de bajo rendimiento. Las pruebas de software a menudo son una especie de idea tardía en cualquier caso, especialmente cuando hay presión para llegar rápidamente al mercado, y para hacer correctamente las pruebas, estas deben llevarse a cabo en los dispositivos reales, no solo en los emuladores.

La única manera realista de hacerlo es automatizar tanto como sea posible. Los proveedores de servicios ofrecen una ruta, como TestObject de SauceLabs, Perfecto Mobile y Xamarin, con su Test Cloud, que ofrece acceso basado en la nube a un gran número de dispositivos móviles reales. Para aquellos que buscan la automatización para registrar un proceso de prueba y luego ejecutarlo en diferentes dispositivos e idiomas, hay herramientas de código abierto, además de ofertas como Sigos, Ranorex y SeeTest de Experitest.

Así como las pruebas funcionales, es igual de importante probar la experiencia del usuario y, a menudo, esto solo se puede hacer en conjunto con los usuarios, una vez que la aplicación haya sido al menos parcialmente liberada "en la selva". Esto podría incluir reclutar usuarios en un programa de usabilidad o prueba beta con herramientas como Userlytics, Appsee y Applause, o ver sus reacciones faciales y vocales mientras están usando la aplicación con algo como UserZoom o Lookback.

También hay pruebas de seguridad –los escáneres de vulnerabilidad de software se han estado adaptando para el código móvil– y servicios adicionales como Mars de Veracode (servicio de reputación de aplicaciones móviles).

Proporcionar una experiencia perfecta

Las aplicaciones móviles han recorrido un largo camino en los 20 años desde la aparición del juego de Nokia Snake. No solo hay ganancias de funcionalidad y rendimiento, hay nuevos modelos comerciales que han transformado aquello en lo que las aplicaciones se han convertido: menos en un producto puntual, y más en un elemento de un servicio.

El eslogan de Apple "hay una aplicación para eso" destaca la ubicuidad de los móviles, mientras que el de Android "estén juntos, no sean lo mismo" indica que hay coincidencia, a pesar de las variaciones en los dispositivos. Los usuarios esperan una experiencia universal y sin problemas, pero los desarrolladores de aplicaciones móviles saben que necesitarán mucha ayuda en el camino a ofrecer eso.

Rob Bamforth es un analista principal de Quocirca.

Este artículo se actualizó por última vez en septiembre 2017

Profundice más

PRO+

Contenido

Encuentre más contenido PRO+ y otras ofertas exclusivas para miembros, aquí.

Inicie la conversación

Envíenme notificaciones cuando otros miembros comenten sobre este artículo.

Enviando esta solicitud usted acepta recibir correos electrónicos de TechTarget y sus socios. Si usted reside afuera de Estados Unidos, esta dando autorización para que transfiramos y procesemos su información personal en Estados Unidos.Privacidad

Por favor cree un Nombre de usuario para poder comentar.

- ANUNCIOS POR GOOGLE

Close