O Diagrama de Atividade ajuda a descrever o fluxo de controle do sistema-alvo, como explorar regras de negócios complexas e operações, descrever casos de uso e modelar processos de negócios.
Introdução
Diagramas de atividade são uma parte fundamental da Linguagem de Modelagem Unificada (UML) usada para modelar os aspectos dinâmicos de um sistema. Eles focam na sequência e condições para coordenar comportamentos de nível inferior, ao invés de quais classificadores possuem esses comportamentos. Eles são comumente chamados de fluxo de controle e modelos de fluxo de objetos.
Os comportamentos coordenados por esses modelos podem ser iniciados porque:
-
Outros comportamentos terminam a execução
-
Objetos e dados tornam-se disponíveis
-
Eventos ocorrem externamente ao fluxo

Ferramenta de Diagrama de Atividade visual Paradigm
Propósito e Aplicações
Diagramas de atividade servem a múltiplos propósitos de modelagem:
🔹 Computação Procedural: As atividades funcionam como métodos correspondentes a operações em classes em modelos orientados a objetos.
🔹 Engenharia de Processos de Negócios: Aplicado à modelagem organizacional para o design de fluxos de trabalho, onde eventos podem originar-se dentro do sistema (conclusão de tarefas) ou fora dele (interações com clientes).
🔹 Modelagem de Sistemas de Informação: Usado para especificar processos de nível de sistema e coordenar regras de negócios complexas.
🔹 Elaboração de Casos de Uso: Ajuda a descrever o fluxo interno de operações dentro de um cenário de caso de uso.
Diagrama de Atividade de Exemplo

Exemplo de um diagrama de atividades típico que mostra o fluxo de controle, pontos de decisão e processamento paralelo.
Referência Completa de Notação
Abaixo está uma referência abrangente de todas as notações do Diagrama de Atividades, incluindo ícones visuais, definições e propriedades principais.
Elementos Principais
Atividade

Definição: Uma atividade especifica a coordenação das execuções de comportamentos secundários, usando um modelo de fluxo de controle e dados. O fluxo de execução é modelado como nós de atividade conectados por arestas de atividade.
Propriedades Principais:
| Propriedade | Descrição |
|---|---|
| Nome | O nome da atividade |
| Linguagem | Linguagem de modelagem usada |
| Pré-condição | Restrições que devem ser atendidas ao ser invocada |
| Pós-condição | Restrições atendidas após a conclusão da execução |
| Execução única | Se verdadeiro, todas as invocações são tratadas pela mesma execução |
| Somente leitura | Se verdadeiro, a atividade não pode fazer alterações não locais |
| Reentrante | Se o comportamento pode ser invocado enquanto ainda está sendo executado |
| Parâmetros | Ordem e tipo de argumentos para a invocação |
Nó de Parâmetro de Atividade

Definição: Nós de objeto no início e no final dos fluxos que fornecem um meio para aceitar entradas em uma atividade e fornecer saídas da atividade, por meio dos parâmetros da atividade.
Propriedades Chave:
| Propriedade | Descrição |
|---|---|
| Parâmetro | O parâmetro para o qual o nó aceita fornece valores |
| Limite superior | Número máximo de tokens permitidos no nó |
| Tipo de ordenação | Como os tokens são ordenados para seleção |
| Direção | Indica se o parâmetro é de entrada ou saída (padrão: entrada) |
| Tipo | O tipo do nó de parâmetro de atividade |
| Deve isolar | Se verdadeiro, as ações são executadas em isolamento (padrão: falso) |
Ação

Definição: Representa uma única etapa dentro de uma atividade que não é mais decomposta. Uma ação não começará a execução até que todas as condições de entrada sejam satisfeitas.
Propriedades Chave:
| Propriedade | Descrição |
|---|---|
| Nome | O nome da ação |
| Visibilidade | Acessibilidade dentro de namespaces |
| Tipo | Ação de chamada de comportamento ou ação de chamada de operação |
| Efeito | O efeito de completar a ação |
| Deve isolar | Isola efeitos de ações fora do grupo |
Ações de Tratamento de Eventos
Ação de Aceitar Evento

Definição: Uma ação que aguarda a ocorrência de um evento que atenda a condições especificadas.
Ação de Aceitar Evento de Tempo

Definição: Se a ocorrência for um evento de tempo, o valor resultante contém o momento em que a ocorrência ocorreu. Chamado informalmente de uma “ação de espera de tempo”.
Ação de Enviar Sinal

Definição: Cria uma instância de sinal a partir de entradas e a transmite para o objeto-alvo, potencialmente causando uma transição de máquina de estados ou execução de atividade. O solicitante continua imediatamente; respostas são ignoradas.
Nós de Controle
Nó Inicial

Definição: Um nó de controle onde o fluxo começa quando a atividade é invocada. Uma atividade pode ter mais de um nó inicial.
Nó Final da Atividade

Definição: Uma atividade pode ter mais de um nó final de atividade. O primeiro alcançado interrompe todos os fluxos na atividade.
Nó Final de Fluxo

Definição: Um nó final de fluxo destrói todos os tokens que chegam a ele. Não tem efeito algum sobre outros fluxos na atividade.
Nó de Decisão

Definição: Aceita tokens em uma aresta de entrada e os apresenta a múltiplas arestas de saída. A aresta percorrida depende da avaliação das guardas nas arestas de saída.
Nó de Mesclagem

Definição: Reúne múltiplos fluxos alternativos. Não usado para sincronizar fluxos concorrentes, mas para aceitarum entre váriosfluxos alternativos.
Nó de Divisão

Definição: Um nó de controle que divide um fluxo emmúltiplos fluxos concorrentes. Possui uma aresta de entrada e múltiplas arestas de saída.
Nó de Junção

Definição: Um nó de controle quesincroniza múltiplos fluxos. Possui múltiplas arestas de entrada e uma aresta de saída.
Nós de Objeto e Fluxos
Nó de Objeto

Definição: Indica uma instância de um classificador específico, possivelmente em um estado específico, que pode estar disponível em um ponto particular da atividade.
Pino de Entrada

Definição: Nós de objeto que recebem valores de outras ações por meio de fluxos de objeto.
Pino de Saída

Definição: Nós de objeto que entregam valores para outras ações por meio de fluxos de objeto.
Pino de Valor

Definição: Um pino de entrada que fornece um valor para uma ação que nãovem de uma aresta de fluxo de objeto de entrada.vem de uma aresta de fluxo de objeto de entrada.
Nó de Buffer Central

Definição: Aceita tokens dos nós de objetos upstream e os passa para os nós de objetos downstream. Atua como um buffer para múltiplos fluxos de entrada/saída. Não se conecta diretamente a ações.
Nó de Armazenamento de Dados

Definição: Representa um local de armazenamento persistente para objetos dentro do fluxo de atividade.
Fluxo de Controle

Definição: Uma aresta que inicia um nó de atividade após o anterior ter sido concluído.
Propriedades Principais:
| Propriedade | Descrição |
|---|---|
| Fonte/Alvo | Nós conectados pelo fluxo |
| Peso | Mínimo de tokens que devem percorrer simultaneamente |
| Guarda | Especificação em tempo de execução para determinar a percorribilidade |
Fluxo de Objetos

Definição: Uma aresta de atividade que pode ter objetos ou dados passando por ela.
Propriedades Principais:
| Propriedade | Descrição |
|---|---|
| Seleção | Seleciona tokens de um nó de objeto de origem |
| Transformação | Altera ou substitui tokens de dados que fluem ao longo da aresta |
| Multicast/Multirreceber | Controla o método de passagem de objetos |
Nós de Atividade Estruturados
Especificação do Nó Condicional

Definição: Um nó de atividade estruturado que representa um escolha exclusiva entre alternativas.
Propriedades Principais:
| Propriedade | Descrição |
|---|---|
| Garantido | Se verdadeiro, pelo menos um teste terá sucesso (padrão: falso) |
| Determinado | Se verdadeiro, no máximo um teste terá sucesso (padrão: falso) |
| Cláusulas | Cláusulas que compõem o condicional |
| Resultado | Pinos de saída que constituem saídas de fluxo de dados |
Nó de Loop

Definição: Representa um loop com seções de configuração, teste e corpo. A seção de teste pode preceder ou seguir a seção de corpo.
Propriedades Principais:
| Propriedade | Descrição |
|---|---|
| Decisor | Pino de saída cujo valor determina a continuação do loop |
| Testado primeiro | Se verdadeiro, teste realizado antes da primeira execução do corpo |
| Partes de Configuração/Teste/Corpo | Sub-regiões para componentes de loop |
| Variáveis de Loop | Valores mantidos entre iterações |
Região de Expansão

Definição: Uma região estritamente aninhada com entradas/saídas explícitas (modelada como ExpansionNodes). Executada uma vez para cada elemento na coleção de entrada.
Modos de Execução:
-
paralelo: Todas as interações são independentes
-
iterativo: As interações ocorrem na ordem dos elementos
-
fluxo: Um fluxo de valores flui para uma única execução
Nó de Expansão

Definição: Um nó de objeto usado para indicar fluxo através da fronteira de uma região de expansão. As coleções de entrada são divididas em elementos individuais dentro dela; as saídas combinam os elementos de volta em coleções.
Nó de Sequência

Definição: Um nó de atividade estruturado que executa suas açõesem ordem.
Nó de Atividade Estruturado

Definição: Um nó container que agrupa outros nós de atividade com semântica de execução definida.
Construções Avançadas
Região de Atividade Interrompível

Definição: Um grupo de atividade que suporta a terminação de tokens fluindo em partes de uma atividade. Quando um token sai por meio de arestas interrompedoras, todos os tokens e comportamentos na região são terminados.
Manipulador de Exceção

Definição: Especifica um corpo a ser executado se uma exceção especificada ocorrer durante a execução do nó protegido.
Propriedades Principais:
| Propriedade | Descrição |
|---|---|
| Nó protegido | Nó protegido pelo manipulador |
| Corpo do manipulador | Nó executado se o manipulador capturar a exceção |
| Entrada de exceção | Nó de objeto que recebe o token de exceção |
| Tipos de Exceção | Classificadores de exceções que o manipulador captura |
Elementos de Apoio
Linha de Nado

Definição: Usado para particionar filhos em um diagrama de atividade, tipicamente para mostrar responsabilidade por ator, departamento ou componente do sistema.
Propriedades:
-
Partições Horizontais
-
Partições Verticais
Nota

Definição: Uma observação que permite anexar comentários a elementos. Não possui força semântica, mas pode conter informações úteis de modelagem.
Restrição

Definição: Uma condição ou restrição expressa em linguagem natural ou linguagem legível por máquina para declarar o significado de um elemento.
Propriedades:
| Propriedade | Descrição |
|---|---|
| Nome | Nome opcional da restrição |
| Expressão | Condição que deve ser verdadeira para satisfação |
Diagramas UML Relacionados
Diagramas de atividade funcionam melhor quando usados juntamente com outros tipos de diagramas UML:
| Tipo de Diagrama | Propósito | Link |
|---|---|---|
| Diagrama de Caso de Uso | Capturar requisitos funcionais e interações de atores | Visualizar |
| Diagrama de Classe | Modelar estrutura estática e relações | Visualizar |
| Diagrama de Sequência | Mostrar interações de objetos ao longo do tempo | Visualizar |
| Diagrama de Comunicação | Enfatizar relações entre objetos nas interações | Visualizar |
| Diagrama de Máquina de Estados | Modelar estados e transições de objetos | Visualizar |
| Diagrama de Componentes | Mostrar componentes físicos e dependências | Visualização |
| Diagrama de Implantação | Modelar a topologia de hardware e a implantação de artefatos | Visualização |
| Diagrama de Pacotes | Organizar elementos do modelo em namespaces | Visualização |
| Diagrama de Objetos | Mostrar instâncias e links em um determinado momento | Visualização |
| Diagrama de Estrutura Composta | Mostrar a estrutura interna dos classificadores | Visualização |
| Diagrama de Temporização | Focar em restrições de tempo e mudanças de estado | Visualização |
| Diagrama de Visão Geral de Interação | Combinar diagramas de atividade e de interação | Visualização |
Referências
- Diagrama de Atividade – Galeria UML do Visual Paradigm: Referência abrangente para notações, definições e propriedades do Diagrama de Atividade UML na documentação oficial do Visual Paradigm.
- Diagrama de Caso de Uso – Galeria UML do Visual Paradigm: Guia para modelar requisitos funcionais e interações entre atores e sistema usando diagramas de Caso de Uso.
- Diagrama de Classes – Galeria UML do Visual Paradigm: Referência para modelar estrutura estática, classes, atributos, operações e relacionamentos.
- Diagrama de Sequência – Galeria UML do Visual Paradigm: Documentação para modelar interações ordenadas no tempo entre objetos e linhas de vida.
- Diagrama de Comunicação – Galeria UML do Visual Paradigm: Guia para diagramas de Colaboração/Comunicação com foco em links de objetos e fluxo de mensagens.
- Diagrama de Máquina de Estados – Galeria UML do Visual Paradigm: Referência para modelar estados, transições, eventos e ações de objetos individuais.
- Diagrama de Componente – Galeria UML do Visual Paradigm: Documentação para modelar componentes físicos, interfaces e dependências em um sistema.
- Diagrama de Implantação – Galeria UML do Visual Paradigm: Guia para modelar nós de hardware, artefatos e configurações de implantação.
- Diagrama de Pacote – Galeria UML do Visual Paradigm: Referência para organizar elementos do modelo em pacotes e gerenciar namespaces.
- Diagrama de Objeto – Galeria UML do Visual Paradigm: Guia para modelar instâncias de classes e seus links em um momento específico.
- Diagrama de Estrutura Composta – Galeria UML do Visual Paradigm: Documentação para mostrar a estrutura interna, partes, portas e conectores de classificadores.
- Diagrama de Temporização – Galeria UML do Visual Paradigm: Referência para modelar restrições baseadas no tempo e mudanças de estado ao longo de linhas de vida.
- Diagrama de Visão Geral de Interação – Galeria UML do Visual Paradigm: Guia para combinar controle de fluxo de diagramas de atividade com fragmentos de diagramas de interação.
- Grupo de Gestão de Objetos – Especificação UML: Fonte oficial para padrões e especificações da Linguagem de Modelagem Unificada.
- Linguagem de Modelagem Unificada (OMG UML) Superestrutura v2.2: Especificação fundamental que define a semântica da notação UML, citada para definições de notação neste guia.
ℹ️ A definição das notações é citada de Grupo de Gestão de Objetos Linguagem de Modelagem Unificada (OMG UML) Superestrutura Versão 2.2 e versões anteriores (para notações que já não existem mais na especificação mais recente).
Este guia destina-se a arquitetos de software, analistas de negócios e designers de sistemas que buscam modelar fluxos de trabalho e processos de negócios complexos usando Diagramas de Atividades UML. Todos os ativos visuais e definições são provenientes da Galeria UML oficial do Visual Paradigm.











