O que é e para que serve o C4 Model?

A ausência de padrões leves para externar (seja para documentação ou na elaboração) a arquitetura de um software sempre é um dos maiores desafios que encontro em minhas consultorias.

Representações exóticas, pouco expressivas e com significado difícil de determinar são bem comuns.

C4 Model tem se apresentado como uma excelente alternativa para resolver esse problema.

O que é?

C4 Model é um combinado de método (leve) e linguagem gráfica, concebidos por Simon Brown, para representar arquitetura de software, tanto para concepção quanto para documentação.

O nome C4 vem dos quatro “níveis” de diagrama propostos pelo autor.

  1. Contexto
  2. Containers
  3. Componentes
  4. Classes/Código

Todos os níveis estão relacionados. O nível de Containers é derivado do Contexto; Componentes é derivado de Containers; Classes é derivado de Componentes.

https://www.traditionrolex.com/34

A construção dos diagramas conforme prescrito no C4 Model permite que você consiga ter uma linguagem consistente, em quatro níveis de detalhe, conforme a necessidade (e o stakeholder).

Para que serve?

Como já destacado, C4 Model é uma proposta para padronizar de forma coerente e eficiente a representação da arquitetura de um software.

Os diagramas do C4 Model facilitam a comunicação entre todos os envolvidos no projeto do software.

Cenas dos próximos capítulos

Se você ainda não conhece o C4 model, recomendo fortemente que acesse o site oficial.

Nos próximos posts, vou compartilhar um pouco mais sobre como o C4 Model tem me ajudado em minhas atividades de consultoria. Também vou compartilhar algumas lições aprendidas.

O que você acha do C4 Model? Vê alguma restrição para sua adoção? O que tem usado para documentar a arquitetura de software em seus projetos.

Quer ser notificado para novas publicações, assine a newsletter no formulário abaixo.

Compartilhe este insight:

Elemar Júnior

Sou fundador e CEO da EximiaCo e atuo como tech trusted advisor ajudando diversas empresas a gerar mais resultados através da tecnologia.

Elemar Júnior

Sou fundador e CEO da EximiaCo e atuo como tech trusted advisor ajudando diversas empresas a gerar mais resultados através da tecnologia.

Mais insights para o seu negócio

Veja mais alguns estudos e reflexões que podem gerar alguns insights para o seu negócio:

O comportamento que descrevo nesse post é extremamente nocivo a carreira de todo técnico. Geralmente resulta em desgaste desnecessário e...
Já sabemos como explicitar as relações de um sistema com os demais (diagrama de contexto). Também já sabemos como explicitar...
The example which motivated this post comes from the excellent book Designing Distributed Systems by Brendan Burns (co-founder of the...
What should be the execution result of the following code? using System; using System.Threading.Tasks; using static System.Console; using static System.IO.File;...
Sometimes it is not enough to know if two strings are equals or not. Instead, we need to get an...
I worked a lot in the last months updating the RavenDB bootcamp to v4.x. My work is done (for a...

Inscrição realizada com sucesso!

No dia da masterclass você receberá um e-mail com um link para acompanhar a aula ao vivo. Até lá!

A sua subscrição foi enviada com sucesso!

Aguarde, em breve entraremos em contato com você para lhe fornecer mais informações sobre como participar da mentoria.

Crie sua conta

Preencha os dados para iniciar o seu cadastro no plano anual do Clube de Estudos:

Crie sua conta

Preencha os dados para iniciar o seu cadastro no plano mensal do Clube de Estudos:

× Precisa de ajuda?