/
[HDP-160] Integración Continua

[HDP-160] Integración Continua

Este curso abarca el uso de Maven para gestión de proyectos, control de versiones con Git/Gerrit, y automatización con Jenkins. Incluye configuraciones, pipelines, métricas de calidad con Sonar y análisis de código.

Duración:                     20 horas

Perfil:                           Avanzado

Dirigido a

Esta acción formativa va dirigida a programadores, analistas, jefes de proyecto y arquitectos Java interesados en mejorar sus procesos de desarrollo mediante la automatización y la integración continua. Es adecuado para aquellos que buscan optimizar la calidad del código, la gestión de versiones y la entrega de software.

Requisitos previos 

Los alumnos necesitarán tener experiencia con el lenguaje de programación Java, así como de Servlets, JSP y el patrón MVC previos para poder comprender la materia del curso con éxito.

Objetivos

  • Aprender a configurar y gestionar proyectos utilizando Maven, integrando dependencias, perfiles y plugins.
  • Implementar control de versiones eficaz con Git/Gerrit para manejar el ciclo de vida de un proyecto.
  • Automatizar la integración continua y los pipelines de entrega con Jenkins, gestionando errores y optimizando procesos.
  • Realizar análisis de calidad de código utilizando herramientas como Sonar, Checkstyle y PMD, y aplicar métricas de ingeniería de software para mejorar la calidad del proyecto.
  • Desarrollar habilidades para gestionar proyectos no Java y securizar entornos de desarrollo.


Contenido

  1. Introducción a Maven
    1. Instalación y configuración inicial
    2. Principales características y ventajas
    3. Uso de arquetipos para generar proyectos estándar
    4. Estructura de un proyecto Maven
    5. Configuración de usuario y personalización
    6. Ciclo de vida de Maven: fases y ejecución
    7. Gestión de dependencias y herencia de proyectos
    8. Perfiles y configuración por entorno
    9. Gestión de recursos y plugins
    10. Repositorios locales y empresariales
  2. Control de Versiones con Git/Gerrit
    1. Introducción al control de versiones y flujo de trabajo
    2. Clonación y checkout inicial de repositorios
    3. Ciclo de cambios: actualizar, modificar, revisar y realizar commit
    4. Revisión de cambios y gestión del historial
    5. Estrategias de branching: tagging, branching y merge
    6. Desarrollo paralelo y resolución de conflictos
  3. Automatización e Integración Continua con Jenkins
    1. Instalación y configuración básica de Jenkins
    2. Creación y gestión de pipelines de integración continua
    3. Uso de Jenkinsfile: sintaxis declarativa y gestión de errores
    4. Stashing de código y manejo de nodos, etapas y pasos
    5. Configuración de etapas paralelas y parametrización de tareas
    6. Optimización de la experiencia de usuario con Blue Ocean
  4. Calidad y Métricas de Código con SonarQube
    1. Configuración y análisis de proyectos en SonarQube
    2. Reglas y estándares de codificación
    3. Uso de herramientas de análisis estático: Checkstyle, PMD, FindBugs y Clover
    4. Métricas de ingeniería de software y control de pruebas
    5. Evaluación y evolución temporal del proyecto
  5. Securización y Soporte Multilenguaje
    1. Estrategias para proteger entornos de desarrollo
    2. Configuración de Jenkins para proyectos no Java


Documentación Recomendada

Learning Continuous Integration with Jenkins, Third Edition
Nikhil Pathania
Jan 2024 | 396 pages

https://www.packtpub.com/en-us/product/learning-continuous-integration-with-jenkins-9781835081129


Related pages