de_DEen_USes_ESfr_FRid_IDjapl_PLpt_PTru_RUvizh_CNzh_TW

Diagrama de Atividade UML: Modelagem de Fluxo Sequencial e Concorrente do Sistema

O Diagrama de Atividade UMLé fundamentalmente um fluxograma que modela os passos sequenciais e concorrentes, ou atividades, de um processo. É usado para descrever os aspectos dinâmicos de um sistema, focando no fluxo de controle de uma atividade para a seguinte.

Este diagrama é inestimável para modelar processos de negócios, definir fluxos de trabalho entre diferentes componentes e documentar a lógica interna de um sistema ou método.

Elementos Principais do Fluxo de Atividade

Um diagrama de atividade é construído com base em nós (que representam passos) e arestas (que representam o fluxo de controle).

A. Nós de Atividade e Ação

Eles representam um único passo ou tarefa realizada no processo.

  • Notação: Um retângulo arredondado.
  • Nó de Ação: Representa um passo atômico e não interrompível (por exemplo, Verificar Estoque).
  • Nó de Atividade: Representa um objetivo de alto nível que pode ser dividido em subatividades (por exemplo, Atender Pedido).
  • Propósito: Definir o trabalho que precisa ser realizado.

B. Fluxo de Controle (Arestas)

O fluxo de controle é a seta que conecta dois nós, mostrando a transição de uma ação para a seguinte.

  • Notação: Uma seta sólida.
  • Propósito: Indica a sequência de execução.

C. Nós de Início e Fim

Todo diagrama deve ter um único ponto de início e um ou mais pontos de término.

  • Nó Inicial (Início):
    • Notação: Um círculo sólido e preenchido.
    • Propósito: O ponto de entrada para o fluxo de controle.
  • Nó Final de Atividade (Fim):
    • Notação: Um círculo sólido cercado por um círculo maior vazio.
    • Propósito: Indica a conclusão de todos os fluxos na atividade.
  • Nó Final de Fluxo:
    • Notação: Um círculo com um ‘X’ dentro.
    • Propósito: Indica o fim de um caminho específico (fluxo), mas nãonecessariamente termina necessariamente a atividade geral.

Modelagem de Lógica de Decisão e Ramificação

Diagramas de atividade usam nós específicos para lidar com lógica condicional, assim comoif-else ou switch declarações em código.

A. Nós de Decisão e Junção

Esses nós são usados para modelar ramificações condicionais e a posterior reunião desses caminhos.

  • Nó de Decisão:
    • Notação: Uma forma de losango.
    • Uso: Um único fluxo de entrada e múltiplos fluxos de saída. Cada fluxo de saída deve ter umCondição de Guarda (uma condição entre colchetes, por exemplo, [Estoque > 0]) que determina qual caminho é seguido.
  • Nó de Mesclagem:
    • Notação: Uma forma de losango.
    • Uso: Várias entradas e um único fluxo de saída. Ele simplesmente representa o ponto onde diferentes ramificações se reúnem, indicando que qualquer um dos ramos de entrada pode levar ao próximo passo. Ele não sincroniza fluxos concorrentes.

Modelagem de Concorrência e Sincronização

Diferentemente de fluxogramas que são tipicamente sequenciais, os Diagramas de Atividades se destacam ao mostrar execução paralela usando Barras de Sincronização.

A. Nós de Divisão e Junção

Esses nós são usados para dividir um único fluxo de controle em múltiplos fluxos concorrentes e, posteriormente, esperar que esses fluxos concorrentes sejam concluídos.

  • Nó de Divisão:
    • Notação: Uma barra grossa horizontal ou vertical.
    • Uso: Um único fluxo de entrada e múltiplos fluxos de saída. Todos os fluxos de saída começam a ser executados concorrentemente (em paralelo) a partir deste ponto.
  • Nó de Junção:
    • Notação: Uma barra grossa horizontal ou vertical.
    • Uso: Vários fluxos de entrada e um único fluxo de saída. O fluxo de saída não pode começar até que todos os fluxos concorrentes de entrada tenham sido concluídos (sincronização).

Elementos Organizacionais: Células

Células (também chamado de Partições) é essencial para mostrar qual departamento, componente ou Ator é responsável por qual atividade. Eles dividem visualmente o diagrama em zonas verticais ou horizontais.

  • Notação: Linhas paralelas verticais ou horizontais que separam diferentes áreas de responsabilidade.
  • Propósito: Agrupar ações pela entidade responsável por realizá-las, proporcionando responsabilidade clara entre diferentes unidades organizacionais (por exemplo, “Cliente”, “Sistema Web”, “Armazém”).

Resumo das Melhores Práticas para Diagramas de Atividade

  • Modelar Fluxo, Não Objetos: Foque na sequência de passos e no fluxo de controle, e não nas relações estruturais entre classes (esse é o trabalho do Diagrama de Classes).
  • Use Cilindros (Swimlanes): Sempre use cilindros para delimitar claramente quem ou o que está realizando cada ação, especialmente em processos de negócios multifuncionais.
  • Rotule os Guardas: Certifique-se de que cada fluxo de saída de um Nó de Decisão esteja rotulado com uma condição de guarda clara e mutuamente exclusiva (por exemplo, [A], [B], [Senão]).
  • Sincronize os Forks: Todo Fork deve ser equilibrado por um Join para garantir que os passos subsequentes aguardem a conclusão de todas as atividades paralelas.

Para uma compreensão mais aprofundada do UML e das formas pelas quais a IA pode visualizá-lo, explore nosso centro de recursos do UML.

This post is also available in Deutsch, English, Español, Français, Bahasa Indonesia, 日本語, Polski, Ру́сский, Việt Nam, 简体中文 and 繁體中文.