SlideShare una empresa de Scribd logo
Edwin Farfan Colan Consultor Java  SCJP 5.0 AP JOEDAYZ E-mail: edwin.farfan@joedayz.org Blog: www.edwinfarfan.blogspot.com Twitter: edwinfarfan
Integración Continua Power tools getting all together
Los proyectos de software implican un gran número de archivos que necesitan ser integrados juntos para construir un solo producto. Este proceso puede tardar tiempo valioso para nuestro proyecto, además realizar esta tarea es repetitiva. Luego de esta integración algún código desarrollado por otro desarrollador puede causar conflictos con otro código que ya está implementado. Introducción
El objetivo es automatizar tareas que son repetitivas (compilar, ejecución de pruebas, construcción, deployar, documentación). Y que estas tareas sean ejecutadas  lo más a menudo posible y de manera automática  para así poder detectar fallos cuanto antes. Te permite estar siempre informado sobre el estado de tu proyecto. Integración Continua
Integración  continua La Integración Continua está asociado con las metodologías de programación extrema  (XP) y desarrollo ágil. Es una metodología centrada a disminuir la carga de trabajo a los desarrolladores y la utilización de una mayor potencia del servidor  http://www.martinfowler.com/articles/continuousIntegration.html
Subversion Nexus Sonar Hudson MySql Internet Developer FeedBack Developer Developer Commit Commit Commit
Que Necesitamos Software - Control de Versiones (SVN) - Herramienta para generar Build y automización de tareas (Maven - Hudson) - Repositorio local Maven (Nexus) - Métricas y/o reportes de Analisis de código (Sonar) Hardware - Servidor dedicado a IC - Espacio en el disco
Controlador de Versiones Subversion  sistema de control de versiones que  administra y guarda cualquier fichero,mantiene un historial de cambios realizados. Nos permitirá tener nuestro código centralizado, descargar, actualizar y subir código que se encuentra en este repositorio. Hacer frecuentes commits acelerará la construcción del proyecto, además de encontrar rápido errores.
Maven Herramienta para la gestión y construcción de proyectos Java.  Es la Base que se tiene para trabajar para la IC (con proyectos Java), ya que cuenta con comandos de compilacion, deploy, test, etc. Con un solo comando puede construir un proyecto .
Utiliza un Project Object Model (POM) para describir el proyecto de software a construir, sus dependencias de otros módulos y componentes externo, y el orden de construcción de los elementos.
Puedes generar un repositorio local para los Jars (o librerias), donde estarán almacenados localmente o remotamente en un servidor.
Nexus Nexus es un administrador visual de repositorios para Maven. Nexus actúa como un repositorio de Maven público. Esto significa que los artefactos (jars) y sus dependencias, sólo tienen que descargar una vez, y después se descargan del Nexus.
Nexus
Hudson Herramienta open source que nos ayuda a monotorizar la ejecución de tareas repetitivas como el compilar un proyecto cada cierto tiempo.  Además se enfoca en la construcción y prueba los proyectos de software de forma  continua y en monitorizar la ejecución de tareas ejecutadas externamente. Se integra fácilmente con Maven y tiene un sin numero de plugin que se pueden utilizar.
 
Sonar Podemos controlar, lo que podemos medir. Permite la verificación de la calidad del código java, calcula y muestra en formato web métricas de nuestros proyecto. Herramientas como PMD, CheckStyle, FindBugs, Cobertura, etc; ya vienen embebidas en Sonar.
Sonar
Ventajas - Reducción del tiempo de integración. - Detección de errores lo más pronto posible. - Pruebas inmediatas tras un cambio en el código. - Disponibilidad del código para test, demos, etc. Desventajas - Necesidad de un servidor dedicado para IC. - El impacto inmediato al subir código erróneo provoca que los desarrolladores no hagan tantos commits como sería conveniente como copia de seguridad
Conclusiones - La IC está enfocada a disminuir el riesgo y a la detención y solución temprana de problemas. - La IC nos brindará información en todo momento. - El éxito de la IC esta fuertemente ligada con las serie de pruebas (Cobertura) que se tiene en el proyecto. - Permite una rápida retroalimentación de nuestro proyecto.
RECURSOS
Herramientas
Gracias

Más contenido relacionado

ODP
Presentacion de Integración Continua
PPTX
Integracion Continua
PPT
Integracion continua
PPTX
atSistemas - Presentación Integración Continua AUG Barcelona enero13
PPTX
El coste de no usar integración continua
PDF
Integracion Continua
PDF
Jenkins, no me rompas los builds!
PDF
Integración contínua con Jenkins
Presentacion de Integración Continua
Integracion Continua
Integracion continua
atSistemas - Presentación Integración Continua AUG Barcelona enero13
El coste de no usar integración continua
Integracion Continua
Jenkins, no me rompas los builds!
Integración contínua con Jenkins

La actualidad más candente (20)

PDF
Integración Continua
PDF
Herramientas de integración continua en proyectos software
PPTX
Jenkins ci + selenium
PDF
DevOps: una breve introducción
PPTX
Integración Continua usando Team Foundation Server
PDF
Probando aplicaciones AngularJS
PDF
Integracion Continua
PDF
Pruebas Unitarias
PPTX
Modelo Integración Continua en entornos de QA
PDF
¿Cómo poner software de calidad en manos del usuario de forma rápida?
KEY
Prueba De Aplicaciones Web con Selenium 2 y WebDriver
PPT
Introducción a Team Foundation Service, ALM en la Nube
PDF
Análisis estático de código en Java
PDF
Mejorando la productividad en proyectos java EE con CI y CD - OTN 2015
PDF
Continuous Delivery Un caso de estudio
PPTX
Selenium
PPTX
Dev ops e infraestructura – acompañando nuestro software a producción
PDF
Integración Continua con Team Foundation Server
PDF
PPTX
Meetup Integración Continua y Jenkins
Integración Continua
Herramientas de integración continua en proyectos software
Jenkins ci + selenium
DevOps: una breve introducción
Integración Continua usando Team Foundation Server
Probando aplicaciones AngularJS
Integracion Continua
Pruebas Unitarias
Modelo Integración Continua en entornos de QA
¿Cómo poner software de calidad en manos del usuario de forma rápida?
Prueba De Aplicaciones Web con Selenium 2 y WebDriver
Introducción a Team Foundation Service, ALM en la Nube
Análisis estático de código en Java
Mejorando la productividad en proyectos java EE con CI y CD - OTN 2015
Continuous Delivery Un caso de estudio
Selenium
Dev ops e infraestructura – acompañando nuestro software a producción
Integración Continua con Team Foundation Server
Meetup Integración Continua y Jenkins
Publicidad

Destacado (20)

PPTX
Présentation d'Éric Bertrand
PPT
La signature du ridicule : Usage politique et détournement du sens dans les p...
PDF
PDF
Proalan.oscardozo70@hotmail.com katherinezapata
PPTX
advertzoom Oktober 2011
PPT
Informatica
DOCX
Campamento para conmemorar la restauracion del sacerdocio
PDF
REDES CURRICULARES Sep.2014-Mar.2014
PPT
Mtourisme - Le Jura dans la poche : avant, pendant, aprés...
PDF
02 Sacale partido a tu android bateria
PPT
6.1.3. cr-audit-des-comptes
PPTX
AllendeASPECTOS SOCIOCULTURALES DE LAS LENGUAS INDÍGENAS DE MÉXICO
PDF
Zusammenhang von Design, Produktnutzung und Lebensdauer bei Elektro- und Elek...
PPS
Belgien, schueler
PDF
PDF
Qualimatest - Systemintegrator Von VISION & AUTOMATION für die Medizintechnik
PPTX
Klasse b, vorbereitung klassenarbeit nr. 2
PPTX
Prometheus
PDF
Lettre de Nicolas Sarkozy au peuple Français
Présentation d'Éric Bertrand
La signature du ridicule : Usage politique et détournement du sens dans les p...
Proalan.oscardozo70@hotmail.com katherinezapata
advertzoom Oktober 2011
Informatica
Campamento para conmemorar la restauracion del sacerdocio
REDES CURRICULARES Sep.2014-Mar.2014
Mtourisme - Le Jura dans la poche : avant, pendant, aprés...
02 Sacale partido a tu android bateria
6.1.3. cr-audit-des-comptes
AllendeASPECTOS SOCIOCULTURALES DE LAS LENGUAS INDÍGENAS DE MÉXICO
Zusammenhang von Design, Produktnutzung und Lebensdauer bei Elektro- und Elek...
Belgien, schueler
Qualimatest - Systemintegrator Von VISION & AUTOMATION für die Medizintechnik
Klasse b, vorbereitung klassenarbeit nr. 2
Prometheus
Lettre de Nicolas Sarkozy au peuple Français
Publicidad

Similar a Presentacion de integracion continua (lima agile) (20)

PDF
Calidad de software
PPTX
Lp II clase03 - Entornos de Desarrollo
ODP
ALKAID-Herramientas-de-Desarrollo-Software
PPTX
Presentación Seminario1 EA
ODP
Ic maven jenkins_sonar
PPTX
Open Source Tools for Java Projects
ODP
Ci4 free
KEY
El proceso de desarrollo con herramientas Open Source
PDF
Herramientas agilesdesarrollo
PDF
Herramientas Ágiles para Desarrollo
PPTX
Conociendo Nuestro Fua interno
PPTX
Integración continua
PDF
Java day 2018 -> Integración y entrega continua no es más trabajo
PDF
Meetup TestingUy 2019 - Plataforma de integración y testing continuo
PPTX
Continuous Integration - Going from Zero to Hero
PDF
Openspacesevilla2012
PDF
Herramientas para la mejora del proceso de desarrollo de aplicaciones J2EE
PDF
Curso JAVA ECOSISTEMAS DE DESARROLLO (DEVELOPMENT FRAMEWORKS).
PDF
CI integración continua
PPT
Continuous Integration
Calidad de software
Lp II clase03 - Entornos de Desarrollo
ALKAID-Herramientas-de-Desarrollo-Software
Presentación Seminario1 EA
Ic maven jenkins_sonar
Open Source Tools for Java Projects
Ci4 free
El proceso de desarrollo con herramientas Open Source
Herramientas agilesdesarrollo
Herramientas Ágiles para Desarrollo
Conociendo Nuestro Fua interno
Integración continua
Java day 2018 -> Integración y entrega continua no es más trabajo
Meetup TestingUy 2019 - Plataforma de integración y testing continuo
Continuous Integration - Going from Zero to Hero
Openspacesevilla2012
Herramientas para la mejora del proceso de desarrollo de aplicaciones J2EE
Curso JAVA ECOSISTEMAS DE DESARROLLO (DEVELOPMENT FRAMEWORKS).
CI integración continua
Continuous Integration

Presentacion de integracion continua (lima agile)

  • 1. Edwin Farfan Colan Consultor Java SCJP 5.0 AP JOEDAYZ E-mail: edwin.farfan@joedayz.org Blog: www.edwinfarfan.blogspot.com Twitter: edwinfarfan
  • 2. Integración Continua Power tools getting all together
  • 3. Los proyectos de software implican un gran número de archivos que necesitan ser integrados juntos para construir un solo producto. Este proceso puede tardar tiempo valioso para nuestro proyecto, además realizar esta tarea es repetitiva. Luego de esta integración algún código desarrollado por otro desarrollador puede causar conflictos con otro código que ya está implementado. Introducción
  • 4. El objetivo es automatizar tareas que son repetitivas (compilar, ejecución de pruebas, construcción, deployar, documentación). Y que estas tareas sean ejecutadas lo más a menudo posible y de manera automática para así poder detectar fallos cuanto antes. Te permite estar siempre informado sobre el estado de tu proyecto. Integración Continua
  • 5. Integración continua La Integración Continua está asociado con las metodologías de programación extrema (XP) y desarrollo ágil. Es una metodología centrada a disminuir la carga de trabajo a los desarrolladores y la utilización de una mayor potencia del servidor http://www.martinfowler.com/articles/continuousIntegration.html
  • 6. Subversion Nexus Sonar Hudson MySql Internet Developer FeedBack Developer Developer Commit Commit Commit
  • 7. Que Necesitamos Software - Control de Versiones (SVN) - Herramienta para generar Build y automización de tareas (Maven - Hudson) - Repositorio local Maven (Nexus) - Métricas y/o reportes de Analisis de código (Sonar) Hardware - Servidor dedicado a IC - Espacio en el disco
  • 8. Controlador de Versiones Subversion sistema de control de versiones que administra y guarda cualquier fichero,mantiene un historial de cambios realizados. Nos permitirá tener nuestro código centralizado, descargar, actualizar y subir código que se encuentra en este repositorio. Hacer frecuentes commits acelerará la construcción del proyecto, además de encontrar rápido errores.
  • 9. Maven Herramienta para la gestión y construcción de proyectos Java. Es la Base que se tiene para trabajar para la IC (con proyectos Java), ya que cuenta con comandos de compilacion, deploy, test, etc. Con un solo comando puede construir un proyecto .
  • 10. Utiliza un Project Object Model (POM) para describir el proyecto de software a construir, sus dependencias de otros módulos y componentes externo, y el orden de construcción de los elementos.
  • 11. Puedes generar un repositorio local para los Jars (o librerias), donde estarán almacenados localmente o remotamente en un servidor.
  • 12. Nexus Nexus es un administrador visual de repositorios para Maven. Nexus actúa como un repositorio de Maven público. Esto significa que los artefactos (jars) y sus dependencias, sólo tienen que descargar una vez, y después se descargan del Nexus.
  • 13. Nexus
  • 14. Hudson Herramienta open source que nos ayuda a monotorizar la ejecución de tareas repetitivas como el compilar un proyecto cada cierto tiempo. Además se enfoca en la construcción y prueba los proyectos de software de forma continua y en monitorizar la ejecución de tareas ejecutadas externamente. Se integra fácilmente con Maven y tiene un sin numero de plugin que se pueden utilizar.
  • 15.  
  • 16. Sonar Podemos controlar, lo que podemos medir. Permite la verificación de la calidad del código java, calcula y muestra en formato web métricas de nuestros proyecto. Herramientas como PMD, CheckStyle, FindBugs, Cobertura, etc; ya vienen embebidas en Sonar.
  • 17. Sonar
  • 18. Ventajas - Reducción del tiempo de integración. - Detección de errores lo más pronto posible. - Pruebas inmediatas tras un cambio en el código. - Disponibilidad del código para test, demos, etc. Desventajas - Necesidad de un servidor dedicado para IC. - El impacto inmediato al subir código erróneo provoca que los desarrolladores no hagan tantos commits como sería conveniente como copia de seguridad
  • 19. Conclusiones - La IC está enfocada a disminuir el riesgo y a la detención y solución temprana de problemas. - La IC nos brindará información en todo momento. - El éxito de la IC esta fuertemente ligada con las serie de pruebas (Cobertura) que se tiene en el proyecto. - Permite una rápida retroalimentación de nuestro proyecto.