Desarrallo Android: Experiencias en proyectos

30
Slash Mobility Desarrollos Android: Experiencias en Proyecto

description

Presentacion que SlashMobility dio en la Barcelona Developer Conferencia sobre consejos adquiridos de los fracasos en proyectos

Transcript of Desarrallo Android: Experiencias en proyectos

Page 1: Desarrallo Android: Experiencias en proyectos

Slash Mobility

Desarrollos Android: Experiencias

en Proyecto

Page 2: Desarrallo Android: Experiencias en proyectos

Agenda: Desarrollos Android: Experiencias en Proyecto

MercadoApps

Nuestra Experiencia

10Slash-

Consejos

Page 3: Desarrallo Android: Experiencias en proyectos

El por qué del boomTodos quieren una App

Hace 20 años todas las empresas querían tener Web… hoy todas quieren tener una

app, ¿Por qué?

WebApp

Page 4: Desarrallo Android: Experiencias en proyectos

1000 Millones de smartphone

2011

El mercado de los SmartphonesA mi me daban 2..

$29Bill 2011

Las Apps tienen una audiencia potencial de

500 millones de usuarios

1 Millón de

Apps

+SMARTPHONES QUE PCS

TRÁFICO MÓVIL

APPS3 de 4 usuarios de smartphone

esperan una App de sus marcas

Page 5: Desarrallo Android: Experiencias en proyectos

FÁCIL … FÁCIL

Briconsejos….Slash Consejos

Page 6: Desarrallo Android: Experiencias en proyectos

SlashConsejos: De donde vienen nuestros consejos

SlashRadio

Radio Fuga

Radio Cornellà

Sourcing

Servicios

Proyectos

SlashProduct

Formación

Formación

SlashGEO

Consultoria

Conferencias

Desarrollo App

SlashCam

Page 7: Desarrallo Android: Experiencias en proyectos

 La llamada conquista del Oeste se inicia, hacia 1848, con el estallido de la fiebre del oro en California. Rápidamente, lo que era un desierto con unas pocas aldeas, comenzó a poblarse de manera desordenada y vertiginosa. Su población creció vertiginosamente. La mayor parte del oro fácil de recoger ya había sido obtenida para 1850, por lo que la atención se desvió hacia la extracción del mineral en localidades más problemáticas. Para 1855, las circunstancias económicas habían cambiado radicalmente. El oro ya no era tan fácil de obtener, y la única forma rentable de conseguirlo era con grandes equipos de trabajadores, ya fueran empleados o socios.

Fiebre del Oro

Freelance Startup Experiencia 2-3 años

Nuevas Startup Consultoras (Cross Providers)

Fiebre Internet

40años

10 años

Vendedores de crece-

pelos

SlashConsejo 1: Hay que saber quien eres y quienes son los otros

Page 8: Desarrallo Android: Experiencias en proyectos

Diferentes tipos de aplicaciones – Diferentes tipos de modelo de negocio Aplicacione

s Empresas

Adhoc

Modelo Servicios

Aplicaciones Empresas

Producto

Modelo Licenciamie

nto

Aplicaciones Usuario

MarketApplication

Modelo Descarga

Tipo Cliente

Tipo de Aplicación

Modelo de Negocio

- +Necesidad de inversión

Publico PotencialCrecimiento - Beneficios

Clientes empresariales : Diferentes objetivos – Diferente complejidad de aplicaciones

Marketing ActionsMarketing Actions Operational ActionsOperational Actions

Poco ComplejasPoco Complejas

Orientadas al Cliente Orientadas al Cliente Menor CosteMenor Coste Más ComplejasMás ComplejasUsuario

internoUsuario interno Mayor CosteMayor Coste

Tipo de Aplicaci

ón

SlashConsejo 2: ¿Sabes que tipo de aplicaciones quieres hacer?

Page 9: Desarrallo Android: Experiencias en proyectos

• Usualmente pensamos en la Aplicación, la desarrollamos y luego …..¿?

ISIDORO EGEA RANGE

Quien es el usuario(Tipo de app)

Cual es el modelo de negocio

La idea

Que plataforma

La implementació

n

¿Qué fue primero el huevo o la gallina?

SlashConsejo 3: ¿Qúe fue primero el huevo o la gallina?

Page 10: Desarrallo Android: Experiencias en proyectos

Conoce la plataforma , conoce a los usuarios

Como es un usuario iPhone

Como lo ve un usuario

Android

Como se ve a si mismo

SlashConsejo 4: Conoce tu plataforma y a sus usuarios

Page 11: Desarrallo Android: Experiencias en proyectos

Conoce la plataforma , conoce a los usuarios

Como es un usuario Android

Como se ve a si mismo

Como lo ve un usuario

iPhone

Como lo ve un usuario

BB

Slashconsejo 4: Conoce tu plataforma y a sus usuarios

Page 12: Desarrallo Android: Experiencias en proyectos

Conoce la plataforma , conoce a los usuarios

EDAD

Android

17- 34 = 54%35 - 44 = 21% + 44 = 25%

iPhone

17 - 34 = 46%35 - 44 = 21%

+44 = 33 %

Android

Hombres = 73%Mujeres = 27%

iPhone

Hombres = 57%Mujeres = 43%

SEXO Free vs Paid

Android

App Free = 2/3App Pago = 1/3

iPhone

App Free = 1/3App Pago = 2/3

Modelo Publicidad

Modelo Descarga

Slash Consejo 4: Conoce tu plataforma y a sus usuarios

Page 13: Desarrallo Android: Experiencias en proyectos

¿Qué quiere el cliente?

“Quiero una aplicación como la de …” “Quiero lo mismo que tengo en la web…” “…Y Lo quiero todo en 3 semanas…”

Nuestro consejo:

La aplicación debe aportar VALOR La Web es la web y el móvil…el móvil! Lo que se tarda en desarrollar lo sabe el

desarrollador, no el cliente!

Y de paso…Win to Win! El cliente NO es tu enemigo! (aunque a veces lo parece )

SlashConsejo 5: Requerimientos , el cliente ese gran filosofo

Page 14: Desarrallo Android: Experiencias en proyectos

SlashConsejo 6: Planifica contingencias , no es oro todo lo que reluce

.

El papel lo soporta todo, pero…

¿Qué pasaría si…?

No se cumple la planificación temporal…

Los servicios del cliente se caen… Aparecen Bugs en producción… HAY QUE TENER UN PLAN B!! (lo

usaremos más de lo que nos gustaría!)

Page 15: Desarrallo Android: Experiencias en proyectos

SlashConsejo 7: Diseño / Usabilidad – El talón de aquiles del desarrollador

.

No te preocupes, yo te hago el desarrollo y te diseño las pantallas…

Por lo general, el desarrollador es bueno desarrollando.

El diseño, para los diseñadores!

¿Qué pasa si un programador hace de diseñador?

Page 16: Desarrallo Android: Experiencias en proyectos

SlashConsejo 8: Prototipos, si gracias! – Involucra al cliente.

.

El cliente NO sabe lo que quiere hasta que lo utiliza!

A priori, sólo tiene una idea general de lo que quiere.

Con ideas generales NO se consigue hacer una aplicación!

Preparados para el cambio: cuando el cliente lo vea, lo cambiará. Feedback continuo!

El cliente es parte de TU equipo, NO tu enemigo!

Page 17: Desarrallo Android: Experiencias en proyectos

SlashConsejo 9:Let’s test it! Oh no!!

Procesos que permiten verificar y revelar la calidad de un producto software.

Es decir: que las aplicaciones funcionen como se espera que lo hagan y de forma eficiente y efectiva.

Conceptos como estabilidad, escalabilidad, eficiencia y seguridad se relacionan a la calidad de un producto

Program testing can be a very effective way to show the presence of bugs, but it is hopelessly inadequate for showing their absence.

Testing

Page 18: Desarrallo Android: Experiencias en proyectos

SlashConsejo 9: Testing y bugs

¿Pruebas? Tengo otras cosas que hacer…!!

Cuanto antes aparezca un fallo menos cuesta solventarlo (en $$ y tiempo)

Page 19: Desarrallo Android: Experiencias en proyectos

+ =

SlashConsejo 9: Let’s test it!

Page 20: Desarrallo Android: Experiencias en proyectos

SlashConsejo 9: Testing en Apps Móviles

Testing Apps Móviles vs otros entornos (WEB) muy diferente.

Testing en Web es –casi- feliz, rosa y la persona se puede simplificar en “clicks”

Testing en Apps Móviles puede ser infernal: hay que gestionar sensores, el usuario puede cambiar orientación del dispositivo, darle patadas…

Hay requerimientos funcionales y no-funcionales inherentes: batería, llamadas entrantes, soporte multidispositivo…

Page 21: Desarrallo Android: Experiencias en proyectos

SlashConsejo 9: TESTING: Usabilidad

¿Es fácil navegar entre pantallas o hay que realizar combinaciones esotéricas?

¿Se muestra información redundante y que no aporta valor?

TODAS (repetimos, TODAS) las interacciones del usuario con el sistema debe generar algún tipo de FEEDBACK!

Clicks en botones

Llamadas a través de Internet

Cualquier operación POTENCIALMENTE lenta: suponer siempre el caso peor!

Usar Notifications!

Page 22: Desarrallo Android: Experiencias en proyectos

SlashConsejo 9: TESTING: Interfaz

Validación de datos, inputs de texto…

Validar cada pantalla de forma integral (¿hace lo que se supone que debe hacer?)

Validar el flujo de navegación (¿desde la pantalla de listado de restaurantes puedo acceder a los favoritos?)

¿Qué pasa cuando cambia la orientación del dispositivo?¿y si se hace muy rápido?

Page 23: Desarrallo Android: Experiencias en proyectos

SlashConsejo 9: Conectividad, se apago la luz! – offline vs online

¿Cómo se comporta nuestra App si no hay conectividad?

¿Cuándo debemos comprobar si hay conectividad?

Ojo! La conectividad es fluctuante!

Transacciones y atomicidad: si de 3 peticiones al server falla 1, ¿qué hacemos?

Conexiones externas con timeout, o el usuario se aburrirá: usar Services, AsyncTasks…

Page 24: Desarrallo Android: Experiencias en proyectos

SlashConsejo 9:TESTING: Operacional

¿Estamos “backupeando” información necesaria en la App? Sistema de Preferencias y BD!

¿Estamos preparados para el modo “espantada”? Si muere la batería, necesitamos tener un plan de Save y Recovery!

¿Si se actualiza a una nueva versión del AndroidMarket, se pierden datos?

¿Qué pasa si llaman mientras estamos utilizando la App?¿Y si llega un SMS?

¿La batería parece bajar radicalmente con el uso de nuestra App?

Page 25: Desarrallo Android: Experiencias en proyectos

SlashConsejo 9: TESTING: Integración con terceros – Ponte protección!

Seamos paranoicos

Debemos validar qué pasa cuando se cae un Servicio, devuelve respuestas mal formadas, errores controlados…

¿Qué pasa si el Servicio tarda demasiado en responder?

¿Qué pasa si se intenta acceder a un Servicio sin conexión?¿Y si cae la conexión durante la transmisión de info?

Page 26: Desarrallo Android: Experiencias en proyectos

SlashConsejo 9: TESTING: otras dimensiones de Testing

Performance

Seguridad

Uso de recursos de bajo nivel

Compatibilidad y multidispositivos

Page 27: Desarrallo Android: Experiencias en proyectos

SlashConsejo 10 Y ahora que? Despliegue y Promoción de la app

Se activo en redes sociales.

Haz un blog. Cuenta tus avances, experiencias, éxitos, fracasos…

Participa en las revisiones de aplicaciones pero no seas malo … se te puede volver contra ti.

Ve a eventos, haz networking, mueve tu app….

Si tienes pasta…. puedes comprar descargas!

Page 28: Desarrallo Android: Experiencias en proyectos

SlashConsejo 10 Y ahora que? Despliegue y Promoción de la app

Formarte (cursos, foros, manuales online) y forma

Experimenta !!! Saca una Aplicación!!! no te comas el tarro!!! Ve a un modelo de publicidad

Imparte Formación. Comparte tu experiencia

Desarrolla aplicaciones para clientes

Vuelve al Market: Prueba suerte con una nueva

aplicación… pero antes piensa en lo que has aprendido,

elabora la idea, piensa en el modelo de negocio,

Implementa, promociona….

Page 29: Desarrallo Android: Experiencias en proyectos

SlashConsejos!El decálogo

1. Hay que saber quien eres y quiénes son los otros

2. ¿Sabes que tipo de aplicaciones quieres hacer?3. ¿Qué fue primero el huevo o la gallina?4. Conoce tu plataforma y a sus usuarios5. Requerimientos , el cliente ese gran filosofo6. Planifica contingencias , no es oro todo lo que

reluce7. Diseño / Usabilidad, el talón de aquiles del

developer8. Prototipos, si gracias! Involucra al cliente.9. Testing! Ese gran desconocido.10.Ya tengo mi app, ¿Ahora que? Promociónate

Page 30: Desarrallo Android: Experiencias en proyectos

Un equipo joven, ambicioso &

multidisciplinar con más de 7 años de experiencia

en el área de las tecnologías móviles.

Ganadores I Mini campus Emprendedores SeedRocket (2010)

Proyecto de empresa seleccionado por Barcelona Activa para su Incubadora de Innovación (2010-2013)

Empresa Seleccionada para Participar en el IV Investor Days (2010)Empresa Ponente en la primera edición del Bdigital Apps.

Más de 200 alumnos formados en tecnologías móviles en 2010.

www.slashmobility.cominfo@slashmobility

@slashmobility Llacuna, 162 - 164

08018 BarcelonaBarcelona

Donde nos puedes encontrar…