- O modelo C4 é uma forma de visualizar a arquitetura de software usando quatro níveis de abstração: contexto do sistema, contêiner, componente e código
- O modelo C4 foi projetado para ser fácil de aprender e amigável para desenvolvedores, ajudando na comunicação dentro e fora da equipe de desenvolvimento
- O modelo C4 é independente de notação e de ferramentas, portanto pode ser usado com qualquer notação ou conjunto de ferramentas
- O diagrama de contexto do sistema mostra como o sistema de software se encaixa em um contexto mais amplo e como interage com usuários e outros sistemas
- O diagrama de contêiner amplia o sistema de software para mostrar componentes tecnológicos de alto nível
- O diagrama de componentes amplia um contêiner individual para mostrar os componentes dentro dele
- O diagrama de código pode ampliar um componente individual para mostrar como esse componente é implementado
- O modelo C4 é uma abordagem de "abstração em primeiro lugar" para diagramas de arquitetura de software, baseada em abstrações que refletem a forma como arquitetos de software e desenvolvedores pensam e constroem software
- O modelo C4 pode ser usado para criar mapas em diferentes níveis de detalhe do código, de forma semelhante ao Google Maps ao ampliar ou reduzir uma área de interesse
- O modelo C4 pode ser usado para comunicar a arquitetura de software durante sessões iniciais de design e para documentar retrospectivamente bases de código existentes
- O modelo C4 pode ser usado para ajudar na comunicação, no onboarding eficiente de novos funcionários, em revisões/avaliações de arquitetura, identificação de riscos, modelagem de ameaças etc.
- O modelo C4 não recomenda uma notação específica, mas oferece como ponto de partida uma notação simples que funciona bem em quadros brancos, papel, notas adesivas, fichas e várias ferramentas de diagramação
- O modelo C4 é compatível com o template de documentação arc42
- O modelo C4 foi projetado para modelar sistemas de software em vários níveis de abstração, podendo ser usado para descrever diversas arquiteturas de software construídas com diferentes linguagens de programação e implantadas em várias plataformas
1 comentários
Comentários do Hacker News