Uma universidade deseja implementar um sistema de controle d...

Próximas questões
Com base no mesmo assunto
Q1845292 Engenharia de Software
Uma universidade deseja implementar um sistema de controle de acesso às salas do seu campus. Esse sistema deve levar em consideração o seguinte cenário: • Apenas três categorias de pessoas terão acesso às salas: professores, estudantes e funcionários; • Alguns funcionários podem ser alunos da universidade; • Alguns alunos podem ser professores da universidade. A partir desse cenário, deve ser elaborado um modelo conceitual de classe UML, que contenha uma generalização. Qual generalização é compatível com o cenário acima?
Alternativas

Comentários

Veja os comentários dos nossos alunos

"Apenas três categorias de pessoas terão acesso às salas: professores, estudantes e funcionários;"

  • Precisamos de 1 pessoa e 3 categorias. Elimina A, B e E.
  • O "Apenas" determina que minha generalização é completa, ou seja, não existe outra categoria além dessas 3. Elimina D

"Alguns funcionários podem ser alunos da universidade. Alguns alunos podem ser professores da universidade."

  • Se pode ser mais de um ao mesmo tempo, então a generalização é sobreposta (overlapping), confirmando o gabarito

GAB C

::::::::::::Introdução::::::::::::

Vamos conversar sobre alguns conceitos que a questão nos trouxe.

Generalização/especialização

  • Generalização: o que tem mais em comum. Exemplo: nas clases "homem" e "mulher" pode haver uma classe "pessoa" que reúne coisas em comum e a partir daí "homem" recebe o que precisa e a "mulher" também (isso poupa tempo, pois permite o reaproveitamento). O que o homem e a mulher recebem pode ser chamado de herança. Em suma: generalização é o mais geral, especialização o que herda do geral.

Só que aí tem um porém, na UML é possível definir o que vai receber. Por exemplo: pode-se receber exatamente o especificado ou pode-se mudar. As restrições entram nisso.

Restrições das heranças

  • Imcompleta: a especialização é livre para herdar o que quiser;
  • Completa: não pode ser outra coisa. Vamos supor em uma interpretação de um filme pode ser: ator ou atriz.
  • Disjunta (disjunct): não tem herança multipla;
  • Sobreposta (overplanning): há polimorfismo. Isso quer dizer que, se além de herdar, a classe se comportar de uma meneira diferente do que foi chamada, será considerado um método polimórfico. Exemplo: dentro da classe veículos que andam sobre rodas e sobre a água, posso ter um carro anfíbio (anfíbio é polimórfico).

::::::::::::Vamos analisar a questão::::::::::::

  • Enunciado: "APENAS três categorias de pessoas terão acesso às salas". Comentário: ao analisar os desenhos, o que é hardado não tem, por assim dizer, liberdade para escolher o que quiser, por exemplo: não posso criar uma classe "Visitante" herdada de "pessoa". Logo, eliminamos as restrições "incompletas": E, D;

  • Enunciado: "Alguns alunos podem ser professores da universidade". Comentário: veja que um aluno além de ser aluno, pode ser professor. Ele herda e faz outra coisa além de seguir sua "assinatura". Esse aluno tem muitas formas (bom bril). Logo, eliminamos as restrições "disjunct": D, E

  • Fabiano, qual é o erro das letras A e B? Simples, lembra na primeira parte que dizemos "APENAS TRÊS CATEGORIAS". Se você fosse engenheiro de requisitos e fizesse o diagrama das letras A e B, estaria em mais lençóis, por quê? Está faltando uma classe. Na letra A, "Funcionário" e na letra B "Professor".

>>Em frente e enfrente>>

Pode sobrepor: Elimina C) e D)

{complete}: Elimina A) e B)

Gab. C

Sobreposição (overlapping): caso em que um objeto da superclasse pode pertencer simultaneamente a mais do que uma subclasse.

Disjuntiva (disjoint): superclasses podem se especializar em apenas uma subclasse.

Uma generalização está completa se já foram especificadas todas as sub classes até aquele ponto e está incompleta se existir a possibilidade de uma outra especialização, caso em que um objeto da superclasse pode não pertencer a nenhuma das subclasses 

Não deveria ser Incomplete? A questão não diz que estes são os únicos tipos de pessoa do sistema, apenas diz que são os únicos que terão acesso às catracas. Acredito que caberia recurso.

Dito isso, por eliminação a única que dava pra marcar msm é a [C] pois ela é a única que tem 3 subclasses e é Overlapping.

Clique para visualizar este comentário

Visualize os comentários desta questão clicando no botão abaixo