Questão de Engenharia de Software — Diagrama de Classes — FGV 2024
Engenharia de Software›Diagrama de Classes
Código
fg075971
Banca
FGV
Órgão
AL-TO
Ano
2024
Nível
Superior
Cargo
Analista Legislativo - Desenvolvimento de Sistema
A partir da análise do seguinte diagrama de classes da UMLé correto auferir que
Aa classe B atua como classe associativa entre as classes A e C.
Bo relacionamento entre as classes A e B é do tipo associação qualificada.
Co relacionamento entre B e C é representado por uma dependência estereotipada.
Dos objetos da classe B herdam as características da classe C.
Eum objeto da classe B está vinculado a exatamente um objeto da classe A
Revelar gabarito e comentário▾
GabaritoE — um objeto da classe B está vinculado a exatamente um objeto da classe A
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”.
Diagrama de Classes UML: Associações e Multiplicidade
Gabarito: letra E. A alternativa correta afirma que um objeto da classe B está vinculado a exatamente um objeto da classe A, o que reflete a multiplicidade "1" na extremidade da associação próxima à classe A. As demais alternativas descrevem incorretamente os relacionamentos do diagrama, confundindo associação com classe associativa, associação qualificada, dependência e herança.
O diagrama de classes é o principal diagrama estrutural da UML, utilizado para representar a estrutura estática do sistema: as classes, seus atributos, operações e, principalmente, os relacionamentos entre elas. Os relacionamentos podem ser de associação (incluindo agregação e composição), generalização (herança) e dependência. A associação é um vínculo estrutural que indica que objetos de uma classe se conectam a objetos de outra, e a multiplicidade define quantos objetos de cada lado participam da relação. Por exemplo, em uma associação entre Pedido e Item, a multiplicidade "1" em Pedido e "1..*" em Item indica que um pedido contém um ou mais itens, e cada item pertence a exatamente um pedido.
A multiplicidade é um dos elementos mais cobrados em questões de diagrama de classes, pois define a cardinalidade da relação. Os valores comuns são: "1" (exatamente um), "0..1" (zero ou um), "" (zero ou muitos) e "1.." (um ou muitos). A leitura correta da multiplicidade é feita da perspectiva da classe oposta: a multiplicidade "1" escrita ao lado da classe A significa que, para cada objeto de B, existe exatamente um objeto de A vinculado. Já a multiplicidade "*" ao lado de B indica que um objeto de A pode estar vinculado a vários objetos de B.
A banca explora a confusão entre os diferentes tipos de relacionamento e os elementos da notação. A classe associativa é uma classe que surge de uma associação muitos-para-muitos e possui atributos próprios da relação. A associação qualificada utiliza um qualificador (um atributo) para reduzir a multiplicidade de uma associação. A dependência é um relacionamento mais fraco, indicado por uma seta tracejada, que mostra que uma classe usa outra. A herança (generalização) é representada por uma seta com triângulo vazado, indicando que uma classe é um tipo de outra. É fundamental distinguir esses elementos para interpretar corretamente o diagrama.
A pegadinha desta questão está em identificar corretamente o tipo de relacionamento e a multiplicidade representados. O candidato pode confundir a associação simples com uma classe associativa, ou interpretar erroneamente a direção da multiplicidade. A alternativa E é a única que descreve corretamente a cardinalidade da associação entre A e B, afirmando que um objeto de B está vinculado a exatamente um objeto de A.
Critério
A (classe associativa)
B (associação qualificada)
C (dependência estereotipada)
D (herança)
E (multiplicidade 1)
Notação UML exigida
Linha tracejada da classe à associação
Retângulo qualificador na extremidade
Seta tracejada + «estereótipo»
Seta com triângulo vazado
Número "1" na extremidade da associação
Presente no diagrama?
Não
Não
Não
Não
Sim
Tipo de relacionamento real
Associação simples
Associação simples
Associação simples
Associação simples
Associação simples
Veredito
❌ Incorreta
❌ Incorreta
❌ Incorreta
❌ Incorreta
✅ Correta
Alternativa A — ❌ Incorreta
A alternativa afirma que a classe B atua como classe associativa entre A e C. Uma classe associativa é uma classe que está ligada a uma associação, possuindo atributos que pertencem à própria relação, e é representada por uma linha tracejada ligando a classe à associação. No diagrama, B é uma classe comum que participa de associações com A e C, mas não é uma classe associativa. A banca tenta confundir o candidato ao sugerir que B, por estar entre A e C, seria uma classe associativa, mas isso não é verdade.
Alternativa B — ❌ Incorreta
A alternativa afirma que o relacionamento entre A e B é uma associação qualificada. Uma associação qualificada é representada por um pequeno retângulo (o qualificador) na extremidade da associação, que contém um atributo que restringe a multiplicidade. No diagrama, a associação entre A e B é uma associação simples, sem qualificador. A banca tenta confundir o candidato ao sugerir que a presença de uma multiplicidade específica caracteriza uma associação qualificada, o que não é correto.
Alternativa C — ❌ Incorreta
A alternativa afirma que o relacionamento entre B e C é uma dependência estereotipada. Uma dependência é representada por uma seta tracejada, e um estereótipo é indicado entre «» (ex.: «use»). No diagrama, o relacionamento entre B e C é uma associação, representada por uma linha contínua, e não há indicação de estereótipo. A banca tenta confundir o candidato ao sugerir que a associação é uma dependência, o que é um erro conceitual.
Alternativa D — ❌ Incorreta
A alternativa afirma que os objetos da classe B herdam as características da classe C. Herança (generalização) é representada por uma seta com triângulo vazado, apontando da subclasse para a superclasse. No diagrama, não há esse tipo de relacionamento entre B e C; há uma associação. A banca tenta confundir o candidato ao sugerir que uma associação é uma herança, o que é um erro conceitual.
Alternativa E — ✅ Correta ⟵ GABARITO
A alternativa afirma que um objeto da classe B está vinculado a exatamente um objeto da classe A. Isso corresponde à multiplicidade "1" na extremidade da associação próxima à classe A. A leitura correta da multiplicidade é: para cada objeto de B, existe exatamente um objeto de A. Esta é a interpretação correta da cardinalidade da associação entre A e B, e é a única alternativa que descreve corretamente o diagrama.