![Page 1: Agiles y furiosos Un panorama del desarrollo ágil en aplicaciones Android](https://reader036.vdocumento.com/reader036/viewer/2022062503/58ef1e8b1a28ab76068b4651/html5/thumbnails/1.jpg)
ÁGILES Y FURIOSOSUn panorama del desarrollo ágil en aplicaciones Android
![Page 2: Agiles y furiosos Un panorama del desarrollo ágil en aplicaciones Android](https://reader036.vdocumento.com/reader036/viewer/2022062503/58ef1e8b1a28ab76068b4651/html5/thumbnails/2.jpg)
HOLA #rsgpe2016
Marco AvendañoCSM/CSD/CSPODesarrollador Web y Mobile@marcoviaweb
![Page 3: Agiles y furiosos Un panorama del desarrollo ágil en aplicaciones Android](https://reader036.vdocumento.com/reader036/viewer/2022062503/58ef1e8b1a28ab76068b4651/html5/thumbnails/3.jpg)
• Mobile• Desarrollo agil• Practicas agiles
![Page 4: Agiles y furiosos Un panorama del desarrollo ágil en aplicaciones Android](https://reader036.vdocumento.com/reader036/viewer/2022062503/58ef1e8b1a28ab76068b4651/html5/thumbnails/4.jpg)
MOBILE,MOBILE EVERYWHERE
![Page 5: Agiles y furiosos Un panorama del desarrollo ágil en aplicaciones Android](https://reader036.vdocumento.com/reader036/viewer/2022062503/58ef1e8b1a28ab76068b4651/html5/thumbnails/5.jpg)
Parte de nuestra vida
![Page 6: Agiles y furiosos Un panorama del desarrollo ágil en aplicaciones Android](https://reader036.vdocumento.com/reader036/viewer/2022062503/58ef1e8b1a28ab76068b4651/html5/thumbnails/6.jpg)
![Page 7: Agiles y furiosos Un panorama del desarrollo ágil en aplicaciones Android](https://reader036.vdocumento.com/reader036/viewer/2022062503/58ef1e8b1a28ab76068b4651/html5/thumbnails/7.jpg)
![Page 8: Agiles y furiosos Un panorama del desarrollo ágil en aplicaciones Android](https://reader036.vdocumento.com/reader036/viewer/2022062503/58ef1e8b1a28ab76068b4651/html5/thumbnails/8.jpg)
![Page 9: Agiles y furiosos Un panorama del desarrollo ágil en aplicaciones Android](https://reader036.vdocumento.com/reader036/viewer/2022062503/58ef1e8b1a28ab76068b4651/html5/thumbnails/9.jpg)
![Page 10: Agiles y furiosos Un panorama del desarrollo ágil en aplicaciones Android](https://reader036.vdocumento.com/reader036/viewer/2022062503/58ef1e8b1a28ab76068b4651/html5/thumbnails/10.jpg)
![Page 11: Agiles y furiosos Un panorama del desarrollo ágil en aplicaciones Android](https://reader036.vdocumento.com/reader036/viewer/2022062503/58ef1e8b1a28ab76068b4651/html5/thumbnails/11.jpg)
![Page 12: Agiles y furiosos Un panorama del desarrollo ágil en aplicaciones Android](https://reader036.vdocumento.com/reader036/viewer/2022062503/58ef1e8b1a28ab76068b4651/html5/thumbnails/12.jpg)
![Page 13: Agiles y furiosos Un panorama del desarrollo ágil en aplicaciones Android](https://reader036.vdocumento.com/reader036/viewer/2022062503/58ef1e8b1a28ab76068b4651/html5/thumbnails/13.jpg)
DESARROLLOAGIL
![Page 14: Agiles y furiosos Un panorama del desarrollo ágil en aplicaciones Android](https://reader036.vdocumento.com/reader036/viewer/2022062503/58ef1e8b1a28ab76068b4651/html5/thumbnails/14.jpg)
Agilidad significa ser capaz de moverse con rapidez y facilidad.
![Page 15: Agiles y furiosos Un panorama del desarrollo ágil en aplicaciones Android](https://reader036.vdocumento.com/reader036/viewer/2022062503/58ef1e8b1a28ab76068b4651/html5/thumbnails/15.jpg)
“La Agilidad es una mentalidad definida por valores, guiada por principios y manifestada a través de muchas prácticas diferentes”.
![Page 16: Agiles y furiosos Un panorama del desarrollo ágil en aplicaciones Android](https://reader036.vdocumento.com/reader036/viewer/2022062503/58ef1e8b1a28ab76068b4651/html5/thumbnails/16.jpg)
Agilidad
Ser HacerM
enta
lidad
Valo
res
Prin
cipi
os
Prác
tica
s
![Page 17: Agiles y furiosos Un panorama del desarrollo ágil en aplicaciones Android](https://reader036.vdocumento.com/reader036/viewer/2022062503/58ef1e8b1a28ab76068b4651/html5/thumbnails/17.jpg)
Beneficios de las metodologías ágiles en el proceso de desarrollo de software
• Acelera la entrega de software ante las necesidades cambiantes.
• Logra que el proceso sea flexible para adaptarse a las tecnologías emergentes.
![Page 18: Agiles y furiosos Un panorama del desarrollo ágil en aplicaciones Android](https://reader036.vdocumento.com/reader036/viewer/2022062503/58ef1e8b1a28ab76068b4651/html5/thumbnails/18.jpg)
![Page 19: Agiles y furiosos Un panorama del desarrollo ágil en aplicaciones Android](https://reader036.vdocumento.com/reader036/viewer/2022062503/58ef1e8b1a28ab76068b4651/html5/thumbnails/19.jpg)
PRACTICAS AGILESEN EL DESARROLLO MOVIL
![Page 20: Agiles y furiosos Un panorama del desarrollo ágil en aplicaciones Android](https://reader036.vdocumento.com/reader036/viewer/2022062503/58ef1e8b1a28ab76068b4651/html5/thumbnails/20.jpg)
Las aplicaciones móviles tienen algunos requisitos adicionales que son menos comunes que el software tradicional, incluyendo
• Dispositivo en movimiento.
• Tamaño de la pantalla.
• Riesgos de seguridad.• Compatibilidad
multiplataforma.• Complejidad de
pruebas.• Consumo de energía.• Proceso de
desarrollo.
![Page 21: Agiles y furiosos Un panorama del desarrollo ágil en aplicaciones Android](https://reader036.vdocumento.com/reader036/viewer/2022062503/58ef1e8b1a28ab76068b4651/html5/thumbnails/21.jpg)
Características del proceso de desarrollo móvil
• La industria del software móvil se centra más en el lanzamiento que en el proceso de desarrollo.
• Las aplicaciones están siempre cambiando y evolucionando.
• En la mayoría de los casos, los miembros del equipo comparten roles.
![Page 22: Agiles y furiosos Un panorama del desarrollo ágil en aplicaciones Android](https://reader036.vdocumento.com/reader036/viewer/2022062503/58ef1e8b1a28ab76068b4651/html5/thumbnails/22.jpg)
¿Se puede encarar de mejor manera esta situación?
![Page 23: Agiles y furiosos Un panorama del desarrollo ágil en aplicaciones Android](https://reader036.vdocumento.com/reader036/viewer/2022062503/58ef1e8b1a28ab76068b4651/html5/thumbnails/23.jpg)
SI… empleando prácticas
agiles
![Page 24: Agiles y furiosos Un panorama del desarrollo ágil en aplicaciones Android](https://reader036.vdocumento.com/reader036/viewer/2022062503/58ef1e8b1a28ab76068b4651/html5/thumbnails/24.jpg)
Las prácticas agiles mejoran el desarrollo de aplicaciones para dispositivos móviles
• Experimentación y adaptación natural.
• Capacidad de respuesta a los cambios de requerimientos y tecnología.
• Extensión de uso de sprints.
• Entrega escalonada del conjuntos de características.
![Page 25: Agiles y furiosos Un panorama del desarrollo ágil en aplicaciones Android](https://reader036.vdocumento.com/reader036/viewer/2022062503/58ef1e8b1a28ab76068b4651/html5/thumbnails/25.jpg)
¿.. y por donde iniciar?
![Page 26: Agiles y furiosos Un panorama del desarrollo ágil en aplicaciones Android](https://reader036.vdocumento.com/reader036/viewer/2022062503/58ef1e8b1a28ab76068b4651/html5/thumbnails/26.jpg)
Agile DevOps
Agile Development Continuous Testing
Continuous Delivery Continuous Integration
![Page 27: Agiles y furiosos Un panorama del desarrollo ágil en aplicaciones Android](https://reader036.vdocumento.com/reader036/viewer/2022062503/58ef1e8b1a28ab76068b4651/html5/thumbnails/27.jpg)
Agile development
![Page 28: Agiles y furiosos Un panorama del desarrollo ágil en aplicaciones Android](https://reader036.vdocumento.com/reader036/viewer/2022062503/58ef1e8b1a28ab76068b4651/html5/thumbnails/28.jpg)
Mobile Process Description Techniques
Mobile D An agile approach for Mobile Application Development XP, Crystal, RUP
RaPiD 7 Rapid Production of Documentation – 7 steps AM
Hybrid Methodology Desing
Designing an Agile Methodology for Mobile Software Development - A Hybrid Method Engineering Approach
ASD, NDP
MASAM Development Process of Mobile Application SW Based on Agile Methodology XP, RUP, SPEM
SLeSSA Scrum and Lean Six Sigma Integration Approach for the Development of Software Customization for Mobile Phones
Scrum, Lean Six Sigma
![Page 29: Agiles y furiosos Un panorama del desarrollo ágil en aplicaciones Android](https://reader036.vdocumento.com/reader036/viewer/2022062503/58ef1e8b1a28ab76068b4651/html5/thumbnails/29.jpg)
También se debería considerar
• Definición de la plataforma.
• Estrategia de monetización.
• Análisis de la competencia.
![Page 30: Agiles y furiosos Un panorama del desarrollo ágil en aplicaciones Android](https://reader036.vdocumento.com/reader036/viewer/2022062503/58ef1e8b1a28ab76068b4651/html5/thumbnails/30.jpg)
Continuous Testing
![Page 31: Agiles y furiosos Un panorama del desarrollo ágil en aplicaciones Android](https://reader036.vdocumento.com/reader036/viewer/2022062503/58ef1e8b1a28ab76068b4651/html5/thumbnails/31.jpg)
¿Por qué hacer pruebas?
• Identificar errores de manera temprana.
• Realizar cambios con confianza.
• Construir pruebas de regresión.
• Extender la vida útil del código fuente.
![Page 32: Agiles y furiosos Un panorama del desarrollo ágil en aplicaciones Android](https://reader036.vdocumento.com/reader036/viewer/2022062503/58ef1e8b1a28ab76068b4651/html5/thumbnails/32.jpg)
Cuadrante de pruebas
![Page 33: Agiles y furiosos Un panorama del desarrollo ágil en aplicaciones Android](https://reader036.vdocumento.com/reader036/viewer/2022062503/58ef1e8b1a28ab76068b4651/html5/thumbnails/33.jpg)
Patrón del cono de helado
![Page 34: Agiles y furiosos Un panorama del desarrollo ágil en aplicaciones Android](https://reader036.vdocumento.com/reader036/viewer/2022062503/58ef1e8b1a28ab76068b4651/html5/thumbnails/34.jpg)
Pirámide de pruebas agiles
![Page 35: Agiles y furiosos Un panorama del desarrollo ágil en aplicaciones Android](https://reader036.vdocumento.com/reader036/viewer/2022062503/58ef1e8b1a28ab76068b4651/html5/thumbnails/35.jpg)
Otras alternativas
![Page 36: Agiles y furiosos Un panorama del desarrollo ágil en aplicaciones Android](https://reader036.vdocumento.com/reader036/viewer/2022062503/58ef1e8b1a28ab76068b4651/html5/thumbnails/36.jpg)
Pruebas Automatizadas • Unit Tests• E2E Tests (UI Tests)
![Page 37: Agiles y furiosos Un panorama del desarrollo ágil en aplicaciones Android](https://reader036.vdocumento.com/reader036/viewer/2022062503/58ef1e8b1a28ab76068b4651/html5/thumbnails/37.jpg)
Pruebas Unitarias • JUnit
![Page 38: Agiles y furiosos Un panorama del desarrollo ágil en aplicaciones Android](https://reader036.vdocumento.com/reader036/viewer/2022062503/58ef1e8b1a28ab76068b4651/html5/thumbnails/38.jpg)
Assertion Description
assertEquals Test that two values are the same
assertTrue Test Boolean condition is true
assertFalse Test Boolean condition is false
assertNull Check that the object is null
assertNotNull Check that the object is not null
assertSame Test that both values refer to the same object reference
assertNotSame Test that both values do not refer to the same object reference
assertThat Test that the first value (object) matches the second value(or matcher)
fail Test should always fail
![Page 39: Agiles y furiosos Un panorama del desarrollo ágil en aplicaciones Android](https://reader036.vdocumento.com/reader036/viewer/2022062503/58ef1e8b1a28ab76068b4651/html5/thumbnails/39.jpg)
Mejorando laspruebas unitarias
• Hamcrest: mejorar los assertions.
• JaCoCo: medir la cobertura del codigo Junit.
• Mockito: mantenerse enfocado en el código.
![Page 40: Agiles y furiosos Un panorama del desarrollo ágil en aplicaciones Android](https://reader036.vdocumento.com/reader036/viewer/2022062503/58ef1e8b1a28ab76068b4651/html5/thumbnails/40.jpg)
Pruebas GUI
• Android JUnit3 framework.
• UIAutomator.• Robotium.• Cucumber-type
Android framework such as Calabash.
• Google’s Espresso.
![Page 41: Agiles y furiosos Un panorama del desarrollo ágil en aplicaciones Android](https://reader036.vdocumento.com/reader036/viewer/2022062503/58ef1e8b1a28ab76068b4651/html5/thumbnails/41.jpg)
ESPRESSO
![Page 42: Agiles y furiosos Un panorama del desarrollo ágil en aplicaciones Android](https://reader036.vdocumento.com/reader036/viewer/2022062503/58ef1e8b1a28ab76068b4651/html5/thumbnails/42.jpg)
![Page 43: Agiles y furiosos Un panorama del desarrollo ágil en aplicaciones Android](https://reader036.vdocumento.com/reader036/viewer/2022062503/58ef1e8b1a28ab76068b4651/html5/thumbnails/43.jpg)
Continuous Integration
![Page 44: Agiles y furiosos Un panorama del desarrollo ágil en aplicaciones Android](https://reader036.vdocumento.com/reader036/viewer/2022062503/58ef1e8b1a28ab76068b4651/html5/thumbnails/44.jpg)
Herramientas• Travis.• TeamCity.• Bamboo.• Jenkins.
![Page 45: Agiles y furiosos Un panorama del desarrollo ágil en aplicaciones Android](https://reader036.vdocumento.com/reader036/viewer/2022062503/58ef1e8b1a28ab76068b4651/html5/thumbnails/45.jpg)
![Page 46: Agiles y furiosos Un panorama del desarrollo ágil en aplicaciones Android](https://reader036.vdocumento.com/reader036/viewer/2022062503/58ef1e8b1a28ab76068b4651/html5/thumbnails/46.jpg)
Continuous Delivery
![Page 47: Agiles y furiosos Un panorama del desarrollo ágil en aplicaciones Android](https://reader036.vdocumento.com/reader036/viewer/2022062503/58ef1e8b1a28ab76068b4651/html5/thumbnails/47.jpg)
Google Play Developer Publishing API
• Subir nuevas versiones.
• Release de Apps mediante tracks.
• Creación y modificación de Google Play Store listing.
![Page 48: Agiles y furiosos Un panorama del desarrollo ágil en aplicaciones Android](https://reader036.vdocumento.com/reader036/viewer/2022062503/58ef1e8b1a28ab76068b4651/html5/thumbnails/48.jpg)
Conclusiones
• Las App tienen características particulares.
• Las practicas agiles contribuyen al desarrollo móvil.
• Existen diversos de recursos que se pueden usar.
![Page 49: Agiles y furiosos Un panorama del desarrollo ágil en aplicaciones Android](https://reader036.vdocumento.com/reader036/viewer/2022062503/58ef1e8b1a28ab76068b4651/html5/thumbnails/49.jpg)
GRACIAS!@[email protected]