Contacta con nosotros

Temario del curso

Fundamentos del pensamiento ágil

  • El Manifiesto Ágil y su relevancia más allá del software.
  • Comparación de lo ágil con los modelos tradicionales en cascada y dirigidos por planes.
  • Rol, eventos y artefactos de Scrum mapeados a ciclos de proyectos académicos.
  • Kanban y gestión basada en el flujo para equipos de investigación y enseñanza.
  • Elegir híbridos ágiles adecuados para entornos de ingeniería y diseño.

Planificación ágil y colaboración

  • Redacción de historias de usuario y definición de criterios de aceptación para problemas de ingeniería.
  • Técnicas de priorización del backlog: MoSCoW, valor vs. esfuerzo, ordenamiento basado en riesgo.
  • Planificación y estimación de sprints con equipos no dedicados exclusivamente a software.
  • Retrospectivas y mejora continua en un entorno académico.
  • Herramientas y tableros de colaboración para participantes multidisciplinarios.

Introducción a la cultura DevOps

  • Definición de DevOps: romper los silos entre desarrollo y operaciones.
  • El modelo CALMS: Cultura, Automatización, Lean (Cero Desperdicio), Medición, Compartir.
  • DevOps en laboratorios de investigación, equipos de ingeniería civil y estudios de arquitectura.
  • Construcción de una cultura sin culpas y bucles de retroalimentación en instituciones educativas.
  • Consideraciones éticas, de seguridad y cumplimiento en la adopción académica de DevOps.

Control de versiones y gestión colaborativa del código

  • Fundamentos de Git para trabajo reproducible en ingeniería y diseño.
  • Estrategias de ramificación: troncal, ramas de funciones y GitFlow simplificado.
  • Solicitudes de incorporación (pull requests), revisión por pares y propiedad del código en equipos docentes.
  • Gestión de activos no codificados: archivos CAD, modelos BIM, conjuntos de datos de simulación.
  • Organización del repositorio para materiales del curso y proyectos estudiantiles.

Integración continua y automatización de compilaciones

  • Conceptos de CI y su aplicación a herramientas de ingeniería compiladas y con scripting.
  • Configuración de compilaciones automatizadas para software, simulaciones y documentación.
  • Etapas del pipeline: compilar, empaquetar, lint (verificación de estilo) y comprobaciones previas al vuelo.
  • Vista general de plataformas CI populares: GitHub Actions, GitLab CI, Jenkins.
  • Gestión de artefactos grandes, caché de dependencias y ejecución paralela.

Calidad del software y análisis estático

  • Definición de calidad del software: mantenibilidad, confiabilidad, usabilidad, eficiencia.
  • Métricas de código: complejidad ciclomática, acoplamiento, cohesión y duplicación.
  • Herramientas de análisis estático para Python, Java, C++ y scripts de ingeniería comunes.
  • Documentación como calidad: docstrings, estándares README y documentación viva.
  • Integración de puertas de calidad en pipelines CI sin bloquear el progreso estudiantil.

Estrategias de prueba y diseño de pruebas

  • La pirámide de pruebas: pruebas unitarias, integración, sistema y aceptación.
  • Escritura de pruebas unitarias para cálculos de ingeniería, simulaciones y utilidades.
  • Fundamentos del desarrollo dirigido por pruebas (TDD) y desarrollo guiado por el comportamiento (BDD).
  • Simulación de sistemas externos: sensores, APIs, solucionadores de elementos finitos.
  • Estructuración de suites de pruebas para proyectos de equipos multidisciplinarios.

Automatización de pruebas y pruebas continuas

  • Automatización de la ejecución de pruebas dentro de pipelines CI/CD.
  • Informes de pruebas, umbrales de cobertura y gestión de pruebas inestables (flaky tests).
  • Pruebas basadas en propiedades y fuzzing para algoritmos de ingeniería.
  • Estrategias de prueba de regresión para tareas académicas en evolución.
  • Pruebas de rendimiento y carga para cargas de trabajo de simulación y renderizado.

Entrega continua y conceptos de despliegue

  • Fundamentos de CD: entrega vs. despliegue, entornos y promoción.
  • Patrones de despliegue: azul-verde, canario y conmutadores de funciones (feature toggles).
  • Aplicación de principios de CD para publicar artefactos de investigación, sitios del curso y aplicaciones.
  • Fundamentos de contenedores con Docker para entornos de ingeniería reproducibles.
  • Introducción a la infraestructura como código: gestión declarativa de configuraciones de laboratorio y nube.

Observabilidad, monitoreo y retroalimentación

  • Registro de eventos (logging), métricas y trazado para software académico y simulaciones.
  • Configuración de monitoreo ligero para proyectos estudiantiles y herramientas de investigación.
  • Uso de datos de retroalimentación para iterar sobre materiales de enseñanza y tareas de laboratorio.
  • Tableros (dashboards) y alertas apropiados para contextos educativos.
  • Verificación post-despliegue y procedimientos de reversión.

Mejores prácticas de seguridad y calidad

  • Fundamentos de codificación segura: validación de entrada, autenticación y gestión de secretos.
  • Escaneo de dependencias y gestión de vulnerabilidades en pilas de código abierto.
  • Cumplimiento de licencias para software utilizado en enseñanza y publicación.
  • Consideraciones de privacidad de datos al manejar información estudiantil y de investigación.
  • Construcción de una cultura consciente de la seguridad en programas de ingeniería y diseño.

Traducción de prácticas en módulos de enseñanza

  • Diseño de asignaciones de proyectos ágiles para estudiantes de sistemas, ingeniería civil, diseño y arquitectura.
  • Creación de rúbricas que evalúen la calidad del proceso junto con la calidad del producto.
  • Configuración de repositorios plantilla con CI preconfigurada para uso estudiantil.
  • Andamiaje (scaffolding) progresivo de conceptos DevOps a lo largo de un semestre.
  • Evaluación de equipos estudiantiles utilizando métricas reales de calidad y automatización.

Selección de herramientas y restricciones académicas

  • Evaluación de herramientas gratuitas y de código abierto para departamentos con presupuesto limitado.
  • Integración con LMS existentes, almacenamiento de archivos e infraestructura de laboratorio.
  • Gestión del débito técnico en bases de código de investigación de larga duración.
  • Incorporación de estudiantes y facultad con diversos antecedentes técnicos.
  • Mantenimiento de la sostenibilidad cuando los colaboradores clave se gradúan o rotan.

Requerimientos

  • Conocimiento básico de los conceptos de desarrollo de software.
  • Familiaridad con flujos de trabajo generales de ingeniería o diseño.
  • Experiencia usando computadoras para trabajo académico o basado en proyectos.

Audiencia objetivo

  • Profesores y conferencistas de programas de Ingeniería de Sistemas, Ingeniería Civil, Diseño y Arquitectura.
  • Persoal académico que busca modernizar su enseñanza con prácticas relevantes para la industria.
  • Líderes de investigación y coordinadores de laboratorios que integran tecnología en el plan de estudios.
 42 Horas

Número de participantes


Precio por participante

Testimonios (2)

Próximos cursos

Categorías Relacionadas