/
[HDP-150] SonarQube

[HDP-150] SonarQube

Este curso aborda la gestión de proyectos con Maven, control de versiones e integración continua. Incluye análisis de métricas, configuración de proyectos, estándares de codificación, herramientas como Checkstyle y PMD, complejidad, código duplicado y documentación. Además, explora plugins, seguridad y soporte para proyectos no Java en entornos ágiles.

Duración:                     20 horas

Perfil:                            Experto

Dirigido a

Esta acción formativa va dirigida a programadores, analistas Java, jefes de proyecto, arquitectos y Product Owners que deseen implementar y gestionar herramientas de análisis estático de código en sus proyectos, mejorar la calidad y la seguridad del código mediante SonarQube y otras herramientas asociadas.

Requisitos previos 

Los alumnos necesitarán tener experiencia con algún lenguaje de lenguaje de programación, como Java, y conocimientos básicos de herramientas de control de versiones, integración continua, desarrollo ágil, pruebas de software y métricas de calidad.

Objetivos

  • Configurar y gestionar proyectos con SonarQube.
  • Aplicar reglas y estándares de codificación.
  • Integrar herramientas de análisis como Checkstyle, PMD, Findbugs y Clover en el ciclo de desarrollo.
  • Evaluar y analizar métricas clave de software como complejidad ciclomática, código duplicado y cobertura de pruebas.
  • Implementar buenas prácticas para asegurar la calidad y la evolución de los proyectos de software.
  • Aplicar principios ágiles en el desarrollo de software con un enfoque en la mejora continua de la calidad del código.


Contenido

  1. Gestión de Proyectos con Maven
    Configuración y estructura de proyectos utilizando Maven para facilitar la integración con SonarQube

  2. Uso del Control de Versiones
    Integración de SonarQube con sistemas de control de versiones como Git, para análisis continuos del código

  3. Integración Continua
    Implementación de SonarQube en pipelines de integración continua para asegurar la calidad del código durante todo el ciclo de desarrollo

  4. Métricas de Proyectos en SonarQube
    Configuración y análisis de métricas clave del proyecto en SonarQube, como complejidad, cobertura de pruebas y código duplicado

  5. Configuración de Proyectos en SonarQube
    Pasos para configurar un proyecto en SonarQube, incluyendo la integración con herramientas de construcción

  6. Reglas y Estándares de Codificación
    Definición y aplicación de reglas de codificación personalizadas y estándares para garantizar la calidad y consistencia del código

  7. Herramientas de Análisis de Código
    Integración de herramientas como Checkstyle, PMD, FindBugs y Clover para mejorar la calidad del código fuente

  8. Cuadro de Mando de SonarQube
    Uso del panel de control de SonarQube para visualizar las métricas de calidad, identificar problemas y realizar el seguimiento del progreso

  9. Métricas de Ingeniería de Software
    Análisis de métricas fundamentales como la complejidad ciclomática, tamaño, violaciones de código y diseño del software

  10. Análisis de Complejidad Ciclomática
    Evaluación de la complejidad del código para identificar áreas que pueden beneficiarse de refactorización

  11. Detección de Código Duplicado
    Identificación y manejo de código duplicado para reducir el riesgo de errores y facilitar el mantenimiento del código

  12. Documentación y Comentarios
    Revisión de la calidad de la documentación y los comentarios en el código como parte de las métricas de calidad

  13. Tamaño del Proyecto
    Evaluación del tamaño del código y sus implicaciones en el mantenimiento y escalabilidad del proyecto

  14. Violaciones de Reglas y Estándares
    Identificación y resolución de violaciones de las reglas definidas para mejorar la calidad del código

  15. Análisis del Diseño del Software
    Revisión de las estructuras de diseño del software para asegurar una arquitectura limpia y eficiente

  16. Control de Pruebas
    Gestión y análisis de las pruebas automatizadas para garantizar la cobertura y la calidad del código

  17. Evolución Temporal de un Proyecto
    Seguimiento de la evolución del proyecto en el tiempo, observando mejoras o deterioro en la calidad del código

  18. Visión del Código
    Herramientas para obtener una visión global del código, facilitando la toma de decisiones en el desarrollo y mantenimiento

  19. Plugins de SonarQube
    Uso de plugins adicionales para extender las capacidades de SonarQube y adaptarlo a diferentes necesidades del proyecto

  20. Securización del Entorno
    Implementación de medidas de seguridad en SonarQube para proteger el acceso a los proyectos y datos sensibles

  21. Soporte para Proyectos No Java
    Configuración y análisis de proyectos en otros lenguajes además de Java, como Python, C#, JavaScript, entre otros

  22. El Ecosistema Ágil
    Aplicación de SonarQube en entornos ágiles, integrando la herramienta en el flujo de trabajo diario para mejorar la calidad de forma continua

  23. Ejemplo Práctico



Documentación Recomendada

SonarQube in Action
G. Ann Campbell and Patroklos P. Papapetrou
Octubre 2013 | 392 páginas 

https://www.manning.com/books/sonarqube-in-action

Related pages