Download - Integracion continua
![Page 1: Integracion continua](https://reader033.vdocumento.com/reader033/viewer/2022061202/547cbd0fb4af9fef608b492b/html5/thumbnails/1.jpg)
Desarrollo potenciado mediante
Integración Continua
Armando Picón Z.Twitter: @apiconzBlog: http://blog.apicon.info
![Page 2: Integracion continua](https://reader033.vdocumento.com/reader033/viewer/2022061202/547cbd0fb4af9fef608b492b/html5/thumbnails/2.jpg)
Contenidos
Algunos problemas durante el desarrollo...ConceptoBeneficiosPrácticas fundamentales¿Cómo trabaja?HerramientasDemo
![Page 3: Integracion continua](https://reader033.vdocumento.com/reader033/viewer/2022061202/547cbd0fb4af9fef608b492b/html5/thumbnails/3.jpg)
![Page 4: Integracion continua](https://reader033.vdocumento.com/reader033/viewer/2022061202/547cbd0fb4af9fef608b492b/html5/thumbnails/4.jpg)
Algunos problemas durante el desarrollo...
Nadie tiene la última versión del proyecto.
![Page 5: Integracion continua](https://reader033.vdocumento.com/reader033/viewer/2022061202/547cbd0fb4af9fef608b492b/html5/thumbnails/5.jpg)
Algunos problemas durante el desarrollo...
Nadie tiene la última versión del proyecto.
Nadie sabe cómo va el proyecto.
![Page 6: Integracion continua](https://reader033.vdocumento.com/reader033/viewer/2022061202/547cbd0fb4af9fef608b492b/html5/thumbnails/6.jpg)
Algunos problemas durante el desarrollo...
Nadie tiene la última versión del proyecto.
Nadie sabe cómo va el proyecto.
Preparas un build completo segun la ocasión.
![Page 7: Integracion continua](https://reader033.vdocumento.com/reader033/viewer/2022061202/547cbd0fb4af9fef608b492b/html5/thumbnails/7.jpg)
Algunos problemas durante el desarrollo...
Nadie tiene la última versión del proyecto.
Nadie sabe cómo va el proyecto.
Preparas un build completo segun la ocasión.
Las funcionalidades no se prueban adecuadamente.
![Page 8: Integracion continua](https://reader033.vdocumento.com/reader033/viewer/2022061202/547cbd0fb4af9fef608b492b/html5/thumbnails/8.jpg)
Algunos problemas durante el desarrollo...
Nadie tiene la última versión del proyecto.
Nadie sabe cómo va el proyecto.
Preparas un build completo segun la ocasión.
Las funcionalidades no se prueban adecuadamente.
“...pero si funciona en mi máquina...”
![Page 9: Integracion continua](https://reader033.vdocumento.com/reader033/viewer/2022061202/547cbd0fb4af9fef608b492b/html5/thumbnails/9.jpg)
Algunos problemas durante el desarrollo...
Nadie tiene la última versión del proyecto.
Nadie sabe cómo va el proyecto.
Preparas un build completo segun la ocasión.
Las funcionalidades no se prueban adecuadamente.
“...pero si funciona en mi máquina...”
Las pruebas toman tiempo y aburren.
![Page 10: Integracion continua](https://reader033.vdocumento.com/reader033/viewer/2022061202/547cbd0fb4af9fef608b492b/html5/thumbnails/10.jpg)
Algunos problemas durante el desarrollo...
Nadie tiene la última versión del proyecto.
Nadie sabe cómo va el proyecto.
Preparas un build completo segun la ocasión.
Las funcionalidades no se prueban adecuadamente.
“...pero si funciona en mi máquina...”
Las pruebas toman tiempo y aburren.
Sorpresas tras el despliegue.
![Page 11: Integracion continua](https://reader033.vdocumento.com/reader033/viewer/2022061202/547cbd0fb4af9fef608b492b/html5/thumbnails/11.jpg)
Algunos problemas durante el desarrollo...
Nadie tiene la última versión del proyecto.
Nadie sabe cómo va el proyecto.
Preparas un build completo segun la ocasión.
Las funcionalidades no se prueban adecuadamente.
“...pero si funciona en mi máquina...”
Las pruebas toman tiempo y aburren.
Sorpresas tras el despliegue.
![Page 12: Integracion continua](https://reader033.vdocumento.com/reader033/viewer/2022061202/547cbd0fb4af9fef608b492b/html5/thumbnails/12.jpg)
¿Qué es Integración Continua?
![Page 13: Integracion continua](https://reader033.vdocumento.com/reader033/viewer/2022061202/547cbd0fb4af9fef608b492b/html5/thumbnails/13.jpg)
La Integración Continua es una serie de prácticas de desarrollo de software en el que los miembros de un equipo integran su trabajo con frecuencia, generalmente cada persona se integra una vez al día lo cual resulta en múltiples integraciones diarias. Cada integración es verificada por un build automatizado (incluyendo las pruebas) para detectar errores de integración tan rápido como sea posible.
Muchos equipos encuentran que este enfoque conduce a reducir problemas de integración de forma significativa y permite desarrollar software cohesivo con mayor rapidez.
Martin Flowerhttp://www.martinfowler.com/articles/continuousIntegration.html
![Page 14: Integracion continua](https://reader033.vdocumento.com/reader033/viewer/2022061202/547cbd0fb4af9fef608b492b/html5/thumbnails/14.jpg)
![Page 15: Integracion continua](https://reader033.vdocumento.com/reader033/viewer/2022061202/547cbd0fb4af9fef608b492b/html5/thumbnails/15.jpg)
Beneficios de la Integración Continua
• Reducción de riesgos• Reducción de procesos manuales repetitivos• Genera software desplegable en cualquier momento• Permite una mejor visibilidad del proyecto• Aumenta la confianza en el producto entregado por el
equipo de desarrollo
![Page 16: Integracion continua](https://reader033.vdocumento.com/reader033/viewer/2022061202/547cbd0fb4af9fef608b492b/html5/thumbnails/16.jpg)
Beneficios de la Integración Continua
• Reducción de riesgos• Reducción de procesos manuales repetitivos• Genera software desplegable en cualquier momento• Permite una mejor visibilidad del proyecto• Aumenta la confianza en el producto entregado por el
equipo de desarrollo
![Page 17: Integracion continua](https://reader033.vdocumento.com/reader033/viewer/2022061202/547cbd0fb4af9fef608b492b/html5/thumbnails/17.jpg)
Beneficios de la Integración Continua
• Reducción de riesgos• Reducción de procesos manuales repetitivos• Genera software desplegable en cualquier momento• Permite una mejor visibilidad del proyecto• Aumenta la confianza en el producto entregado por el
equipo de desarrollo
![Page 18: Integracion continua](https://reader033.vdocumento.com/reader033/viewer/2022061202/547cbd0fb4af9fef608b492b/html5/thumbnails/18.jpg)
Beneficios de la Integración Continua
• Reducción de riesgos• Reducción de procesos manuales repetitivos• Genera software desplegable en cualquier momento• Permite una mejor visibilidad del proyecto• Aumenta la confianza en el producto entregado por el
equipo de desarrollo
![Page 19: Integracion continua](https://reader033.vdocumento.com/reader033/viewer/2022061202/547cbd0fb4af9fef608b492b/html5/thumbnails/19.jpg)
Beneficios de la Integración Continua
• Reducción de riesgos• Reducción de procesos manuales repetitivos• Genera software desplegable en cualquier momento• Permite una mejor visibilidad del proyecto• Aumenta la confianza en el producto entregado por el
equipo de desarrollo
![Page 20: Integracion continua](https://reader033.vdocumento.com/reader033/viewer/2022061202/547cbd0fb4af9fef608b492b/html5/thumbnails/20.jpg)
Beneficios de la Integración Continua
• Reducción de riesgos• Reducción de procesos manuales repetitivos• Genera software desplegable en cualquier momento• Permite una mejor visibilidad del proyecto• Aumenta la confianza en el producto entregado por el
equipo de desarrollo
![Page 21: Integracion continua](https://reader033.vdocumento.com/reader033/viewer/2022061202/547cbd0fb4af9fef608b492b/html5/thumbnails/21.jpg)
![Page 22: Integracion continua](https://reader033.vdocumento.com/reader033/viewer/2022061202/547cbd0fb4af9fef608b492b/html5/thumbnails/22.jpg)
Prácticas fundamentales
Subir código al repositorio frecuentementeNo subir código "roto"Corregir builds rotos inmediatamenteEscribir pruebas automatizadasTodas las pruebas deben pasarCorrer pruebas privadas
![Page 23: Integracion continua](https://reader033.vdocumento.com/reader033/viewer/2022061202/547cbd0fb4af9fef608b492b/html5/thumbnails/23.jpg)
Prácticas fundamentales
Subir código al repositorio frecuentementeNo subir código "roto"Corregir builds rotos inmediatamenteEscribir pruebas automatizadasTodas las pruebas deben pasarCorrer pruebas privadas
![Page 24: Integracion continua](https://reader033.vdocumento.com/reader033/viewer/2022061202/547cbd0fb4af9fef608b492b/html5/thumbnails/24.jpg)
Prácticas fundamentales
Subir código al repositorio frecuentementeNo subir código "roto"Corregir builds rotos inmediatamenteEscribir pruebas automatizadasTodas las pruebas deben pasarCorrer pruebas privadas
![Page 25: Integracion continua](https://reader033.vdocumento.com/reader033/viewer/2022061202/547cbd0fb4af9fef608b492b/html5/thumbnails/25.jpg)
Prácticas fundamentales
Subir código al repositorio frecuentementeNo subir código "roto"Corregir builds rotos inmediatamenteEscribir pruebas automatizadasTodas las pruebas deben pasarCorrer pruebas privadas
![Page 26: Integracion continua](https://reader033.vdocumento.com/reader033/viewer/2022061202/547cbd0fb4af9fef608b492b/html5/thumbnails/26.jpg)
Prácticas fundamentales
Subir código al repositorio frecuentementeNo subir código "roto"Corregir builds rotos inmediatamenteEscribir pruebas automatizadasTodas las pruebas deben pasarCorrer pruebas privadas
![Page 27: Integracion continua](https://reader033.vdocumento.com/reader033/viewer/2022061202/547cbd0fb4af9fef608b492b/html5/thumbnails/27.jpg)
Prácticas fundamentales
Subir código al repositorio frecuentementeNo subir código "roto"Corregir builds rotos inmediatamenteEscribir pruebas automatizadasTodas las pruebas deben pasarCorrer pruebas privadas
![Page 28: Integracion continua](https://reader033.vdocumento.com/reader033/viewer/2022061202/547cbd0fb4af9fef608b492b/html5/thumbnails/28.jpg)
Prácticas fundamentales
Subir código al repositorio frecuentementeNo subir código "roto"Corregir builds rotos inmediatamenteEscribir pruebas automatizadasTodas las pruebas deben pasarCorrer pruebas privadas
![Page 29: Integracion continua](https://reader033.vdocumento.com/reader033/viewer/2022061202/547cbd0fb4af9fef608b492b/html5/thumbnails/29.jpg)
Repositorio de Código
Servidor de Integración Continua
Servidor CI
Build script
¿Cómo funciona?
Código listo y testeado
Sube codigo
Obtiene código
Ejecuta pruebas
Todo esta OK!
Notificando!
:)
![Page 30: Integracion continua](https://reader033.vdocumento.com/reader033/viewer/2022061202/547cbd0fb4af9fef608b492b/html5/thumbnails/30.jpg)
Repositorio de CódigoServidor
CI
Build script
¿Cómo funciona?
Mmm... es hora del partido...
Sube codigoObtiene código
Ejecuta pruebas
Mal! Mal! Mal!
Notificando!
Nooooo!:'(
... no tengo tiempo para
probar
![Page 31: Integracion continua](https://reader033.vdocumento.com/reader033/viewer/2022061202/547cbd0fb4af9fef608b492b/html5/thumbnails/31.jpg)
Herramientas
Hudsonhttp://hudson-ci.org/
TeamCity
http://www.jetbrains.com/teamcity/
CruiseControl
http://cruisecontrol.sourceforge.net/
phpUnderControl
http://www.phpundercontrol.org/about.html
Continuum
http://continuum.apache.org/
Bamboo
http://www.atlassian.com/software/bamboo/
![Page 32: Integracion continua](https://reader033.vdocumento.com/reader033/viewer/2022061202/547cbd0fb4af9fef608b492b/html5/thumbnails/32.jpg)
Demo
![Page 33: Integracion continua](https://reader033.vdocumento.com/reader033/viewer/2022061202/547cbd0fb4af9fef608b492b/html5/thumbnails/33.jpg)
![Page 34: Integracion continua](https://reader033.vdocumento.com/reader033/viewer/2022061202/547cbd0fb4af9fef608b492b/html5/thumbnails/34.jpg)
Agiles 2010Lima – Perú 4 al 7 de Octubre
http://agiles2010.agiles.org/
![Page 35: Integracion continua](https://reader033.vdocumento.com/reader033/viewer/2022061202/547cbd0fb4af9fef608b492b/html5/thumbnails/35.jpg)
Armando Picón Z.Twitter: @apiconzBlog: http://blog.apicon.info