Questão de Engenharia de Software — UML — FUNDATEC 2023
Engenharia de Software›UML
Código
qq891247
Banca
FUNDATEC
Órgão
GHC-RS
Ano
2023
Nível
Superior
Cargo
Analista de Sistemas
A Figura 1, abaixo, apresenta um diagrama da UML (Unified Modeling Language).Que diagrama é esse?
ADiagrama de objetos.
BDiagrama de estados.
CDiagrama de atividades.
DDiagrama de sequência.
EDiagrama de comunicação.
Revelar gabarito e comentário▾
GabaritoE — Diagrama de comunicação.
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”.
Diagramas da UML: comunicação × sequência
Gabarito: letra E. O diagrama apresentado é o diagrama de comunicação (antigo diagrama de colaboração), que enfatiza a organização estrutural dos objetos e os vínculos entre eles, numerando as mensagens trocadas. A alternativa E é a correta, pois o diagrama de comunicação é um diagrama de interação que destaca as associações entre os objetos, enquanto o diagrama de sequência (letra D) enfatiza a ordem temporal das mensagens.
A UML (Unified Modeling Language) é uma linguagem de modelagem padronizada pela OMG (Object Management Group) e pela ISO/IEC 19501, que fornece uma notação padrão para representar sistemas de software. Seus diagramas são divididos em três grupos principais: diagramas de estrutura, diagramas de comportamento e diagramas de interação. Os diagramas de interação são um subconjunto dos diagramas de comportamento e incluem o diagrama de sequência, o diagrama de comunicação, o diagrama de tempo e o diagrama de visão geral de interação. O diagrama de comunicação e o diagrama de sequência são semanticamente equivalentes — ambos representam as mensagens trocadas entre objetos — mas diferem no foco: o diagrama de sequência organiza as mensagens ao longo de uma linha do tempo (eixo vertical), enquanto o diagrama de comunicação organiza os objetos no espaço, mostrando as ligações entre eles e numerando as mensagens para indicar a ordem.
Na prática, o diagrama de comunicação é desenhado como um grafo: cada objeto é representado por um retângulo (com nome e classe, sublinhado), e as linhas entre os retângulos representam as associações (links) entre os objetos. As mensagens são setas sobre essas linhas, numeradas sequencialmente (1, 2, 3...) para indicar a ordem de envio. Por exemplo, em um sistema de caixa eletrônico, o objeto Cliente envia a mensagem 1: inserirCartao() para o objeto CaixaEletronico, que por sua vez envia 2: validarCartao() para o objeto Banco, e assim por diante. A numeração é a chave para reconstruir a sequência temporal, mas o destaque visual está nas conexões estruturais.
A distinção que importa é entre diagrama de comunicação e diagrama de sequência: ambos são diagramas de interação e mostram as mesmas mensagens, mas o primeiro prioriza a estrutura de colaboração (quem está ligado a quem) e o segundo prioriza a ordem temporal (quando cada mensagem ocorre). O diagrama de sequência usa linhas de vida verticais tracejadas e setas horizontais, com a dimensão vertical representando o tempo; o diagrama de comunicação usa um layout livre com linhas de associação e numeração das mensagens. A banca explora exatamente essa confusão: ao mostrar um diagrama com objetos e mensagens numeradas, o candidato pode pensar em sequência, mas a ausência de linha do tempo e a presença de vínculos explícitos indicam comunicação.
A pegadinha desta questão é a semelhança entre os dois diagramas de interação. O diagrama de comunicação é frequentemente chamado de "diagrama de colaboração" em versões antigas da UML, e a alternativa E é a única que corresponde à notação apresentada. As demais alternativas (objetos, estados, atividades, sequência) são diagramas UML válidos, mas não correspondem à figura. Guarde a fronteira entre comunicação e sequência: comunicação = foco nas ligações + numeração; sequência = foco no tempo + linhas de vida. É exatamente nessa fronteira que as alternativas se dividem.
Diagramas de interação (UML)
1Sequência
Foco na ordem temporal
Linhas de vida verticais
Eixo vertical = tempo
2Comunicação (colaboração)
Foco nas ligações estruturais
Objetos + associações
Mensagens numeradas (1, 2, 3...)
LEVEL · soulevel.com.br
Alternativa A — ❌ Incorreta
O diagrama de objetos é um diagrama estrutural que mostra uma "fotografia" do sistema em um determinado momento, exibindo instâncias de classes (objetos) e seus valores de atributos, sem representar mensagens ou interações. A figura apresenta objetos e mensagens numeradas, o que caracteriza um diagrama de interação, não um diagrama estrutural. O diagrama de objetos não possui setas de mensagem nem numeração de fluxo.
Alternativa B — ❌ Incorreta
O diagrama de estados (ou máquina de estados) é um diagrama comportamental que modela o ciclo de vida de um objeto, mostrando estados, transições, eventos e ações. Ele é composto por estados (retângulos arredondados), transições (setas com rótulos de eventos) e um estado inicial/final. A figura não apresenta estados nem transições, mas sim objetos e mensagens, portanto não é um diagrama de estados.
Alternativa C — ❌ Incorreta
O diagrama de atividades é um diagrama comportamental que modela o fluxo de controle ou de dados entre atividades, utilizando símbolos como retângulos arredondados (atividades), losangos (decisões), barras de sincronização e raias (swimlanes). A figura não apresenta esses elementos, mas sim objetos e mensagens numeradas, o que a descarta.
Alternativa D — ❌ Incorreta
O diagrama de sequência é um diagrama de interação que enfatiza a ordem temporal das mensagens, utilizando linhas de vida verticais tracejadas e setas horizontais. A figura, embora mostre mensagens, não apresenta linhas de vida nem uma dimensão temporal explícita; em vez disso, destaca as ligações estruturais entre os objetos, com mensagens numeradas. Essa é a característica do diagrama de comunicação, não do de sequência.
Alternativa E — ✅ Correta ⟵ GABARITO
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, enfatizando a organização estrutural — ou seja, as associações (links) entre os objetos. As mensagens são representadas por setas sobre as linhas de associação, numeradas para indicar a ordem de envio. A figura apresenta exatamente essa notação: objetos (retângulos), linhas de associação e mensagens numeradas, sem linha do tempo. Portanto, a alternativa E é a correta.