Com relação à qualidade de software, é incorreto afirmar que:

Próximas questões
Com base no mesmo assunto
Q47913 Engenharia de Software
Com relação à qualidade de software, é incorreto afirmar que:
Alternativas

Gabarito comentado

Confira o gabarito comentado por um dos nossos professores

Alternativa correta: C - o processo de validação tem por objetivo realizar testes até que nenhum erro seja encontrado.

A qualidade de software é uma área que trata de métodos e práticas que asseguram que o software atende aos padrões de qualidade esperados. Esta questão aborda um aspecto importante da qualidade de software: a atividade de testes. Os testes são fundamentais para verificar e validar que o software comporta-se conforme o esperado e para identificar defeitos que precisam ser corrigidos antes da entrega ao usuário final.

Vamos analisar por que a alternativa C é a incorreta:

Validação é o processo que garante que o software atende aos requisitos e expectativas dos usuários. No entanto, um conceito chave em testes de software é que é impossível testar todos os casos de uso possíveis de um sistema em um tempo finito, especialmente em sistemas complexos. Por isso, a validação não pode ter o objetivo de realizar testes até que nenhum erro seja encontrado, pois sempre pode existir um cenário não testado onde um erro possa ocorrer. A ideia de que é possível provar a ausência de erros é um mito na engenharia de software.

As demais alternativas são corretas e refletem princípios importantes em qualidade de software:

  • A: Testes são incapazes de garantir a ausência total de erros. Isso se deve à complexidade dos sistemas e à impossibilidade de se realizar uma cobertura de testes exaustiva.
  • B: Os testes são técnicas dinâmicas porque eles interagem com o software de maneira executável, ao contrário de técnicas estáticas que analisam o código-fonte ou a documentação.
  • D: Um teste bem-sucedido é aquele que consegue encontrar um erro, cumprindo o propósito de identificar defeitos que precisam ser corrigidos.
  • E: Testes podem mostrar a presença de defeitos, mas nunca podem provar de forma conclusiva que um software é livre de erros.

Compreender esses conceitos é essencial para garantir a qualidade do software e para profissionais que se preparam para concursos na área de Engenharia de Software - Qualidade de Software.

Clique para visualizar este gabarito

Visualize o gabarito desta questão clicando no botão abaixo

Comentários

Veja os comentários dos nossos alunos

Em algumas situações os custos dos testes são maiores que o prejuízo do erro. Nestes casos pode-se validar um software contendo erros.

Afirmativa incorreta: Letra C . Os testes não podem garantir que o Software está livre de erros. Logo, não temos que essa garantia que "nenhum erro será encontrado", mesmo com testes exaustivos.

O objetivo de qualquer teste é justamente expor os possíveis erros do sistema. Se formos pensar que o objetivo é testar até nenhum erro ser encontrado, podemos simplesmente não fazer nenhum teste que nenhum erro será encontrado e damos o software como validado.

Gabarito C

Sobre a alternativa A: se não tivermos testado a condição de erro X, se esta ocorrer durante a execução do programa, teremos uma falha. Com isso, podemos dizer que os testes realmente não podem garantir que não ocorrerá erro na execução de um programa, salvo se prevermos todas as infinitas condições em que o SW estará submetido.

A verificação pode ser de DOIS tipos: estática ou dinâmica. Os testes correspondem à verificação dinâmica. A verificação estática está relacionada à inspeção da documentação do software (documento de requisitos, diagramas, código, etc).

Lembrando que tanto na verificação quanto na validação podemos fazer uso de inspeções e testes, pois verificação e validação são COMPLEMENTARES, não opostas.

Clique para visualizar este comentário

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