Pular para o conteúdo principal

Questão de Engenharia de Software — Engenharia de Requisitos — VUNESP 2023

Engenharia de SoftwareEngenharia de Requisitos
Código
vu196902
Banca
VUNESP
Órgão
SP Regula
Ano
2023
Cargo
ARSP ( )

Considerando a importante etapa de validação de requisitos estabelecidos para um software, uma das atividades aí incluídas refere-se a verificar se requisitos incluídos na especificação não estejam em conflito (restrições contraditórias ou descrições diferentes de uma mesma função).

 

Tal atividade corresponde, especificamente, a realizar verificações de

  1. Atecnologia.
  2. Bsegurança.
  3. Cidentificação.
  4. Dusabilidade.
  5. Econsistência.
Revelar gabarito e comentário

GabaritoE — consistência.

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”.

Validação de Requisitos: Verificações de Consistência

Gabarito: letra E. A atividade descrita — verificar se requisitos da especificação não estão em conflito, com restrições contraditórias ou descrições diferentes de uma mesma função — corresponde especificamente às verificações de consistência, uma das checagens realizadas na etapa de validação de requisitos (Sommerville).

A validação de requisitos é a fase da engenharia de requisitos que confere se o documento de requisitos está correto, completo e coerente antes de ser aprovado como linha de base. Segundo Sommerville, essa atividade realiza quatro tipos de verificação: validade (os requisitos refletem as reais necessidades do usuário), consistência (não há conflitos entre requisitos), completude (todas as funções e restrições pretendidas estão descritas) e realismo (os requisitos podem ser implementados com a tecnologia e o orçamento disponíveis). Além disso, verifica-se a verificabilidade — se cada requisito é testável.

A consistência é exatamente o que o enunciado descreve: requisitos não podem se contradizer. Um exemplo clássico: um requisito diz que "o sistema deve permitir acesso apenas a usuários autenticados" e outro afirma que "a consulta de dados públicos não exige autenticação". Há um conflito — ou se exige autenticação para tudo, ou se abre exceção. Outro caso é descrever a mesma função de duas formas diferentes, como "o sistema deve calcular o imposto com alíquota de 15%" e "o imposto é calculado com alíquota de 12%" — descrições divergentes da mesma regra. A verificação de consistência busca justamente identificar e eliminar essas contradições.

A banca explora a confusão entre os tipos de verificação da validação e outros atributos de qualidade. As alternativas A, B, C e D são distratores que remetem a requisitos não funcionais (tecnologia, segurança, usabilidade) ou a outras atividades da engenharia de requisitos (identificação). O candidato que não domina as verificações da validação tende a escolher um termo genérico como "segurança" ou "usabilidade", mas o enunciado é específico: conflito entre requisitos = consistência.

NÃO CAIA NESSA!

A banca troca o tipo de verificação da validação por atributos de qualidade de software. "Segurança" e "usabilidade" são requisitos não funcionais, não verificações da validação. A palavra-chave é conflito — isso remete diretamente à consistência, não a qualquer outro conceito.

Validação de requisitos (Sommerville)
  • 1Verificações
    • Validade
    • Consistência
    • Completude
    • Realismo
    • Verificabilidade
  • 2Consistência
    • Sem conflitos entre requisitos
    • Sem restrições contraditórias
    • Sem descrições diferentes da mesma função
LEVEL · soulevel.com.br

Alternativa A — ❌ Incorreta

Tecnologia não é uma verificação da validação de requisitos. A validação verifica validade, consistência, completude, realismo e verificabilidade. Tecnologia é um requisito não funcional (ex.: plataforma, linguagem) ou uma restrição de implementação, mas não é o que se verifica ao checar conflitos entre requisitos.

Alternativa B — ❌ Incorreta

Segurança é um requisito não funcional (RNF) que define como o sistema protege dados e recursos. Não é uma verificação da validação. A validação não "verifica segurança" — ela verifica se os requisitos são consistentes, completos, realistas etc. A segurança pode ser um atributo de qualidade, mas não é o foco da atividade descrita.

Alternativa C — ❌ Incorreta

Identificação não é uma verificação da validação. Na engenharia de requisitos, a identificação (ou elicitação) é uma fase anterior — o processo de descobrir e levantar os requisitos. A validação ocorre depois da especificação, e suas verificações são de validade, consistência, completude, realismo e verificabilidade. O enunciado fala de conflitos, não de identificação.

Alternativa D — ❌ Incorreta

Usabilidade é um requisito não funcional que descreve a facilidade de uso do sistema. Não é uma verificação da validação. A validação não avalia usabilidade diretamente; ela verifica se os requisitos estão coerentes entre si. A usabilidade pode ser um atributo de qualidade, mas não é o que se checa ao procurar conflitos.

Alternativa E — ✅ Correta ⟵ GABARITO

A consistência é exatamente a verificação que garante que não há requisitos conflitantes — restrições contraditórias ou descrições diferentes da mesma função. Segundo Sommerville, a validação de requisitos inclui "verificações de consistência: requisitos sem conflito". É a única alternativa que corresponde diretamente ao enunciado.

Gabarito: letra E

Link permanente: /questoes/vu196902