Upload
jess
View
40
Download
0
Tags:
Embed Size (px)
DESCRIPTION
Manuel Rodríguez Rodríguez. Mobile Solutions Architect 29 de Octubre de 2013. Introducción a MobileFirst. Document number. Introducción. Distintos sistemas operativos Componentes Hardware dispares Desarrollo nativo vs híbrido vs web “time to market” muy agresivo - PowerPoint PPT Presentation
Citation preview
© 2013 IBM Corporation
Introducción a MobileFirst
Manuel Rodríguez Rodríguez. Mobile Solutions Architect
29 de Octubre de 2013
Document number
© 2013 IBM Corporation
• Distintos sistemas operativos • Componentes Hardware dispares• Desarrollo nativo vs híbrido vs web• “time to market” muy agresivo• Rápida evolución de la tecnología• Incertidumbre tecnológica
Introducción
La realidad de un mercado heterogéneo
© 2013 IBM Corporation
El ciclo de vida del desarrollo de aplicaciones móviles difiere del desarrollo de aplicaciones tradicionales:
• Son APLICACIONES (no solo web)
• Aprovisionamiento / gestión de versiones• Mayor tiempo de testing que en desarrollos (web) tradicionales.• Hemos olvidado como era el desarrollo de aplicaciones
• Tiempos de respuesta en dispositivos• Footprint de la aplicación• Depuración en remoto de aplicaciones• Distintos focos dependiendo si son aplicaciones B2E o B2C
• Seguridad vs Usabilidad• La experiencia de usuario es vital.
• El dispositivo ¡si importa!• Teclados, pantallas, GPS, Cámara, orientación, etc.
No tener en cuenta la singularidad del desarrollo de aplicaciones móviles puede penaliza la experiencia de usuario
IntroducciónRetos del desarrollo
© 2013 IBM Corporation
Testing mucho más complejo y elaborado
El testing de “laboratorio” es limitado (emuladores, simuladores)
Se necesitan dispositivos físicos para un testing adecuado
Instrumentalización de aplicaciones para simplificar el testing
Componentes Hardware difícil de probar— GPS, Giroscopio, “look and feel” de pantalla, NFC, etc.
Miedo a lo desconocido.— Cómo están usando / funcionando las aplicaciones en nuestros
clientes (errores, limitaciones, opciones no usadas, etc.)— Cómo están atacando a nuestras aplicaciones (“decompiling”,
Malware, virus, etc.)
Unos planes de prueba no acordes a las necesidades de las aplicaciones móviles hacen que el éxito de las aplicaciones estén mermados debido a una usabilidad limitada.
IntroducciónRetos del desarrollo
© 2013 IBM Corporation
Diseño y desarrollo
Obtener Información
Gestión y configuración
Puesta en producción
Complementación / Intrumentalización
Integración
Test
Certificación y validacionesDe seguridad
Desarrollo eficiente de aplicacionesEl ciclo de vida de desarrollo de aplicaciones móviles
© 2013 IBM Corporation
Desarrollo eficiente de aplicacionesDiseño
Necesidad de reducir costes y “time to market” Entornos de desarrollo conocidos (eclipse) Paradigmas de desarrollo web e híbridos
— HTML5, JavaScript, CSS— Necesidad de minimizar el desarrollo nativo de aplicaciones
Frameworks de desarrollo reutilizable Integración con herramientas del ciclo de vida del desarrollo
existente en la compañía (Control de versiones, testing funcional, etc.)
REUTILIZACIÓN de componentes y servicios compartidos para los distintos agentes involucrados en el desarrollo
Worklight como plataforma de desarrollo y ejecución Soporte multidispositivo desde el origen.
La adopción de desarrollos híbridos permiten tener una reducción de costes al estandarizar el desarrollo multidispositivo así como un “time to market” mucho más limitado.
© 2013 IBM Corporation
Desarrollo eficiente de aplicacionesComplementación / Instrumentalización
Necesidad de añadir componentes tecnológicos a nuestras soluciones para habilitar nuevas capacidades
• Testing Transformación de nuestras aplicaciones para poder
simplificar y automatizar las pruebas Integración con herramientas corporativas de testing
(Rational Test Workbench)
• Analítica Habilitar nuestros desarrollos para una recogida de datos
automática de información en entornos productivos Filtrado y depuración de datos para una interpretación más
ágil en la corporación
La instrumentalización nos permite añadir capacidades necesarias para una mayor calidad de nuestro software así como nos abre una ventana a ver el uso de las aplicaciones con los ojos de nuestros clientes
© 2013 IBM Corporation
Plataformas de dispositivos, fragmentación y crecimiento
• iOS, Android, BlackBerry, Windows Phone, etc.
• Resoluciones de pantallas
• Refresco de la base instalada cada 24 meses
• Solo en 2011, hubo 300 nuevos dispositivos
Nuevas capacidades para probar• Cámara, GPS, orientación, voz, etc.
Más consideraciones de red• Múltiples operadores, ancho de banda variable, latencia,
uso en formato desconectado, etc.
La experiencia de usuario es más importante Pruebas de usabilidad Pruebas de translación / rotación Pruebas de red (Tiempo de respuesta medio, Calidad de
servicio, etc.)
Desarrollo eficiente de aplicaciones¿Por que las pruebas de aplicaciones móviles son distintas?
© 2013 IBM Corporation
Sistemas operativos soportados Android 2.2+ IOS 6+ Android e iOS (aplicaciones híbridas)
HTML5/CSS3 JQuery Mobile
Captura (grabación) de un test de un dispositivo físico o emulador
El lenguage de definición de test estructurados (ClearScript) simplifica la autoría y soporta multilenguaje
Comparte multicanalidad y las capacidades de ejecución dentro de Rational Test Workbench & Rational Quality Manager
Existe una transición directa entre Worklight y Rational Test Workbench
La automatización de las pruebas simplifica los costes asociados a las pruebas, así como acelera la calidad del software desarrollado.
Automatización de los tests funcionalesSoporte nativo, web y aplicaciones híbridas
Desarrollo eficiente de aplicacionesTest
© 2013 IBM Corporation
Source: Arxan State of Security in the App Economy – 2012
Las aplicaciones móviles, en el punto de mira de los hackers:
Los dispositivos móviles son muy atractivos para los hackers ya pueden conseguir a la vez datos personales y corporativos.
2x
© 2013 IBM Corporation
Dentro del mundo de la seguridad existen dos tipos de pruebas
• Caja Negra: En este tipo de pruebas, se desconoce el funcionamiento interno del software y se intenta ver su respuesta ante ataques conocidos (SQL injection, cross scripting, etc.)
• Caja Blanca: conocemos el código fuente, y verificamos cuales son los puntos críticos del desarrollo.
• Más relacionado con el mundo de las aplicaciones• Específico para cada sistema operativo (Android, iOS, etc.)• Automatización en el ciclo de desarrollo• No solo verificamos riesgos en el código, sino riesgos en el “filtrado” de
información a terceros
Tener desde el comienzo el plan de seguridad en nuestro desarrollo ayuda a que el software desarrollado minimice los riesgos de tener errores que puedan ser explotados por terceros para acceder a datos sensibles tanto del usuario como de nuestra empresa.
Desarrollo eficiente de aplicacionesServicios Compartidos
© 2013 IBM Corporation
Una vez que nuestra aplicación está desarrollada, hay que ponerla en producción:
• Business to Consumer AppStore / Market / etc: Públicos con ciclos de aprobación por cada uno
de los proveedores de sistemas operativos
• Business to Employee Necesidad de un Aplication Center interno para cada Sistema operativo
(dependiendo de la estrategia de la compañía BYOD, etc.) Integración con ciclo de vida de las aplicaciones Aprovisionamiento automático en los dispositivos Perfilado de aplicaciones en el dispositivo
Desarrollo eficiente de aplicacionesPuesta en producción
© 2013 IBM Corporation
~30%
~70%
Esfuerzo Global
Desarrollo eficiente de aplicacionesServicios Compartidos
DesarrolloCross-Platform
DesarrolloCross-Platform
Geo-fencingGeo-fencing
VersionadoDe applicaciones
VersionadoDe applicaciones Notificaciones
PushNotificaciones
Push
AnalíticaAnalítica
IntegraciónIntegración
SeguridadSeguridad
DesarrolloCross-Platform
DesarrolloCross-Platform
Geo-fencingGeo-fencing
VersionadoDe applicaciones
VersionadoDe applicaciones Notificaciones
PushNotificaciones
Push
AnalíticaAnalítica
IntegraciónIntegración
SeguridadSeguridad
Cuanto más servicios compartidos tenga nuestra infraestructura, más rápido será el desarrollo de nuevas aplicaciones y antes tendremos nuevas capacidades en nuestras aplicaciones
© 2013 IBM Corporation
Servicios compartidos
Con la creciente proliferación de aplicaciones se ve necesario una plataforma de servicios compartidos:
Abstracción de las distintas plataformas de notificaciones (push) Geo – fencing Seguridad (validación de usuarios y de aplicaciones) Punto único de acceso a la infraestructura Integración centralizada (ESB, Adaptadores específicos, etc.) Replicación de datos Estadísticas de uso Analítica de las aplicaciones Actualizaciones directas de aplicaciones …
Cuanto más servicios compartidos tenga nuestra infraestructura, más rápido será el desarrollo de nuevas aplicaciones y antes tendremos nuevas capacidades en nuestras aplicaciones
© 2013 IBM Corporation
Analítica móvilCuantitativa Analítica
(“Qué, Dónde, y Cómo”)Analítica cualitativa(“¿Por qué?”)
15
IBM Coremetrics Digital Analytics proporciona un análisis cuantitativo capturando datos de las interacciones de los usuarios y generando interfaces de uso mostrando:
• Datos en tiempo real de ventas• Flujos de tráfico en la web• Benchmarks de conversión
Tealeaf provee análisis cualitativo capturando, repitiendo y analizando los datos de interación de usuarios individuales mostrando:
• Todas las interacciones del interfaz de usuario
• Mensajes de error• Uso de la aplicación
© 2013 IBM Corporation
Analítica Cualitativa
Comportamiento de usuario
– Pantallas vistas– Campos de texto, valores– Clicks, movimiento– Aplicación ejecutada, modo background– …
Entorno
– Versión de aplicación, SSOO, Modelo– Orientación del dispositivo, IP, Memoria– Conectividad– GPS, operador móvil– …
Salud de la aplicación
– Excepciones, Fallos de aplicación– Errores en las conexiones a servidor– …
• Detectar problemas en los clientes al acceder a datos
• Aislar por versión de aplicación, por error, por entrada
• Cuantificar el impacto en número de usuarios
• Analizar el comportamiento de los usuarios – secuencia de eventos, logs, llamadas a servidor
• Búsqueda para encontrar otros usuarios afectados
© 2013 IBM Corporation
12 adquisiciones para mejorar nuestra posición desde 2006
Más de 200 aplicaciones disponibles en los App Stores con más de 1M de descargas
Citado como lider en diseño de aplicaciones y servicios gestionado por Forrester y Gartner
Más de 125 patentes sobre invenciones de wireless 3n 2012 de un total de 270
Inversión creciente en 2013
El mapa de soluciones de IBM
© 2013 IBM Corporation