Relacionamentos - Archyl Docs

Aprenda como criar e estilizar relacionamentos entre elementos de arquitetura

Relacionamentos

Relacionamentos mostram como os elementos de arquitetura se comunicam, dependem ou interagem entre si. Eles são uma parte crucial da documentação de arquitetura.

Criando Relacionamentos

Arrastar e Soltar

  1. Passe o cursor sobre o elemento de origem
  2. Clique e arraste a partir do ponto de conexão (pequeno círculo)
  3. Solte sobre o elemento de destino
  4. Um relacionamento é criado automaticamente

Menu de Contexto

  1. Clique com o botão direito no elemento de origem
  2. Selecione "Criar Relacionamento"
  3. Clique no elemento de destino

Propriedades do Relacionamento

Rótulo

O rótulo descreve o que o relacionamento representa:

  • "Envia pedidos para"
  • "Lê dados de"
  • "Autentica usando"
  • "Implanta em"

Boas práticas:

  • Use voz ativa
  • Seja específico sobre o que flui
  • Mantenha conciso

Tecnologia

Opcionalmente, especifique a tecnologia ou protocolo:

  • "REST/HTTPS"
  • "gRPC"
  • "AMQP"
  • "SQL/TCP"
  • "WebSocket"

Direção

Relacionamentos têm uma direção mostrada pela seta:

  • Unidirecional: Comunicação em um sentido (mais comum)
  • Bidirecional: Comunicação em dois sentidos

Estilizando Relacionamentos

Estilo da Linha

  • Sólida: Dependência direta ou comunicação
  • Tracejada: Comunicação opcional ou assíncrona

Cor

Use cores para categorizar relacionamentos:

  • Azul para fluxo de dados
  • Verde para caminhos de sucesso
  • Vermelho para tratamento de erros
  • Cinza para opcional

Curvado vs Reto

  • Linhas curvas: Melhor para diagramas complexos, evita sobreposições
  • Linhas retas: Mais limpo para diagramas simples

Padrões Comuns

Requisição-Resposta

Web App --"Faz chamadas API [REST/HTTPS]"--> Servidor API

Orientado a Eventos

Order Service --"Publica eventos [AMQP]"--> Fila de Mensagens
Notification Service <--"Assina eventos [AMQP]"-- Fila de Mensagens

Acesso a Banco de Dados

Servidor API --"Lê/escreve dados [SQL/TCP]"--> Banco de Dados

API Externa

Payment Service --"Processa pagamentos [REST/HTTPS]"--> Stripe API

Relacionamentos Entre Níveis

Relacionamentos podem cruzar diferentes containers ao visualizar no nível de Componente:

  • Componentes podem se conectar a containers em outras partes do sistema
  • Isso ajuda a mostrar o panorama completo sem sair da visualização atual

Dicas

Não Conecte em Excesso

Nem todo relacionamento possível precisa ser mostrado. Foque em:

  • Fluxos de dados principais
  • Dependências importantes
  • Conexões não óbvias

Agrupe Relacionamentos Relacionados

Se múltiplos elementos se comunicam da mesma forma, considere:

  • Usar um intermediário (API Gateway, Fila de Mensagens)
  • Agrupar com overlays

Mantenha Rótulos Legíveis

  • Posicione rótulos para evitar sobreposição
  • Use rótulos mais curtos para diagramas mais limpos
  • Adicione detalhes nas descrições dos elementos em vez disso