Arquitectura de Software Basada en Microservicios

  • Tema 1: Introducción a la Arquitectura de Software. En qué consiste la Arquitectura de Software. Propiedades deseadas en una Arquitectura de Software. Documentando y comunicando Arquitectura de Software. Rol del Arquitecto de Software.
  • Tema 2: Estilos de Arquitectura de Software. Monolítico. Monolítico modulares. Multi-capas. Micro-núcleo. Client/Server. Arquitectura Orientada a Servicios (SOA). Microservicios. Basada en eventos.
  • Tema 3: Principios generales de diseño. Asignación de Responsabilidades. Cohesion y Acoplamiento. Modularidad y Abstracción. Ambito de la información. Interfases y APIs. Segregación por funcionalidad. Generalización y especialización.
  • Tema 4: Arquitecturas basadas en Microservicios. Beneficios y retos con los Microservicios. Cuándo y cuándo no usar Microservicios. Granularidad de Microservicios. Almacenamiento de datos en Microservicios. Diseño de APIs en Microservicios. Integración de Microservicios. Plantilla de servicios.
  • Tema 5: Diseñando un Microservicio – Caso de estudio. Capas y patrones comunes (MVC, Repositorio, Service Delegate, Adapters). Diseñando los APIs y controladores. Diseñando eventos. Diseñando capa de datos. Diseñando la capa de reglas del negocio.
  • Tema 6: Integración de Microservicios. Punto a punto. Callback & Polling. PubSub, Eventos. Coreografía. Orquestación. Sagas.
  • Tema 7: Escalabilidad, Robustez y seguridad de Microservicios. Ejes de particionamiento de servicios. Servicios con estados y sin estados. Uso de memorias cache. Fallas parciales. Falacias de sistemas distribuidos. Patrones: reintentos, Circuit breaker, Blukheads, exponential back off. Autenticación y autorización.
  • Tema 8: Operando Microservicios. . Configuración. Pruebas. Instalación (Deployment). CI/CD. Monitoreo y Alertas. Trazas distribuidas (Distributed tracing).

Nota informativa y contenido

DocenteCoordinadorPersonal Administrativo
MSc. Fermin OrdazMSc. Fermin OrdazRosiris Morales

Inversión y Condiciones