MAC0475  Laboratório de Sistemas Computacionais Complexos

Por | Em

OBJETIVOS:  Capacitar os estudantes para construirem sistemas complexos e distribuídos, utilizando metodologias de desenvolvimento e tecnologias web / mobile atuais.

PROGRAMA RESUMIDO:  Métodos ágeis, DevOps, sistemas distribuídos, padrões arquiteturais, princípios arquiteturais, tecnologias web fundamentais, desenvolvimento para front-end e modelos de páginas, desenvolvimento para back-end e padrões arquiteturas, autenticação e autorização, banco de dados, infraestrutura, plataformas de entrega.

PROGRAMA:  Métodos ágeis (valores, princípios e práticas), DevOps (entrega contínua, versionamento, trunk-based development, automação de testes), sistemas distribuídos (teorema CAP, consistência forte e eventual, níveis de disponibilidade), padrões arquiteturais (camadas, microkernel, microsserviços, baseada em eventos, nuvem), princípios arquiteturais (aplicações com 12 fatores, sistemas reativos, sistemas nativos à nuvem), tecnologias web fundamentais (HTML, CSS, JavaScript), modelo requisição-resposta (ad hoc, REST, GraphQL), desenvolvimento para front-end e modelos de páginas (MPA, SPA, SSR, PWA), desenvolvimento para back-end e padrões arquiteturais (MVC, MVP, MVVM, JAM), autenticação (identificadores sequenciais, UUID, tokens, JWT) e autorização (protocolos de controle de acesso), banco de dados (relacionais, não relacionais, mensageiros), infraestrutura (virtualização, conteinerização, orquestração e coreografia, malha de serviços) e plataformas de entrega (IaaS, PaaS, CDN, serverless).

PRÉ-REQUISITOS:  MAC0350.

CARGA HORÁRIA SEMANAL E NÚMERO DE CRÉDITOS:  4 horas, 4 créditos-aula e 2 créditos-trabalho.

CRITÉRIO DE AVALIAÇÃO DA APRENDIZAGEM: 
Média ponderada de notas em presença, comprometimento ao método, empenho, autoavaliação e qualidade do software desenvolvido.

BIBLIOGRAFIA BÁSICA: 

  • BONÉR, Jonas, Reactive Microsystems: The Evolution of Microservices at Scale, Sebastopol: O’Reilly Media, Inc, 2017
  • GARRISON, Justin, NOVA, Kris, Cloud Native Infrastructure: Patterns for Scalable Infrastructure and Applications in a Dynamic Environment. 1. ed. ​, Sebastopol: O’Reilly Media, Inc, 2017
  • NEWMAN, Sam, Building Microservices: Designing Fine-Grained Systems ​, Sebastopol: O’Reilly Media, Inc, 2015
  • SADALAGE, Pramod J., FOWLER, Martin , NoSQL Distilled: A Brief Guide to the Emerging World of Polyglot Persistence ​, Upper Saddle River, NJ: Addison-Wesley, 2013

OBSERVAÇÃO:  Disciplina optativa eletiva nos currículos do BCC.

 

[Veja dados da disciplina no JúpiterWeb]