Centro Premium
El cloud computing está en auge, ofreciendo a las organizaciones una plataforma para publicar aplicaciones en Internet. Estas aplicaciones, conocidas como "cloud native applications", son diseñadas específicamente para aprovechar las ventajas de la nube, como escalabilidad y tolerancia a fallos. Para ello, deben seguir patrones y utilizar tecnologías adecuadas para su implementación y diseño.
El Máster tiene como objetivo proporcionar conocimientos y habilidades para el desarrollo y despliegue de aplicaciones de Internet en la nube. Cubre el ciclo completo de vida de las aplicaciones, incluyendo metodologías de desarrollo, calidad del software, tecnologías de implementación, plataformas en la nube y control del ciclo de integración y despliegue. Se estructura en cuatro módulos para abordar estos aspectos de manera integral.
MÓDULO I - CALIDAD SOFTWARE: DISEÑO, ARQUITECTURA, PRUEBAS Y XP
Duración: 8 semanas
Temario:
Diseño y calidad software (2 semanas)
Patrones, Conocimiento y Complejidad
Software, Disciplinas y Evolución
Diseño, Diseño Modular y Diseño Orientado a Objetos
Patrones y arquitectura software (2 semanas)
Patrones de diseño
Patrones creacionales, estructurales y de comportamiento
Arquitectura del software
Estilo arquitectónico MV*
Estilo arquitectónicos ágiles: Hexagonal, Onion, Clean
Pruebas software (2 semanas)
Metodología de pruebas
Diseño de pruebas: caja negra vs caja blanca
Pruebas unitarias
Dobles en pruebas
Programación extrema (2 semanas)
Refactoring
Test Driven Development
Programación extrema (XP)
Scrum
Proceso Unificado de Desarrollo (PUD)
MÓDULO II - SERVICIOS WEB: TECNOLOGÍAS, PROTOCOLOS, PRUEBAS Y ARQUITECTURAS
Duración: 10 semanas
Temario:
Tecnologías y protocolos de servicios web (5 semanas)
Introducción a las tecnologías de servicios web
Aplicaciones web
APIs REST
Bases de datos
Construcción y despliegue
Programación reactiva
Protocolos: REST, gRPC, GraphQL y colas
Ciberseguridad
Gestión de la identidad
Vulnerabilidades en servicios web
Patrones y arquitecturas de servicios web (1 semana)
Introducción
Patrones
Arquitectura hexagonal y clean
Pruebas de servicios web (2 semanas)
Introducción
Pruebas con Spring y TestContainers
Pruebas de APIs REST
Consumer driven contract testing
Pruebas de aceptación
Pruebas de carga
Pruebas de interfaz en aplicaciones web
Persistencia y análisis de datos (2 semanas)
Persistencia relacional
Bases de datos multi-modelo
Evolución de bases de datos
Persistencia no relacional
Introducción a la ciencia de datos
MÓDULO III - APLICACIONES NATIVAS DE LA NUBE
Duración: 12 semanas
Temario:
Computación en la nube (3 semanas)
Introducción
Amazon Web Services
Servicios en la nube
Plataforma como Servicio
Aplicaciones nativas de la nube
Serverless
Operaciones
Seguridad y privacidad en la nube
Contenedores y orquestadores (4 semanas)
Contenedores Docker
Docker Compose
Seguridad en Docker
Kubernetes
Seguridad en Kubernetes
Aplicaciones Kubernetes con Helm
Herramientas de desarrollo con Kubernetes
Escalabilidad y tolerancia a fallos
Microservicios (5 semanas)
Introducción a los microservicios
Arquitecturas: DDD, CQRS y event sourcing
Patrones de microservicios
Comunicación entre servicios
Transacciones con sagas
API externa
De monolito a microservicios
MÓDULO IV - DEVOPS, INTEGRACIÓN Y DESPLIEGUE CONTINUO
Duración: 6 semanas
Temario:
Repositorios y modelos de desarrollo (2 semanas)
Ciclo de vida del software
Control de versiones Git
Modelos de desarrollo: Gitflow y TBD
Desarrollo con monorepo
Integración y entrega continua (2 semanas)
Introducción
Servicios de CI: GItHub Actions y Jenkins
Análisis estático de código
Gestión de artefactos
Despliegue continuo (2 semanas)
Introducción
Parallel Changes
Despliegue incremental: Blue-Green y Canary
Herramientas de despliegue continuo
Pruebas en producción
TRABAJO DE FIN DE MÁSTER
Después de cursar todas las asignaturas hay que realizar un Trabajo de Fin de Máster (TFM). En este trabajo se aplican y desarrollan los conocimientos aprendidos. No se trata de una pequeño proyecto "de juguete", es más bien la excusa perfecta para profundizar en un tema de interés para el alumno. Los profesores proponen una serie de temas, pero los alumnos también pueden proponer proyectos que les motiven. Por ejemplo, aquella tecnología que nunca tienes tiempo de estudiar en profundidad, implementar una arquitectura concreta que tienes en la cabeza para algo que estás haciendo en el trabajo, comparar diferenes alternativas, etc. Los Trabajos de Fin de Máster pueden realizarse de forma individual o en grupos de alumnos, lo que permite llegar más allá en sus objetivos.
Finalizada la formación, recibirás una titulación que acredita los conocimientos obtenidos.
Otros cursos