Questão de Engenharia de Software — Engenharia de Requisitos — VUNESP 2023
Engenharia de Software›Engenharia 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
Atecnologia.
Bsegurança.
Cidentificação.
Dusabilidade.
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.