Partilhar via


Diagramas de projeto de arquitetura

Os arquitetos comunicam frequentemente através de diagramas. Os diagramas são poderosas ferramentas de comunicação que ajudam os implementadores e as partes interessadas a ver a visão ampla ou a mergulhar profundamente em áreas altamente sensíveis ou matizadas 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 são geralmente 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 ao longo das atividades para 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 a ambiguidade nos diagramas. Veja a seguir 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 utiliza as linhas.

Evite linhas sem setas. É difícil saber qual é a relação sem direção, por isso use setas. Rotule todas as linhas sem setas para indicar 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 linhas quando as relações não estiverem claras.

Mantenha a consistência. Use cores, invólucros, ícones, tamanhos de ícones, tipos de linha, cabeças de seta e outras representações padronizadas para elementos semelhantes em todo o diagrama. Mantenha-se consistente em todos os diagramas criados para o design e a documentação da sua carga de trabalho. Desenhe a partir de 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, por isso precisa de evitar falhas de comunicação devido a imprecisões.

Inclua metadados. Certifique-se de que um diagrama contém metadados que fornecem informações essenciais sobre a finalidade do diagrama. Os metadados também fornecem contexto para ajudar os espectadores 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 estiver a representar uma tecnologia específica, utilize os ícones oficiais mais recentes do seu fornecedor de tecnologia. Se a identificação da tecnologia for importante, use o nome oficial do serviço.

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

Tipos de diagramas de projeto

A arquitetura da carga de trabalho é complexa e multidimensional. Cada tipo de dimensão se concentra em um aspeto 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 de entidade-relacionamento descrevem relações entre os componentes do sistema.

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

Diagrama de sistema de alto nível

Um diagrama de sistema de alto nível serve como uma ampla visão geral de toda uma carga de trabalho ou de uma subseção dentro de uma carga de trabalho. Inclui os componentes principais, as suas relações entre si e a ordem aproximada em que os dados fluem através do 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 blocos

Um diagrama de blocos divide uma carga de trabalho em seus principais blocos funcionais. Os blocos são geralmente agnósticos em relação à 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 precisos.

Diagrama de componentes

Um diagrama de componentes funciona como um diagrama de blocos, mas substitui blocos de funcionalidade genéricos por tecnologias específicas. Apresenta uma visão detalhada com o objetivo de comunicar os componentes tecnológicos individuais do sistema e suas relações, como cliente/servidor. Estes diagramas são uma espécie de lista visual de materiais para o âmbito 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 através de 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 cenários de falha dentro delas.

Diagrama de fluxo do usuário

Um diagrama de fluxo de 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 requisitos funcionais em 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) através de atributos padrão do setor e simbologia de associação.

Diagrama de rede

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

Os diagramas de rede geralmente têm uma implementação de vida passada. 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á. 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 projeto. 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 na carga de trabalho planos de resposta a incidentes para ajudar a destacar os principais pontos de decisão e suas ações associadas ou canais de notificação.

Próximos passos