Desarrollo potenciado mediante Integración Continua Armando Picón Z. Twitter: @apiconz Blog: http://blog.apicon.info
Contenidos <ul><li>  </li></ul><ul><li>Algunos problemas durante el desarrollo... </li></ul><ul><li>Concepto </li></ul><ul...
 
Algunos problemas durante el desarrollo... <ul><li>Nadie tiene la última versión del proyecto. </li></ul>
Algunos problemas durante el desarrollo... <ul><li>Nadie tiene la última versión del proyecto. </li></ul><ul><li>Nadie sab...
Algunos problemas durante el desarrollo... <ul><li>Nadie tiene la última versión del proyecto. </li></ul><ul><li>Nadie sab...
Algunos problemas durante el desarrollo... <ul><li>Nadie tiene la última versión del proyecto. </li></ul><ul><li>Nadie sab...
Algunos problemas durante el desarrollo... <ul><li>Nadie tiene la última versión del proyecto. </li></ul><ul><li>Nadie sab...
Algunos problemas durante el desarrollo... <ul><li>Nadie tiene la última versión del proyecto. </li></ul><ul><li>Nadie sab...
Algunos problemas durante el desarrollo... <ul><li>Nadie tiene la última versión del proyecto. </li></ul><ul><li>Nadie sab...
Algunos problemas durante el desarrollo... <ul><li>Nadie tiene la última versión del proyecto. </li></ul><ul><li>Nadie sab...
¿Qué es Integración Continua?
<ul><li>La Integración Continua es una serie de prácticas de desarrollo de software en el que los miembros de un equipo in...
 
Beneficios de la Integración Continua <ul><ul><li>Reducción de riesgos </li></ul></ul><ul><ul><li>Reducción de procesos ma...
Beneficios de la Integración Continua <ul><ul><li>Reducción de riesgos </li></ul></ul><ul><ul><li>Reducción de procesos ma...
Beneficios de la Integración Continua <ul><ul><li>Reducción de riesgos </li></ul></ul><ul><ul><li>Reducción de procesos ma...
Beneficios de la Integración Continua <ul><ul><li>Reducción de riesgos </li></ul></ul><ul><ul><li>Reducción de procesos ma...
Beneficios de la Integración Continua <ul><ul><li>Reducción de riesgos </li></ul></ul><ul><ul><li>Reducción de procesos ma...
Beneficios de la Integración Continua <ul><ul><li>Reducción de riesgos </li></ul></ul><ul><ul><li>Reducción de procesos ma...
 
Prácticas fundamentales <ul><li>Subir código al repositorio frecuentemente </li></ul><ul><li>No subir código &quot;roto&qu...
Prácticas fundamentales <ul><li>Subir código al repositorio frecuentemente </li></ul><ul><li>No subir código &quot;roto&qu...
Prácticas fundamentales <ul><li>Subir código al repositorio frecuentemente </li></ul><ul><li>No subir código &quot;roto&qu...
Prácticas fundamentales <ul><li>Subir código al repositorio frecuentemente </li></ul><ul><li>No subir código &quot;roto&qu...
Prácticas fundamentales <ul><li>Subir código al repositorio frecuentemente </li></ul><ul><li>No subir código &quot;roto&qu...
Prácticas fundamentales <ul><li>Subir código al repositorio frecuentemente </li></ul><ul><li>No subir código &quot;roto&qu...
Prácticas fundamentales <ul><li>Subir código al repositorio frecuentemente </li></ul><ul><li>No subir código &quot;roto&qu...
Servidor de Integración Continua Servidor CI Build script ¿Cómo funciona? Código listo y testeado Sube codigo Obtiene códi...
Servidor CI Build script ¿Cómo funciona? Mmm... es hora del partido... Sube codigo Obtiene código Ejecuta pruebas Mal! Mal...
Herramientas Hudson http://hudson-ci.org/ TeamCity http://www.jetbrains.com/teamcity/ CruiseControl http://cruisecontrol.s...
Demo
 
Agiles 2010 Lima – Perú  4 al 7 de Octubre http://agiles2010.agiles.org/
Armando Picón Z. Twitter: @apiconz Blog: http://blog.apicon.info
Upcoming SlideShare
Loading in...5
×

Integracion continua

881

Published on

Published in: Technology, Business
0 Comments
1 Like
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total Views
881
On Slideshare
0
From Embeds
0
Number of Embeds
6
Actions
Shares
0
Downloads
28
Comments
0
Likes
1
Embeds 0
No embeds

No notes for slide

Integracion continua

  1. 1. Desarrollo potenciado mediante Integración Continua Armando Picón Z. Twitter: @apiconz Blog: http://blog.apicon.info
  2. 2. Contenidos <ul><li>  </li></ul><ul><li>Algunos problemas durante el desarrollo... </li></ul><ul><li>Concepto </li></ul><ul><li>Beneficios </li></ul><ul><li>Prácticas fundamentales </li></ul><ul><li>¿Cómo trabaja? </li></ul><ul><li>Herramientas </li></ul><ul><li>Demo </li></ul>
  3. 4. Algunos problemas durante el desarrollo... <ul><li>Nadie tiene la última versión del proyecto. </li></ul>
  4. 5. Algunos problemas durante el desarrollo... <ul><li>Nadie tiene la última versión del proyecto. </li></ul><ul><li>Nadie sabe cómo va el proyecto. </li></ul>
  5. 6. Algunos problemas durante el desarrollo... <ul><li>Nadie tiene la última versión del proyecto. </li></ul><ul><li>Nadie sabe cómo va el proyecto. </li></ul><ul><li>Preparas un build completo segun la ocasión. </li></ul>
  6. 7. Algunos problemas durante el desarrollo... <ul><li>Nadie tiene la última versión del proyecto. </li></ul><ul><li>Nadie sabe cómo va el proyecto. </li></ul><ul><li>Preparas un build completo segun la ocasión. </li></ul><ul><li>Las funcionalidades no se prueban adecuadamente. </li></ul>
  7. 8. Algunos problemas durante el desarrollo... <ul><li>Nadie tiene la última versión del proyecto. </li></ul><ul><li>Nadie sabe cómo va el proyecto. </li></ul><ul><li>Preparas un build completo segun la ocasión. </li></ul><ul><li>Las funcionalidades no se prueban adecuadamente. </li></ul><ul><li>“ ...pero si funciona en mi máquina...” </li></ul>
  8. 9. Algunos problemas durante el desarrollo... <ul><li>Nadie tiene la última versión del proyecto. </li></ul><ul><li>Nadie sabe cómo va el proyecto. </li></ul><ul><li>Preparas un build completo segun la ocasión. </li></ul><ul><li>Las funcionalidades no se prueban adecuadamente. </li></ul><ul><li>“ ...pero si funciona en mi máquina...” </li></ul><ul><li>Las pruebas toman tiempo y aburren. </li></ul>
  9. 10. Algunos problemas durante el desarrollo... <ul><li>Nadie tiene la última versión del proyecto. </li></ul><ul><li>Nadie sabe cómo va el proyecto. </li></ul><ul><li>Preparas un build completo segun la ocasión. </li></ul><ul><li>Las funcionalidades no se prueban adecuadamente. </li></ul><ul><li>“ ...pero si funciona en mi máquina...” </li></ul><ul><li>Las pruebas toman tiempo y aburren. </li></ul><ul><li>Sorpresas tras el despliegue. </li></ul>
  10. 11. Algunos problemas durante el desarrollo... <ul><li>Nadie tiene la última versión del proyecto. </li></ul><ul><li>Nadie sabe cómo va el proyecto. </li></ul><ul><li>Preparas un build completo segun la ocasión. </li></ul><ul><li>Las funcionalidades no se prueban adecuadamente. </li></ul><ul><li>“ ...pero si funciona en mi máquina...” </li></ul><ul><li>Las pruebas toman tiempo y aburren. </li></ul><ul><li>Sorpresas tras el despliegue. </li></ul>
  11. 12. ¿Qué es Integración Continua?
  12. 13. <ul><li>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. </li></ul><ul><li>Muchos equipos encuentran que este enfoque conduce a reducir problemas de integración de forma significativa y permite desarrollar software cohesivo con mayor rapidez. </li></ul><ul><li>Martin Flower </li></ul><ul><li>http://www.martinfowler.com/articles/continuousIntegration.html </li></ul>
  13. 15. Beneficios de la Integración Continua <ul><ul><li>Reducción de riesgos </li></ul></ul><ul><ul><li>Reducción de procesos manuales repetitivos </li></ul></ul><ul><ul><li>Genera software desplegable en cualquier momento </li></ul></ul><ul><ul><li>Permite una mejor visibilidad del proyecto </li></ul></ul><ul><ul><li>Aumenta la confianza en el producto entregado por el equipo de desarrollo  </li></ul></ul>
  14. 16. Beneficios de la Integración Continua <ul><ul><li>Reducción de riesgos </li></ul></ul><ul><ul><li>Reducción de procesos manuales repetitivos </li></ul></ul><ul><ul><li>Genera software desplegable en cualquier momento </li></ul></ul><ul><ul><li>Permite una mejor visibilidad del proyecto </li></ul></ul><ul><ul><li>Aumenta la confianza en el producto entregado por el equipo de desarrollo  </li></ul></ul>
  15. 17. Beneficios de la Integración Continua <ul><ul><li>Reducción de riesgos </li></ul></ul><ul><ul><li>Reducción de procesos manuales repetitivos </li></ul></ul><ul><ul><li>Genera software desplegable en cualquier momento </li></ul></ul><ul><ul><li>Permite una mejor visibilidad del proyecto </li></ul></ul><ul><ul><li>Aumenta la confianza en el producto entregado por el equipo de desarrollo   </li></ul></ul>
  16. 18. Beneficios de la Integración Continua <ul><ul><li>Reducción de riesgos </li></ul></ul><ul><ul><li>Reducción de procesos manuales repetitivos </li></ul></ul><ul><ul><li>Genera software desplegable en cualquier momento </li></ul></ul><ul><ul><li>Permite una mejor visibilidad del proyecto </li></ul></ul><ul><ul><li>Aumenta la confianza en el producto entregado por el equipo de desarrollo  </li></ul></ul>
  17. 19. Beneficios de la Integración Continua <ul><ul><li>Reducción de riesgos </li></ul></ul><ul><ul><li>Reducción de procesos manuales repetitivos </li></ul></ul><ul><ul><li>Genera software desplegable en cualquier momento </li></ul></ul><ul><ul><li>Permite una mejor visibilidad del proyecto </li></ul></ul><ul><ul><li>Aumenta la confianza en el producto entregado por el equipo de desarrollo  </li></ul></ul>
  18. 20. Beneficios de la Integración Continua <ul><ul><li>Reducción de riesgos </li></ul></ul><ul><ul><li>Reducción de procesos manuales repetitivos </li></ul></ul><ul><ul><li>Genera software desplegable en cualquier momento </li></ul></ul><ul><ul><li>Permite una mejor visibilidad del proyecto </li></ul></ul><ul><ul><li>Aumenta la confianza en el producto entregado por el equipo de desarrollo  </li></ul></ul>
  19. 22. Prácticas fundamentales <ul><li>Subir código al repositorio frecuentemente </li></ul><ul><li>No subir código &quot;roto&quot; </li></ul><ul><li>Corregir builds rotos inmediatamente </li></ul><ul><li>Escribir pruebas automatizadas </li></ul><ul><li>Todas las pruebas deben pasar </li></ul><ul><li>Correr pruebas privadas </li></ul>
  20. 23. Prácticas fundamentales <ul><li>Subir código al repositorio frecuentemente </li></ul><ul><li>No subir código &quot;roto&quot; </li></ul><ul><li>Corregir builds rotos inmediatamente </li></ul><ul><li>Escribir pruebas automatizadas </li></ul><ul><li>Todas las pruebas deben pasar </li></ul><ul><li>Correr pruebas privadas </li></ul>
  21. 24. Prácticas fundamentales <ul><li>Subir código al repositorio frecuentemente </li></ul><ul><li>No subir código &quot;roto&quot; </li></ul><ul><li>Corregir builds rotos inmediatamente </li></ul><ul><li>Escribir pruebas automatizadas </li></ul><ul><li>Todas las pruebas deben pasar </li></ul><ul><li>Correr pruebas privadas </li></ul>
  22. 25. Prácticas fundamentales <ul><li>Subir código al repositorio frecuentemente </li></ul><ul><li>No subir código &quot;roto&quot; </li></ul><ul><li>Corregir builds rotos inmediatamente </li></ul><ul><li>Escribir pruebas automatizadas </li></ul><ul><li>Todas las pruebas deben pasar </li></ul><ul><li>Correr pruebas privadas </li></ul>
  23. 26. Prácticas fundamentales <ul><li>Subir código al repositorio frecuentemente </li></ul><ul><li>No subir código &quot;roto&quot; </li></ul><ul><li>Corregir builds rotos inmediatamente </li></ul><ul><li>Escribir pruebas automatizadas </li></ul><ul><li>Todas las pruebas deben pasar </li></ul><ul><li>Correr pruebas privadas </li></ul>
  24. 27. Prácticas fundamentales <ul><li>Subir código al repositorio frecuentemente </li></ul><ul><li>No subir código &quot;roto&quot; </li></ul><ul><li>Corregir builds rotos inmediatamente </li></ul><ul><li>Escribir pruebas automatizadas </li></ul><ul><li>Todas las pruebas deben pasar </li></ul><ul><li>Correr pruebas privadas </li></ul>
  25. 28. Prácticas fundamentales <ul><li>Subir código al repositorio frecuentemente </li></ul><ul><li>No subir código &quot;roto&quot; </li></ul><ul><li>Corregir builds rotos inmediatamente </li></ul><ul><li>Escribir pruebas automatizadas </li></ul><ul><li>Todas las pruebas deben pasar </li></ul><ul><li>Correr pruebas privadas </li></ul>
  26. 29. 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! :) Repositorio de Código
  27. 30. Servidor CI Build script ¿Cómo funciona? Mmm... es hora del partido... Sube codigo Obtiene código Ejecuta pruebas Mal! Mal! Mal! Notificando! Nooooo! :'( ... no tengo tiempo para probar Repositorio de Código
  28. 31. Herramientas Hudson http://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/
  29. 32. Demo
  30. 34. Agiles 2010 Lima – Perú 4 al 7 de Octubre http://agiles2010.agiles.org/
  31. 35. Armando Picón Z. Twitter: @apiconz Blog: http://blog.apicon.info
  1. A particular slide catching your eye?

    Clipping is a handy way to collect important slides you want to go back to later.

×