Especialidad formativa
Gestión de proyectos de desarrollo de software
Qué aprenderás
Conocer las herramientas, metodologías y conocimientos necesarios para planificar, ejecutar, controlar y culminar proyectos de software.
Contenido del curso
01
Fundamentos de la Ingeniería del Software
- OBJETIVO
- Comprender los conceptos fundamentales de la Ingeniería del Software, incluyendo metodologías modernas, análisis de sistemas y diseño de software.
- CONOCIMIENTOS/ CAPACIDADES COGNITIVAS Y PRÁCTICAS
- Conocimiento de fundamentos de Ingeniería del Software
- Definiciones y evolución de la ingeniería del software
- Ciclo de vida del software y metodologías ágiles
- Ingeniería del software orientada a objetos y web
- Consideraciones de sostenibilidad en el desarrollo de software
- Análisis de sistemas de información
- Análisis de Requisitos
- Herramientas de Análisis de Requisitos
- Análisis orientado a objetos y diagramas UML
- Análisis de eficiencia energética en sistemas de información
- Análisis específicos
- Diseño de software sostenible
- Enfoques y niveles de diseño
- Herramientas de diseño
- Diseño de interfaces de usuario accesibles y eficientes
- Arquitecturas de software
- Técnicas de diseño orientado a objetos y UML
- Implementación de Pruebas y calidad del software
- Estrategias de pruebas unitarias y del sistema
- Pruebas de eficiencia energética y rendimiento
- Aseguramiento de la calidad en el desarrollo sostenible.
- HABILIDADES DE GESTIÓN, PERSONALES Y SOCIALES
- Sensibilización hacia el ahorro energético en programación.
- Fomento del pensamiento analítico.
- Fomento del pensamiento lógico.
02
Gestión de Proyectos de Software
- OBJETIVO
- Planificar, ejecutar y controlar proyectos de software utilizando metodologías tradicionales, ágiles y prácticas de DevSecOps.
- CONOCIMIENTOS/ CAPACIDADES COGNITIVAS Y PRÁCTICAS
- Gestión tradicional de proyectos
- Fases del ciclo de vida del proyecto: iniciación, planificación, ejecución, monitoreo y cierre
- Herramientas y técnicas de planificación (Gantt, PERT, CPM)
- Gestión del alcance, tiempo y costos
- Control y documentación del proyecto
- Uso de Metodologías Ágiles de Gestión de Proyectos
- Principios y valores del Manifiesto Ágil
- Scrum, Kanban y metodologías híbridas
- Roles y responsabilidades en equipos ágiles
- Planificación y Seguimiento de Proyectos Ágiles
- Técnicas de estimación ágil (Planning Poker, Story Points)
- Gestión de backlog y sprints
- Métricas ágiles y dashboards de proyecto
- Gestión de Costos en Proyectos de Software
- Estimación de costos utilizando COCOMO II y otros modelos
- Análisis del costo total de propiedad (TCO) en proyectos
- Presupuestación y control financiero en proyectos ágiles
- Conocimiento de DevSecOps: Integración de desarrollo, operaciones y seguridad
- Principios y prácticas de DevSecOps
- Automatización de CI/CD con enfoque en seguridad
- Herramientas de DevSecOps (Jenkins, GitLab, SonarQube)
- Gestión de Recursos y Productividad
- Formación de equipos multifuncionales
- Técnicas de mejora continua (Retrospectivas, Kaizen)
- Medición y optimización de la eficiencia del equipo.
- HABILIDADES DE GESTIÓN, PERSONALES Y SOCIALES
- Adaptación a las necesidades y políticas empresariales.
- Preocupación por el seguimiento y cumplimiento de políticas y regulaciones de seguridad.
- Trabajo en equipo.
- Visión estratégica.
03
Arquitecturas Modernas y Desarrollo Avanzado
- OBJETIVO
- Profundizar en arquitecturas de software, técnicas avanzadas de desarrollo y prácticas de Ingeniería de Software.
- CONOCIMIENTOS/ CAPACIDADES COGNITIVAS Y PRÁCTICAS
- Uso de Arquitecturas de Software Actuales
- APIs, diseño e implementación
- Microservicios y arquitecturas basadas en eventos
- Serverless y computación en el edge
- Arquitecturas cloud-native y patrones de diseño asociados
- Desarrollo de software ecológico
- Principios de Green Software Engineering
- Técnicas de optimización de recursos y eficiencia energética
- Métricas y herramientas para medir el impacto ambiental del software
- Introducción a la Ingeniería de Software Aumentada por IA
- Herramientas de IA para asistencia en codificación (GitHub Copilot, Tabnine)
- Análisis de código y detección de bugs asistido por IA
- Generación automática de pruebas y documentación
- Desarrollo avanzado y prácticas de código limpio
- Principios SOLID y patrones de diseño avanzados
- Técnicas de refactorización y optimización de código
- Programación funcional y reactiva
- Uso de Inteligencia Artificial y Machine Learning en Ingeniería de Software
- MLOps y gestión del ciclo de vida de modelos de ML
- Desarrollo de sistemas con componentes IA/ML
- Consideraciones éticas y privacidad en IA
- Desarrollo para tecnologías específicas
- Realidad Aumentada (AR) y Realidad Virtual (VR)
- Internet de las Cosas (IoT) y sistemas embebidos
- Desarrollo para redes 5G
- Conocimiento de Blockchain y tecnologías distribuidas
- Fundamentos del blockchain y contratos inteligentes
- Desarrollo DApps (aplicaciones descentralizadas)
- Casos prácticos del uso del blockchain en ingeniería
- Uso de otros Planteamientos en la Ingeniería del Software
- Low-code/no-code development platforms
- Quantum computing e impacto en la ingeniería
- Ética y responsabilidad en el desarrollo.
- HABILIDADES DE GESTIÓN, PERSONALES Y SOCIALES
- Sensibilización hacia el ahorro energético en programación.
- Fomento del pensamiento analítico.
- Fomento del pensamiento lógico.
04
Gestión Práctica de Proyectos de Software
- OBJETIVO
- Aplicar herramientas y técnicas prácticas para la planificación, seguimiento y control de proyectos de software, utilizando software de gestión de proyectos y métodos tanto tradicionales como ágiles.
- CONOCIMIENTOS/ CAPACIDADES COGNITIVAS Y PRÁCTICAS
- Uso de Herramientas de Gestión de Proyectos
- Uso avanzado de Microsoft Project y alternativas (Jira, Trello, Asana...)
- Configuración y personalización de herramientas para proyectos de software
- Integración con otras herramientas de desarrollo (GitHub, GitLab...)
- Planificación detallada del proyecto
- Creación de la Estructura de Desglose del Trabajo (EDT/WBS)
- Estimación de esfuerzo y duración (PERT, analogía, juicio experto)
- Asignación de recursos y nivelación
- Seguimiento y control del proyecto
- Técnicas de Valor Ganado (EVM) para proyectos de software
- Gestión de la ruta crítica y análisis de desviaciones
- Informes de estado y cuadros de mando (dashboards)
- Gestión de Riesgos en proyectos de software
- Identificación y análisis de riesgos específicos de software
- Estrategias de mitigación y planes de contingencia
- Seguimiento continuo de riesgos
- Gestión de la Calidad del Software
- Planificación de la calidad y definición de métricas
- Implementación de revisiones y auditorías
- Gestión de defectos y mejora continua
- Cierre del proyecto y lecciones aprendidas
- Procedimientos de cierre formal del proyecto
- Evaluación tras la finalización y documentación de lecciones aprendidas
- Transferencia de conocimientos y mejores prácticas.
- HABILIDADES DE GESTIÓN, PERSONALES Y SOCIALES
- Adaptación a las necesidades y políticas empresariales.
- Preocupación por el seguimiento y cumplimiento de políticas y regulaciones de seguridad.
- Trabajo en equipo.
- Visión estratégica.
Especialidad formativa