Questão de Engenharia de Software — Geral — INSTITUTO AOCP 2024
Engenharia de Software›Geral
Código
qa631652
Banca
INSTITUTO AOCP
Órgão
MGI
Ano
2024
Cargo
Esp ( )
Na gestão de qualidade de software, diversos métodos e ferramentas são empregados para assegurar que os produtos finais atendam aos requisitos especificados. Qual das seguintes abordagens é mais adequada para medir a conformidade do software com os requisitos definidos pelo cliente durante a fase de análise de requisitos?
AUtilização de software de controle de versão para gerenciamento de mudanças.
BImplementação de revisões de código e refatoração contínua.
CAnálise estática do código para detectar padrões não conformes.
DRealização de benchmarks de desempenho comparativos com softwares similares.
EExecução de testes de aceitação pelo usuário para validar o produto final.
Revelar gabarito e comentário▾
GabaritoE — Execução de testes de aceitação pelo usuário para validar o produto final.
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”.
Qualidade de Software: Verificação e Validação
Gabarito: letra E. A execução de testes de aceitação pelo usuário é a abordagem mais adequada para medir a conformidade do software com os requisitos definidos pelo cliente, pois valida se o produto atende às necessidades e expectativas do usuário final — o que a engenharia de software chama de validação (construir o produto certo). As demais alternativas tratam de atividades de verificação (construir o produto corretamente), que não medem diretamente a conformidade com os requisitos do cliente.
A gestão da qualidade de software distingue dois conceitos fundamentais que estão no cerne desta questão: verificação e validação (V&V). A verificação responde à pergunta "construímos o software corretamente?" — ou seja, o produto está de acordo com as especificações técnicas definidas durante o desenvolvimento. Já a validação responde à pergunta "construímos o software certo?" — ou seja, o produto atende às necessidades e expectativas reais do cliente. O enunciado pede especificamente a medição da conformidade com os requisitos definidos pelo cliente, o que aponta diretamente para a validação.
Os testes de aceitação, realizados pelo usuário ou cliente, são a forma clássica de validação. Eles ocorrem no final do ciclo de desenvolvimento e verificam se o sistema atende aos requisitos de negócio e se está pronto para uso no ambiente real. É o momento em que o cliente confirma que o produto entregue é exatamente o que foi solicitado na fase de análise de requisitos.
As demais alternativas representam atividades de verificação ou de apoio ao desenvolvimento, que não medem diretamente a conformidade com os requisitos do cliente. O controle de versão gerencia mudanças no código, as revisões de código e a refatoração melhoram a qualidade interna do código, a análise estática detecta padrões não conformes no código-fonte, e os benchmarks comparam desempenho — nenhuma dessas atividades valida se o produto atende às necessidades do cliente.
A pegadinha desta questão está em confundir verificação com validação. O candidato que não domina essa distinção pode ser atraído por alternativas como a análise estática (C) ou as revisões de código (B), que são atividades de qualidade importantes, mas que verificam a conformidade com padrões técnicos internos, não com os requisitos do cliente. Guarde a fronteira entre verificação e validação: é exatamente nela que as alternativas se dividem.
Qualidade de software (V&V)
1Verificação
"Construímos o produto corretamente?"
Conformidade com especificações técnicas
Revisões de código
Análise estática
Testes de integração
2Validação
"Construímos o produto certo?"
Conformidade com requisitos do cliente
Testes de aceitação
Testes alfa/beta
LEVEL · soulevel.com.br
Alternativa A — ❌ Incorreta
O controle de versão é uma ferramenta de gerência de configuração que gerencia mudanças no código-fonte, permitindo rastreabilidade e histórico de alterações. Não mede a conformidade do software com os requisitos do cliente — é uma atividade de apoio ao desenvolvimento, não de validação.
Alternativa B — ❌ Incorreta
As revisões de código e a refatoração contínua são práticas de verificação que melhoram a qualidade interna do código, como legibilidade, manutenibilidade e aderência a padrões de programação. Não validam se o produto atende aos requisitos do cliente — são atividades técnicas de desenvolvimento.
Alternativa C — ❌ Incorreta
A análise estática do código detecta padrões não conformes no código-fonte, como violações de boas práticas de programação ou possíveis defeitos. É uma técnica de verificação que analisa o código, não os requisitos do cliente. Não mede a conformidade com as necessidades do usuário.
Alternativa D — ❌ Incorreta
Os benchmarks de desempenho comparam o software com outros similares ou com padrões de mercado. Embora possam indicar se o produto atende a requisitos de desempenho, não medem a conformidade com os requisitos funcionais definidos pelo cliente — são uma métrica específica de eficiência, não de validação geral.
Alternativa E — ✅ Correta ⟵ GABARITO
Os testes de aceitação pelo usuário são a atividade de validação por excelência. Neles, o cliente executa o software em condições reais ou simuladas para confirmar que o produto atende aos requisitos definidos na fase de análise. É a forma mais direta de medir a conformidade com as necessidades e expectativas do usuário final.
PEGA ESSA DICA!
Para diferenciar verificação de validação na prova, lembre-se: verificação = "fizemos o produto corretamente?" (conformidade com especificações técnicas); validação = "fizemos o produto certo?" (conformidade com necessidades do cliente). Testes de aceitação, testes alfa/beta e validação de requisitos são atividades de validação; revisões, inspeções, análise estática e testes de integração são atividades de verificação.