Pular para o conteúdo principal

Questão de Engenharia de Software — UML — FGV 2023

Engenharia de SoftwareUML
Código
fg161210
Banca
FGV
Órgão
DPE RS
Ano
2023
Cargo
Ana ( )
Observe o seguinte diagrama elaborado por Martin para o desenvolvimento de um programa de conversão de temperatura. O diagrama UML utilizado por Martin é o:Imagem associada para resolução da questão
  1. AClasses;
  2. BAtividades;
  3. CSequência;
  4. DCaso de Uso;
  5. EComponentes.
Revelar gabarito e comentário

GabaritoB — Atividades;

Comentário gerado por IA. É um apoio ao estudo, ancorado em fontes, mas pode conter imprecisões — confira sempre na fonte oficial (lei, súmula, edital e gabarito da banca). Encontrou um erro? Use “Reportar”.

UML: Diagrama de Atividades

Gabarito: letra B. O diagrama elaborado por Martin para o programa de conversão de temperatura é o Diagrama de Atividades, pois ele modela o fluxo de controle e a sequência de passos (ações) do processo, com nós de decisão e possíveis bifurcações/uniões — características típicas desse tipo de diagrama comportamental da UML.

O Diagrama de Atividades é um dos diagramas comportamentais da UML, usado para representar o fluxo de trabalho (workflow) de um processo, algoritmo ou caso de uso. Ele mostra a sequência de atividades, as decisões (losangos), as bifurcações e uniões de fluxo (barras de sincronização), e pode incluir raias (swimlanes) para indicar quem executa cada atividade. No caso de um programa de conversão de temperatura, o diagrama descreve o passo a passo: ler a temperatura, aplicar a fórmula de conversão, exibir o resultado — exatamente o que um fluxograma de processo faz, mas com a notação padronizada da UML.

A UML 2.5.1 define 13 tipos de diagramas, divididos em duas grandes categorias: estruturais (estáticos) e comportamentais (dinâmicos). O Diagrama de Atividades pertence à categoria comportamental, assim como o Diagrama de Sequência, o de Casos de Uso, o de Estados e o de Comunicação. Já os diagramas de Classes, Componentes, Objetos, Implantação e Estrutura Composta são estruturais. Essa distinção é fundamental para resolver a questão: o diagrama de Martin mostra um fluxo de execução, algo dinâmico, o que elimina de imediato as alternativas que apontam diagramas estruturais.

Na prática, o Diagrama de Atividades é frequentemente comparado a um fluxograma tradicional, mas com elementos próprios da UML, como os nós de decisão (losango com uma entrada e múltiplas saídas rotuladas com condições), os nós de bifurcação/união (barras grossas que dividem ou juntam fluxos paralelos) e os nós inicial (círculo preenchido) e final (círculo com anel). No programa de conversão de temperatura, o fluxo seria algo como: iniciar → ler temperatura em Celsius → aplicar fórmula (C × 9/5 + 32) → exibir resultado em Fahrenheit → fim. Se houvesse uma decisão, como "o usuário quer converter para Fahrenheit ou Kelvin?", apareceria um losango com duas saídas condicionais.

A pegadinha da banca está em confundir o Diagrama de Atividades com o Diagrama de Sequência ou com o Diagrama de Classes. O Diagrama de Sequência mostra a interação temporal entre objetos, com linhas de vida e mensagens trocadas em ordem cronológica — não é um fluxo de atividades de um único processo. O Diagrama de Classes, por sua vez, é estrutural e mostra classes, atributos, métodos e relacionamentos — não há fluxo de execução. O Diagrama de Casos de Uso mostra as funcionalidades do sistema sob a perspectiva do ator, sem detalhar a sequência interna. O Diagrama de Componentes mostra a organização dos componentes de software e suas dependências.

Guarde o critério decisivo: se o diagrama mostra uma sequência de passos/ações com decisões e fluxo de controle, é um Diagrama de Atividades; se mostra troca de mensagens entre objetos ao longo do tempo, é Sequência; se mostra classes e relacionamentos, é Classes. É exatamente nessa fronteira que as alternativas se dividem.

Alternativa A — ❌ Incorreta

O Diagrama de Classes é um diagrama estrutural que modela classes, atributos, métodos e relacionamentos (associação, herança, composição). Ele não representa fluxo de execução nem sequência de passos. O diagrama de Martin, por mostrar um processo de conversão com etapas, não pode ser um diagrama de classes.

Alternativa B — ✅ Correta ⟵ GABARITO

O Diagrama de Atividades é o diagrama comportamental que modela o fluxo de controle de um processo, algoritmo ou caso de uso. Ele representa a sequência de atividades, decisões e possíveis fluxos paralelos. O programa de conversão de temperatura, com suas etapas sequenciais (ler, converter, exibir), é exatamente o tipo de processo que esse diagrama descreve.

Alternativa C — ❌ Incorreta

O Diagrama de Sequência mostra a interação temporal entre objetos, com linhas de vida verticais e mensagens horizontais em ordem cronológica. Ele é usado para detalhar um cenário específico de comunicação entre objetos, não para representar o fluxo de atividades de um processo isolado. O diagrama de Martin não mostra objetos trocando mensagens.

Alternativa D — ❌ Incorreta

O Diagrama de Casos de Uso mostra as funcionalidades do sistema do ponto de vista do ator (usuário ou sistema externo), com os casos de uso dentro de uma fronteira e os atores fora dela. Ele não detalha a sequência interna de passos de um processo. O diagrama de Martin, com seu fluxo de conversão, não é um caso de uso.

Alternativa E — ❌ Incorreta

O Diagrama de Componentes é um diagrama estrutural que mostra a organização dos componentes de software, suas interfaces e dependências. Ele descreve a arquitetura física do sistema, não o fluxo de execução de um processo. O diagrama de Martin, por representar um algoritmo de conversão, não é um diagrama de componentes.

NÃO CAIA NESSA!

A banca explora a confusão entre diagramas comportamentais e estruturais. O candidato que vê um fluxo com passos e decisões pode pensar em "sequência", mas o Diagrama de Sequência exige objetos e mensagens — não é um fluxograma de processo. A palavra-chave é fluxo de atividades: se o diagrama mostra ações em sequência com decisões, é Atividades. Treine o reconhecimento visual: losango = decisão, barra grossa = paralelismo, círculo preenchido = início.

PEGA ESSA DICA!

Para diferenciar rapidamente na prova, pergunte-se: "o diagrama mostra o quê?" — se mostra classes e relacionamentos → Classes; se mostra objetos trocando mensagens no tempo → Sequência; se mostra atores e funcionalidades → Casos de Uso; se mostra componentes e interfaces → Componentes; se mostra um fluxo de passos com decisões → Atividades. Essa pergunta elimina as alternativas erradas em segundos.

Gabarito: letra B

Link permanente: /questoes/fg161210