Exercícios: Aula 10 - Diagrama de Atividades 📝
Modele o fluxo de trabalho e a lógica de processos de negócio.
1. Fluxogramas com Superpoderes (Básico 1)
Contexto: O Diagrama de Atividades é frequentemente comparado ao fluxograma tradicional.
Pergunta: Liste duas funcionalidades que o Diagrama de Atividades possui e que o fluxograma comum não consegue representar bem.
2. Decisões e Uniões (Básico 2)
Contexto: O fluxo de uma atividade pode seguir caminhos diferentes conforme o cenário.
Pergunta: Qual o símbolo usado para um Nó de Decisão (if) e qual sua contraparte (Merge)?
3. Paralelismo (Intermediário 1)
Contexto: Sistemas modernos executam várias tarefas ao mesmo tempo.
Pergunta: Explique a função das barras pretas (Fork e Join) na modelagem de processos paralelos.
4. Zonas de Responsabilidade (Intermediário 2)
Contexto: Processos de checkout envolvem Cliente, Logística e Financeiro.
Pergunta: O que são Swimlanes (Raias) e como elas ajudam na identificação de gargalos de um processo?
5. Desafio: Modelagem de Fluxo Complexo (Desafio)
Contexto: Um processo de "Publicação de Post" requer: escrita -> revisão -> aprovado? (sim: publicar e notificar | não: voltar para escrita).
Pergunta: Desenhe a lógica (em Mermaid ou lista de passos) desse processo, garantindo que a publicação e a notificação ocorram de forma paralela usando Fork/Join.
---
📚 Gabarito e Soluções Comentadas
Gabarito Explicado
Respostas e explicações para os exercícios da **Aula 10**. --- ### ✅ 1. Atividade vs Fluxograma (Básico) **Resposta Sugerida:** O Diagrama de Atividades é uma evolução do fluxograma. Ele suporta modelagem de processos paralelos (concorrência) e partições de responsabilidade (swimlanes), o que o torna muito mais poderoso para sistemas complexos. --- ### ✅ 2. Fork e Join (Básico) **Resposta Sugerida:** * **Fork (Divisão):** Inicia múltiplos fluxos simultâneos (paralelismo). * **Join (União):** Sincroniza os fluxos, esperando que todos terminem para prosseguir. --- ### ✅ 3. Swimlanes / Raias (Intermediário) **Explicação:** As raias dividem as atividades por ator ou departamento. Isso permite visualizar não apenas "o que" é feito, mas "quem" é o responsável por cada tarefa no processo de negócio. --- ### ✅ 4. Sinais e Eventos (Intermediário) **Conceitos:** * **Sinal de Envio:** Retângulo com ponta de flecha (envia informação para fora). * **Sinal de Recebimento:** Retângulo com reentrância (aguarda evento externo). --- ### ✅ 5. Desafio: Processo de Checkout (Desafio) **Resolução Sugerida:**graph TD
Start(( )) --> Login[Validar Login]
Login --> Stock{Produto em Estoque?}
Stock -- Não --> Notify[Notificar Cliente]
Notify --> End(( ))
Stock -- Sim --> Fork{ }
Fork --> Pay[Processar Pagamento]
Fork --> Pack[Embalar Produto]
Pay --> Join{ }
Pack --> Join
Join --> Deliver[Enviar para Transportadora]
Deliver --> End ---