Questão de Engenharia de Software — Diagrama de Classes — FGV 2024
Engenharia de Software›Diagrama de Classes
Código
fg098205
Banca
FGV
Órgão
TJ-AP
Ano
2024
Nível
Superior
Cargo
Apoio Especializado - Tecnologia da Informação - Desenvolvimento de Sistemas
Observe o seguinte Diagrama de Classes da UML 2.5.1.O tipo de relacionamento entre as classes representado no diagrama é a:
AAssociação;
BComposição;
CDependência;
DAgregação;
EGeneralização.
Revelar gabarito e comentário▾
GabaritoE — Generalizaçã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”.
Relacionamentos no Diagrama de Classes UML
Gabarito: letra E. O relacionamento representado no diagrama é a Generalização (herança), que na UML é desenhada como uma seta com ponta triangular vazada apontando da classe filha para a classe pai. As demais alternativas (associação, composição, dependência e agregação) possuem notações distintas, e a banca explora exatamente a confusão entre esses símbolos.
O Diagrama de Classes é um diagrama estrutural da UML que mostra as classes do sistema, seus atributos, operações e os relacionamentos entre elas. Os relacionamentos podem ser de associação (incluindo agregação e composição), dependência, generalização e realização. Cada um tem uma notação gráfica própria, e a questão pede que o candidato identifique o tipo de relacionamento a partir do desenho.
A generalização (também chamada de herança) é um relacionamento entre uma classe mais geral (superclasse) e uma classe mais específica (subclasse). A subclasse herda atributos e métodos da superclasse, podendo adicionar novos ou sobrescrever os existentes. Na UML, a generalização é representada por uma linha com uma seta triangular vazia (não preenchida) na ponta, apontando para a superclasse. Esse é o símbolo que aparece no diagrama da questão.
Para diferenciar os relacionamentos, é essencial conhecer as notações:
Relacionamento
Notação UML
Significado
Associação
Linha simples (com ou sem seta)
Conecta classes que se relacionam estruturalmente
Agregação
Linha com losango vazio na ponta
Relação "tem-um" em que a parte pode existir sem o todo
Composição
Linha com losango preenchido na ponta
Relação "tem-um" em que a parte não existe sem o todo
Dependência
Linha tracejada com seta
Uma classe usa os serviços de outra
Generalização
Linha com seta triangular vazia
Herança: subclasse é um tipo de superclasse
A pegadinha da banca está em confundir a seta triangular da generalização com o losango da agregação/composição ou com a seta simples da associação. No diagrama, a seta triangular vazia indica claramente generalização.
Alternativa A — ❌ Incorreta
A associação é representada por uma linha simples (sem losango e sem seta triangular). Ela indica que as classes estão conectadas, mas sem relação de herança ou contenção. No diagrama, a seta triangular vazia não corresponde à associação.
Alternativa B — ❌ Incorreta
A composição é representada por uma linha com losango preenchido na ponta, indicando que a parte não pode existir sem o todo (ex.: Pedido e ItemPedido). O diagrama não apresenta losango preenchido, portanto não é composição.
Alternativa C — ❌ Incorreta
A dependência é representada por uma linha tracejada com seta simples, indicando que uma classe usa os serviços de outra (ex.: uma classe que recebe um objeto como parâmetro). O diagrama apresenta linha contínua com seta triangular, não tracejada.
Alternativa D — ❌ Incorreta
A agregação é representada por uma linha com losango vazio na ponta, indicando que a parte pode existir sem o todo (ex.: Time e Jogador). O diagrama não apresenta losango vazio, portanto não é agregação.
Alternativa E — ✅ Correta ⟵ GABARITO
A generalização é representada por uma linha contínua com seta triangular vazia apontando para a superclasse. Esse é exatamente o símbolo presente no diagrama, indicando que uma classe é especialização da outra (herança).
NÃO CAIA NESSA!
A banca adora trocar os símbolos: a seta triangular da generalização é confundida com o losango da agregação/composição, e a linha tracejada da dependência é confundida com a linha contínua da associação. Decore a notação de cada um e você elimina as alternativas erradas rapidamente.
PEGA ESSA DICA!
Na prova, ao ver uma seta triangular vazia, lembre-se: é herança/generalização. Losango vazio = agregação; losango preenchido = composição; linha tracejada = dependência; linha simples = associação. Monte uma tabela mental com esses símbolos e resolva qualquer questão do tipo.