Skip to main content
C4 MODEL
Cristiano Raffi Cunha
Comunicação Eficiente Entre Equipes Multidisciplinares
Cristiano Raffi Cunha
Desenvolvedor .NET
Akad Seguros
Segurança
Educação
CRISTIANOPROGRAMADOR.COM
“Software em funcionamento
mais que documentação
abrangente”
MANIFESTO ÁGIL
Alguns "traduzem" essa frase
como:
NÃO DOCUMENTAR NADA!
DEV COM PREGUIÇA
Problemas na
Comunicação
Conceitos
Abstratos
"Tudo bem abandonar o UML, mas, na
busca por agilidade, muitas equipes
de desenvolvimento de software
acabaram perdendo a habilidade de
se comunicar visualmente."
SIMON BROWN
Padronização
Voltar para
UML?
Envolvidos no processo
Tech Não Tech
DEV QA
...
DevOps
AppSec Arquitetura
PO Diretores
...
Stakehold…
Clientes Marketing
Envolvidos no processo
Tech
DEV QA
...
DevOps
AppSec Arquitetura
O que é
C4 Model
Primeiro, visão geral;
depois, amplie e filtre;
em seguida, detalhes
sob demanda
BEN SHNEIDERMAN, 1996
C4 Model
C4 Model
C4 Model
C4 Model
C4 Model
Context
Tem como objetivo ser o ponto de entrada, uma
visão geral!
Publico alvo: Pessoas técnicas e não técnicas
C4 Model - Persona
C4 Model - Sistemas
C4 Model - Interações
C4 Model - Boundary "Limites"
Container
Ter uma visão mais detalhada da arquitetura, quais
os serviços fazem parte, e como se comunicam
Publico alvo: Pessoas técnicas, Dev, DBA, QA...
C4 Model - Container
C4 Model - Container
C4 Model - Armazenamento / Mensagerias*
Component
O mais próximo do código, usado para discutir
fluxos dentro do seu APP/API...
Publico alvo: Time que vai desenvolver a solução
C4 Model - Component
Code
Foco em diagramas próximos de código, como o de
classe
Publico alvo: quem vai desenvolver a solução
Notação
[{tecnology}]
{description}
Ferramentas
Miro
Excalidraw
Como manter
atualizado?
Diagrama
As Code
Plant UML
Mermaid
Conteúdos
The Software
Guidebook
The C4
Model
"Quando a solução é
apresentada de forma clara,
a comunicação entre equipes
técnicas e estratégicas se
torna mais fluida.
Reduzir ruído na
comunicação
Focar em
Gerar Valor
para o cliente
Perguntas?