Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

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

Jenkins Administrator's Guide
Lalit Adithya, Calvin Sangbin Park, Samuel Gleske
Dec 2021 | 436 Learning Continuous Integration with Jenkins, Third Edition
Nikhil Pathania
Jan 2024 | 396 pages

https://www.packtpub.com/en-us/product/jenkins-administrators-guide-9781838828295

Image Removed
Image Added