Pular para o conteúdo principal

Questão de Engenharia de Software — UML — FCC 2019

Engenharia de SoftwareUML
Código
fc052789
Banca
FCC
Órgão
AFAP
Ano
2019
Cargo
Analista de Fomento - Tecnologia da Informação
Um Analista de Informática está desenhando um Diagrama de Caso de Uso usando a notação padrão da UML 2.5 e modela os seguintes requisitos:Caso de Uso: Cadastrar Funcionário que:I. Exige um relacionamento incondicional com outro Caso de Uso denominado Validar Matricula.II. Possui um relacionamento com o Caso de Uso denominado Cadastrar via Web que é uma variação de Cadastrar Funcionário.III. Deverá se relacionar com o Caso de Uso denominado Help On-line, se o usuário operador solicitar ajuda (Help) mediante seleção dessa opção.Os requisitos especificados acima tipificam os respectivos relacionamentos entre Casos de Uso:
  1. AAssociação, Generalização e Especialização.
  2. BInclusão, Especialização e Exclusão.
  3. CInclusão, Generalização e Extensão.
  4. DExtensão, Exclusão e Associação.
  5. EGeneralização, Especialização e Extensão.
Revelar gabarito e comentário

GabaritoC — Inclusão, Generalização e Extensã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”.

Diagrama de Casos de Uso – Relacionamentos (UML 2.5)

Gabarito: letra C. A questão descreve três requisitos que mapeiam, respectivamente, os relacionamentos de inclusão (<<include>>), generalização (herança entre casos de uso) e extensão (<<extend>>). A sequência correta é Inclusão, Generalização e Extensão.

A FCC testa o conhecimento dos três principais tipos de relacionamento entre casos de uso na UML 2.5. Vamos analisar cada requisito:

  • I – “Exige um relacionamento incondicional com outro Caso de Uso denominado Validar Matricula.” → Relacionamento de inclusão (<<include>>): o caso de uso base sempre inclui o comportamento do caso de uso incluído. É obrigatório e não depende de condição.

  • II – “Possui um relacionamento com o Caso de Uso denominado Cadastrar via Web que é uma variação de Cadastrar Funcionário.” → Generalização (herança): um caso de uso especializado (filho) herda e pode estender ou substituir o comportamento do caso de uso geral (pai). Representado por seta com triângulo vazio.

  • III – “Deverá se relacionar com o Caso de Uso denominado Help On-line, se o usuário operador solicitar ajuda” → Extensão (<<extend>>): o caso de uso base pode ser estendido opcionalmente por um caso de uso de extensão, ativado sob uma condição (no exemplo, quando o usuário solicita ajuda).

Requisito

Descrição

Relacionamento UML

I

Relacionamento incondicional com "Validar Matrícula"

Inclusão (<<include>>)

II

"Cadastrar via Web" é uma variação de "Cadastrar Funcionário"

Generalização (herança)

III

Relaciona-se com "Help On-line" se o usuário solicitar ajuda

Extensão (<<extend>>)

  1. 1Inclusão (<<include>>)I – incondicional
  2. 2Generalização (herança)II – variação
  3. 3Extensão (<<extend>>)III – condicional
LEVEL · soulevel.com.br

Alternativa A — ❌ Incorreta

Apresenta “Associação, Generalização e Especialização”. Associação não é um relacionamento típico entre casos de uso (é entre ator e caso de uso, ou entre classes). “Especialização” é um termo genérico, mas o padrão UML é Generalização; o item I não é associação.

Alternativa B — ❌ Incorreta

Apresenta “Inclusão, Especialização e Exclusão”. Exclusão não existe como relacionamento padrão na UML para casos de uso (não há <<exclude>>). O item II deveria ser Generalização, e não “Especialização” (embora conceitualmente próximo, o termo correto é Generalização).

Alternativa C — ✅ Correta ⟵ GABARITO

Sequência exata: Inclusão (I), Generalização (II), Extensão (III). Corresponde perfeitamente aos três requisitos.

Alternativa D — ❌ Incorreta

Apresenta “Extensão, Exclusão e Associação”. Novamente, Exclusão não é padrão; a ordem está trocada (I é inclusão, não extensão); Associação não se aplica a casos de uso.

Alternativa E — ❌ Incorreta

Apresenta “Generalização, Especialização e Extensão”. O item I não é generalização (é inclusão); o item II é generalização (correto), mas o item III é extensão (correto), porém a ordem e o termo “Especialização” (em vez de Inclusão para I) tornam a alternativa errada.

PEGA ESSA DICA!

Na UML 2.5, os três relacionamentos entre casos de uso são: <<include>> (obrigatório, uso do comportamento incluído), generalização (herança entre casos de uso, seta com triângulo vazio) e <<extend>> (opcional, sob condição). Memorize: include = obrigatório, extend = opcional, generalização = variação/herança.

Gabarito: letra C.

Link permanente: /questoes/fc052789