Dominando Mobile DevOps con App Center

Sobre el tema:

Contenido

App Center. En la actualidad, las expectativas de los usuarios en relación a las aplicaciones móviles son altísimas y más si son orientadas al consumidor. La verdad es que una aplicación competitiva está a solo un paso de distancia del éxito y del fracaso y es que las reseñas pueden hacer o deshacer la adopción.

También es importante pensar en los empleados como consumidores, ya que esperan las mismas experiencias de alto rendimiento en sus aplicaciones de trabajo que obtienen por parte de sus empresas con las que interactúan a diario para agilizar sus labores.

DevOps proporciona una manera de mantenerse al día con estas altas expectativas y las demandas de los usuarios en constante evolución, especialmente cuando se trata del mundo de las aplicaciones móviles.

💡 Nota: El proceso de entrega de aplicaciones móviles plantea desafíos únicos en comparación con las aplicaciones web.

Desafíos en el mundo del desarrollo móvil

Por un lado nosotros tenemos que todo el ecosistema móvil tienen una gran cantidad de herramientas, aplicaciones, ambientes de trabajo, etc para poder desarrollar nuestras aplicaciones lo cual a nivel de tiempo y costos estar en varios mercados puede ser un poco doloroso.

Hoy en día, estamos viendo como hay ciertos Frameworks que dan solución a esta problemática. Sin embargo, el seguimiento de errores, mantenimiento, actualización, adaptación al mercado, etc sigue siendo un desafio.

Aparte de los entornos de trabajo que ofrecen las distintas herramientas también podemos ver un ecosistema móvil muy fragmentado, con una gran cantidad de dispositivos y sistemas operativos que cambian con frecuencia.

Análisis a finales del 2017

En Android podemos ver como a finales del 2017 el sistema operativo predominante es Marshmallow con el 30.9% del mercado de los dispositivos. Hoy en día (Agosto 2020) Pie domina el mercado con el 39.9% del mercado. Es claro que la popularidad de las versiones del OS en Android cambia muy rápido.

En iOS tenemos que para finales del 2017 la version del OS de iOS mas usada era iOS 11 con un 59% de los dispositivos del mercado. Tres años mas tardes tenemos iOS 13 y una beta de iOS 14 publicada.

Análisis a finales del 2017

Es muy importante tener estos datos en cuenta a la hora de lanzar aplicaciones móviles para consumo masivo. Muchos equipos de trabajo obvian este tipo de datos para focalizar el desarrollo de sus aplicaciones y esto puede verse reflejado en las reviews en las tiendas de aplicaciones lo cual puede afectar en las descargas de la aplicación o en la percepción de la marca de la empresa o producto.

Y para ponerle la cereza al paste tenemos dispositivos en todas las formas y tamaños.

Tenemos tablets, iPads, los nuevos teléfonos plegables,  o doble pantalla. Son muchas las variables y condicionantes que hay a la hora de desarrollar una muy buena aplicación para los usuarios.

Y los usuarios finales, independientemente del dispositivo, siguen teniendo expectativas muy altas. Mantenerse competitivo en este entorno requiere abrazar nuevos cambios a través de la innovación y mobile DevOps para construir, probar y actualizar continuamente nuestra aplicación.

Innovación rápida y lanzamiento continuo de aplicaciones

Mobile DevOps tiene el objetivo de que las decisiones comerciales y técnicas importantes puedan ser priorizadas mientras se le proporciona valor a los usuarios. Esto exige Innovación rápida y lanzamiento continuo de aplicaciones.

Para garantizar la lealtad de los usuarios, el equipo de trabajo de la aplicación móvil debe proporcionar la actualización correcta al cliente correcto en el momento correcto. Esto se puede lograr controlando todo el ciclo de vida de las aplicaciones móviles.

¿Cómo? A través del Diseño y Desarrollo inteligente, las pruebas y el monitoreo constante de nuestras aplicaciones.

Proporcionar aplicaciones de buena calidad a los usuarios y aprender de su experiencia general es imprescindible. 

Ok, Luis. Entendí la idea, ¿Y ahora? Bueno, lo ideal seria trabajar con una herramienta que nos ayude a:

Minimice el trabajo en progreso.
Garantice una experiencia de usuarios de la mas alta calidad para nuevas aplicaciones o actualizaciones.
Escale la entrega con un proceso automatizado.


Es por ello que les quiero presentar…

App Center

App center nos permite automatizar todo el ciclo de vida de desarrollo de nuestras aplicaciones para iOS, Android, Windows y macOS mientras aprendemos del mercado, sus usuarios y el feedback recibido.

A nivel general App center es un servicio de desarrollo integrado para compilar, probar, lanzar y supervisar aplicaciones móviles y de escritorio.

La gran mayoría de plataformas son soportadas por APP Center, por ejemplo:

Lanza tu aplicación mas rápido con DevOps

Ahora Podemos entregar de nuestra aplicacion mas rapido que nunca con app center:

Construye tu aplicación en cada commit
Prueba tu aplicación automáticamente en dispositivos reales
Distribuye automáticamente a beta testers o directamente a las tiendas

Builds de App Center

Los Builds en app center nos permiten automatizar todo este proceso, testear nuestro codigo y liberar nuestro pipeline.

Con app center builds nosotros Podemos…

Genera una compilación automática para cada código integrado
Administra tu código en un repositorio Git
Administra tus branch
Integración con GitHub, Bitbucket y VSTS
Crea tus aplicaciones iOS sin necesidad de un macOS

Tests en App Center

En app center nosotros podemos llevar Tests para encontrar errores generales o particulares en cualquier dispositivo antes de nosotros lanzar nuestra aplicación.

Con app center tests, nosotros podemos…

Validar nuestro código y lanzar mejores aplicaciones, mas rápido.
Verificar que nuestras aplicaciones trabajen apropiadamente en los dispositivos que el usuario tendrá o nuestro publico objetivo.

Es Bueno mencionar que app center soporta:

  • +2000 dispositivos reales
  • +400 diferentes configuraciones de dispositivos
  • Tests pueden ser escritos para iOS y Android apps en: Xamarin UITest, Calabash, Appium o Espresso.

Distribución y Code Push

Como mencione anteriormente, en app center nosotros Podemos distribuir y lanzar nuestras applicaciones a las tiendas. Esto con el objetivo de automatizar el proceso de lanzamiento y promover los builds validados en las tiendas de aplicaciones.

En app center nosotros podemos…

Especificar un grupo de testers o crear una página de reclutamiento beta abierta. Conectar ese grupo a una rama para enviar actualizaciones automáticamente cada vez que se actualice el código.
Una vez que se haya probado una versión beta candidata, se puede enviar la misma compilación directamente a Intune, Google Play o App Store Connect. App Center rastrea tus compilaciones a través de cada lanzamiento.

Mejor compromiso después de lanzamiento

Con app center ahora podemos tener un mejor compromiso en la entrega de nuestras aplicaciones después que la lancemos.

Diagnósticos en App Center

En app center nosotros temenos una sección de Diagnósticos que colecciona o almacena datos en tiempo para real para nosotros poder priorizar y corregir errores críticos.

Los reportes de errores se agrupan por causas comunes, resaltando la pila de errores relevante para que se puedan ubicar los errores por archivo y número de línea.
También se pueden Buscar accidentes de usuarios específicos y explore informes individuales para encontrar rutas de exploración de eventos y archivos adjuntos de datos personalizados.

Analítica en App Center

Con analytics podemos ver toda la información relacionada al dispostitivo del usuario, nuestra aplicación y mucho más.

Análisis en vivo para sesiones, eventos, bloqueos y más
Vea la actividad de transmisión de sesiones y eventos de inmediato, y recopile métricas que se vuelven más útiles con el tiempo.

¿Quien? ¿Qué? ¿Dónde? ¿Cuando? ¿Por qué? ¿Cómo?
¿Su audiencia está creciendo? ¿Qué dispositivos y sistemas operativos son más comunes? ¿Qué características son populares? Obtenga respuestas directas a las preguntas que le interesan.

Incluye tres características: Audiencia, Eventos y Log Flow. Con estas características y todos los datos provistos podemos analizar las necesidades de nuestros usuarios.

Audiencia

  • ¿Debo traducir mi solicitud a otro idioma?
  • ¿Mis usuarios están utilizando la última versión de la aplicación?
  • ¿Cuáles son los dispositivos más utilizados?
  • ¿Puedo eliminar el soporte de la versión anterior?

Eventos

  • ¿Cuáles son los contenidos más vistos?
  • ¿Qué contenido les gusta más a los usuarios?
  • ¿Cuántas personas completaron el formulario?
  • ¿Cuál es la edad promedio de los usuarios que usan mi aplicación?

Log Flow

  • Registros para garantizar la integración con App Center.
  • Registros de sesiones, bloqueos, eventos y sus propiedades.
  • Actualización automática cada 3 segundos.

Espero que este articulo sea un punto de partida para que aquellos que no han automatizado sus procesos de desarrollo y lanzamiento. Me gustaría saber que te parece todo esto y si te fue de utilidad en los comentarios 😉

Para obtener contenido extra, sígueme en Instagram LinkedIn! ¡Gracias por leer!

¿Qué opinas de este contenido?
 
Luis Matos

Luis Matos

I help professionals and companies to create value solutions. I am a Systems Engineer, blockchain executive, and international mobile application speaker. Founder of the Malla Consulting Agency and several international technology communities.
Suscribirte
Notificar de
0 Comments
Inline Feedbacks
View all comments
0
Would love your thoughts, please comment.x
()
x

Buscar en el sitio