12 / 19 Arquitetura de software na prática · 106 min de vídeo · atualizado em 13 out 2026

Introdução à modelagem de arquitetura e System Design

Modele o escopo, os atores, as relações e os requisitos de qualidade antes de escolher componentes.

Fernanda Kipper
Fernanda Kipper
Próxima aula →

Um desenho começa pela pergunta

System Design não é preencher uma tela com serviços conhecidos. Comece pelo que o sistema precisa fazer e pelas condições que importam. Para uma plataforma de cursos: listar cursos, abrir aulas, acompanhar progresso. Depois registre restrições como disponibilidade, privacidade, latência aceitável, equipe e custo operacional.

Defina limites e responsabilidades com diagramas de contexto e containers do C4, ou com qualquer desenho que o time consiga ler. Uma caixa deve representar algo identificável e uma linha deve dizer se transporta chamada, evento ou dado. A granularidade depende da decisão que queremos discutir.

Não confunda requisito com solução

“Precisa escalar” ainda é vago. Pergunte qual operação, qual volume, qual crescimento e que demora é aceitável. Só então discuta cache, filas, réplicas ou particionamento. Uma solução sem cenário mensurável é difícil de avaliar.

Recupere: que perguntas transformariam “o sistema precisa ser rápido” num requisito verificável?

Material complementar da Fernanda

  • Guia de System Design — Comece pelos requisitos funcionais e não funcionais e avance para o caso NotiFly. Defina carga, latência e falhas toleráveis antes de escolher componentes. Em CAP, o conflito é entre consistência e disponibilidade durante uma partição de rede; escalabilidade não é o P.

Pratique com /aprender

/aprender Modele em alto nível uma plataforma que publica cursos e registra progresso. Peça que eu liste atores, operações e requisitos de qualidade antes de desenhar componentes. Questione números vagos como “muito tráfego” e me ajude a formular uma restrição verificável.
A SEGUIR · AULA 13

Monólito modular: domínios, módulos, banco de dados e transações

Material escrito · vídeo previsto para 03/11/2026 · Organize domínios independentes no mesmo processo sem transformar módulos em serviços distribuídos prematuramente.

Ir para a aula 13 →