Compartilhar via


Diagramas de projeto de arquitetura

Os arquitetos geralmente se comunicam por meio de diagramas. Os diagramas são ferramentas de comunicação poderosas que ajudam os implementadores e as partes interessadas a ter uma visão ampla ou mergulhar profundamente em áreas altamente sensíveis ou diferenciadas de um sistema. Para se comunicar com intenção, um arquiteto deve selecionar qual diagrama é útil em cada situação.

A lista de diagramas neste artigo não é exaustiva. Os diagramas geralmente são compostos de vários tipos.

Em última análise, a escolha do diagrama de arquitetura depende do que você está tentando transmitir e do perfil do público. Um arquiteto usa vários tipos de diagramas em todas as atividades de design, refinamento de requisitos e comunicação.

Práticas de diagramação

Os diagramas apresentam informações substanciais sem a necessidade de explicação textual. Evite ambiguidade nos diagramas. Veja algumas recomendações:

Use notações padrão. Use símbolos, ícones e convenções de apresentação amplamente reconhecidos para uma boa legibilidade e interpretação de um diagrama.

Evite linhas ambíguas. Os diagramas geralmente mostram relações entre entidades representadas como linhas. Seja consistente na forma como você usa as linhas.

Evite linhas sem setas. É difícil saber qual é o relacionamento sem direção, então use setas. Rotule todas as linhas sem setas para denotar as relações.

Evite linhas com setas duplas. Setas duplas implicam uma dependência bidirecional. Prefira usar uma seta de extremidade única para representar o fluxo do dependente (cliente) para a dependência (servidor).

Rotule tudo. Forneça rótulos claros, precisos e significativos para cada ícone. Rotule as linhas quando as relações não estiverem claras.

Mantenha a consistência. Use cores padronizadas, maiúsculas e minúsculas, ícones, tamanhos de ícones, tipos de linha, pontas de seta e outras representações para elementos semelhantes em um diagrama. Mantenha-se consistente em todos os diagramas criados para o design e a documentação da sua carga de trabalho. Extraia dados ou taxonomias existentes.

Seja preciso. Os diagramas são abstrações, mas não sacrificam a precisão no processo. Por exemplo, não represente um serviço em uma rede virtual se ele não estiver presente nessa rede virtual. Um diagrama é uma ferramenta de comunicação, portanto, você precisa evitar falhas de comunicação causadas por imprecisões.

Inclua metadados. Certifique-se de que um diagrama contenha metadados que forneçam informações essenciais sobre a finalidade do diagrama. Os metadados também fornecem contexto para ajudar os visualizadores a entender o escopo e o significado do diagrama. Inclua itens como título, descrição, data da última atualização, autor e referências externas.

Use ícones oficiais e nomes de serviços. Quando você estiver representando uma tecnologia específica, use os ícones oficiais mais recentes do seu provedor de tecnologia. Se a identificação da tecnologia for importante, use o nome oficial do serviço.

Por exemplo, aqui estão os ícones dos serviços da Microsoft:

Tipos de diagramas de design

A arquitetura da carga de trabalho é complexa e multidimensional. Cada tipo de dimensão se concentra em um aspecto específico do sistema, fornecendo um nível de detalhe específico para essa dimensão. Por exemplo, fluxogramas ilustram o fluxo do processo. Os diagramas entidade-relacionamento descrevem as relações entre os componentes do sistema.

Ter diferentes tipos de diagramas permite uma compreensão abrangente das dimensões. Ajuda a incentivar a comunicação eficaz, a resolução de problemas e a tomada de decisões entre as partes interessadas.

Diagrama do sistema de alto nível

Um diagrama de sistema de alto nível serve como uma visão geral ampla de toda uma carga de trabalho ou de uma subseção dentro de uma carga de trabalho. Inclui os componentes principais, seus relacionamentos entre si e a ordem aproximada em que os dados fluem pelo sistema. As setas mostram a direção da interação.

Esses diagramas são bons para chegar a um entendimento comum para que você possa iniciar discussões mais profundas ou para a comunicação com as partes interessadas.

Diagrama de bloco

Um diagrama de blocos divide uma carga de trabalho em seus principais blocos funcionais. Os blocos geralmente são agnósticos em termos de tecnologia. Eles se referem à funcionalidade que está sendo executada em vez de um componente específico.

Por exemplo, um diagrama de blocos pode fazer referência a um "barramento de mensagens" em vez de uma tecnologia específica de barramento de mensagens. Esse tipo de diagrama pode ajudar a explicar a estrutura, o fluxo de dados e o fluxo de processamento de um sistema sem distrair o público com detalhes finos.

Diagrama de componente

Um diagrama de componentes funciona como um diagrama de blocos, mas substitui blocos de funcionalidade genéricos por tecnologias específicas. Ele apresenta uma visão detalhada com o objetivo de comunicar os componentes de tecnologia individuais do sistema e seus relacionamentos, como cliente/servidor. Esses diagramas são uma espécie de lista de materiais visuais para o escopo do diagrama.

Diagrama de implantação

Um diagrama de implantação se concentra na implantação de infraestrutura, software comercial pronto para uso (COTS) e código personalizado em toda a carga de trabalho. Ele mostra como o software e o código são distribuídos pela infraestrutura de hospedagem.

Diagrama de fluxo de dados

Um diagrama de fluxo de dados (DFD) ilustra como os dados se movem por um sistema, o que é útil quando você está modelando sistemas centrados em dados. Em um diagrama como este, é uma boa ideia observar se os dados são movidos em lotes ou em tempo real para remover a ambiguidade.

Diagrama de sequência

Um diagrama de sequência descreve as trocas de comunicação entre os componentes da carga de trabalho ao longo do tempo. Ele ilustra as relações cliente/servidor e sua natureza síncrona ou assíncrona. Ele também destaca as dependências nessas trocas e avalia os cenários de falha dentro delas.

Diagrama de fluxo do usuário

Um diagrama de fluxo do usuário se concentra em uma interação com escopo entre cargas de trabalho, usuários ou atores e a carga de trabalho. É útil para esclarecer e visualizar os requisitos funcionais de várias maneiras pelas quais um usuário e os dados do usuário interagem com o sistema.

Diagrama entidade-relacionamento

Um diagrama entidade-relacionamento (ERD) é um diagrama de modelagem que representa a estrutura de um banco de dados ou outro sistema de armazenamento. Ele mostra a relação entre entidades (como tabelas) por meio de atributos padrão do setor e simbologia de associação.

Diagrama de rede

Um diagrama de rede ilustra a solução da perspectiva da rede em que ela é executada ou com a qual interage. Esses diagramas são úteis para visualizar a segmentação de rede da carga de trabalho, os pontos de falha de rede e as principais transições de rede, como saída da Internet e pontos de entrada.

Os diagramas de rede geralmente têm uma implementação anterior à vida. Os diagramas de rede são frequentemente usados em auditorias e resposta a incidentes.

Diagrama de estado

Um diagrama de estado é uma visualização especializada. Ele mostra o estado em que um fluxo (ou um componente individual) está. Ele também mostra como o fluxo transita entre estados em resposta a condições ou eventos.

Fluxograma

Embora não seja um diagrama de arquitetura especificamente, um fluxograma é outra maneira de trazer clareza a um design. Os fluxogramas geralmente são úteis quando representam fluxos de trabalho ou lógica complexos. Você pode usá-los para ajudar a refinar os requisitos e ajudar a orientar as opções de implementação.

Os fluxogramas são úteis para incluir nos planos de resposta a incidentes de carga de trabalho para ajudar a destacar os principais pontos de decisão e suas ações ou canais de notificação associados.

Próximas etapas