Diagrama de Atividades UML
Gabarito: letra D. O diagrama apresentado, que descreve as etapas de confecção de um bolo, é um diagrama de atividades da UML, pois modela o fluxo de controle entre ações, similar a um fluxograma, com possibilidade de fluxos concorrentes (fork/join). A UML 2.5 classifica os diagramas em estruturais e comportamentais, e o diagrama de atividades é um diagrama comportamental.
O diagrama de atividades é um dos diagramas comportamentais da UML, utilizado para modelar o fluxo de trabalho ou processo de negócio, mostrando a sequência de atividades, decisões, e fluxos paralelos. Ele é essencialmente um gráfico de fluxo, enfatizando o fluxo de controle de uma atividade para outra. No exemplo da confecção de um bolo, o diagrama mostra etapas como procurar a receita, medir e misturar ingredientes, pré-aquecer o forno, e assar, com possíveis forks (bifurcações) para atividades concorrentes e joins (junções) para sincronização.
A UML 2.5 define 14 tipos de diagramas, divididos em duas categorias: diagramas estruturais (estáticos) e diagramas comportamentais (dinâmicos). Os diagramas comportamentais incluem: caso de uso, atividades, máquina de estados, sequência, comunicação, visão geral de interação e tempo. Os diagramas estruturais incluem: classes, objetos, componentes, implantação, pacotes, estrutura composta e perfil. O diagrama de atividades é um diagrama comportamental, pois representa o comportamento dinâmico do sistema.
A principal característica que identifica o diagrama de atividades é a presença de nós de ação (retângulos arredondados), setas de fluxo de controle, nós inicial e final, e elementos de decisão (losangos), fork e join (barras de sincronização). No diagrama de confecção de bolo, vemos claramente essas notações, indicando o fluxo de atividades.
A pegadinha da questão está em confundir o diagrama de atividades com outros tipos de diagramas, como o diagrama de estados ou o diagrama de sequência. O diagrama de estados modela o ciclo de vida de um objeto, com estados e transições, enquanto o diagrama de atividades modela o fluxo de processos. O diagrama de sequência, por sua vez, foca na troca de mensagens entre objetos ao longo do tempo. A banca explora essa confusão, oferecendo alternativas como "estado" e "transição".
Guarde a distinção: diagrama de atividades = fluxo de trabalho/processo; diagrama de estados = ciclo de vida de um objeto; diagrama de sequência = interação temporal entre objetos. É exatamente essa fronteira que separa as alternativas.
Alternativa A — ❌ Incorreta
"Fase" não é um tipo de diagrama UML. Fase é um conceito de processo de desenvolvimento (como fases do ciclo de vida), não um diagrama. A UML não possui um diagrama chamado "fase".
Alternativa B — ❌ Incorreta
O diagrama de estados (ou máquina de estados) modela o ciclo de vida de um objeto, mostrando os estados possíveis e as transições entre eles, geralmente com eventos que disparam as transições. No diagrama de confecção de bolo, não há estados de um objeto, mas sim um fluxo de atividades. A confusão é comum, pois ambos usam retângulos arredondados e setas, mas o diagrama de estados tem um foco diferente: estados e eventos, não atividades e fluxo de controle.
Alternativa C — ❌ Incorreta
"Transição" não é um tipo de diagrama UML. Transição é um elemento de notação presente em diagramas de estados e de atividades (as setas que conectam os nós). Não existe um diagrama chamado "transição".
Alternativa D — ✅ Correta ⟵ GABARITO
O diagrama de atividades é exatamente o que a figura representa: um fluxo de controle entre ações, mostrando as etapas de um processo (confecção de bolo). Ele é um diagrama comportamental da UML, similar a um fluxograma, com suporte a fluxos concorrentes (fork/join). A descrição do diagrama de atividades na UML 2.5 confirma que ele é usado para modelar processos de negócio, workflows e algoritmos.
Alternativa E — ❌ Incorreta
O diagrama de comunicação (também chamado de diagrama de colaboração) é um diagrama de interação que mostra as mensagens trocadas entre objetos, com foco nas relações estruturais entre eles. Ele é diferente do diagrama de sequência, mas ambos modelam interações entre objetos, não fluxos de atividades. No diagrama de confecção de bolo, não há objetos trocando mensagens, apenas atividades sequenciais.
Gabarito: letra D