,

terça-feira, 14 de maio de 2013

Questão de Certificação - Dia 11



Bom dia pessoal,

Estamos chegando na reta final dos nossos estudos.

Mas ainda da tempo de estudar e conseguir conquistar essa certificação. Então não vamos perder tempo e vamos para mais uma Questão de Certificação CTFL.

Hoje iremos abordar sobre os Princípios de Testes, tema abordado no Syllabus e que frequentemente é questão exigida nas provas de certificação.

Lembrando que a questão foi retirada do Simulado 05, que se encontra disponivel para baixar, na tag de "Download" em nosso blog.


S5Q20. Uma equipe de teste, constantemente, encontra 90% à 95% dos defeitos presentes no software que está sendo testado. Enquanto o gerente de teste entende que esta é uma boa porcentagem de detecção para a sua equipe e para a empresa, o gerente sênior e os executivos estão desapontados com a equipe de teste, dizendo que a equipe perde muitos bugs.
Tomando como base, que os usuários, geralmente, estão contentes com o sistema e as falhas reportadas por eles são de baixo impacto. Qual dos princípios de teste pode melhor ajudar o gerente de teste a explicar aos demais, o porquê de alguns defeitos não serem encontrados?

a) Teste exaustivo é impossível
b) Agrupamento de defeitos
c) A ilusão da ausência de erros
d) Paradoxo do Pesticida 

Comentários: Essa questão é interessante, pois iremos analisar os princípios de Testes.

De acordo com o Syllabus temos 7 princípios de testes:

Princípio 1 – Teste demonstra a presença de defeitos
O teste pode demonstrar a presença de defeitos, mas não pode provar que eles não existem. O Teste reduz a probabilidade que os defeitos permaneçam em um software, mas mesmo se nenhum defeito for encontrado, não prova que ele esteja perfeito.

Princípio 2 – Teste exaustivo é impossível
Testar tudo (todas as combinações de entradas e pré-condições) não é viável, exceto para casos triviais. Em vez do teste exaustivo, riscos e prioridades são levados em consideração para dar foco aos esforços de teste.

Princípio 3 – Teste antecipado
A atividade de teste deve começar o mais breve possível no ciclo de desenvolvimento do software ou sistema e deve ser focado em objetivos definidos.

Princípio 4 – Agrupamento de defeitos
Um número pequeno de módulos contém a maioria dos defeitos descobertos durante o teste antes de sua entrega ou exibe a maioria das falhas operacionais.

Princípio 5 – Paradoxo do Pesticida
Pode ocorrer de um mesmo conjunto de testes que são repetidos várias vezes não encontrarem novos defeitos após um determinado momento. Para superar este “paradoxo do pesticida”, os casos de testes necessitam ser frequentemente revisado e atualizado. Um conjunto de testes novo e diferente precisa ser escrito para exercitar diferentes partes do software ou sistema com objetivo de aumentar a possibilidade de encontrar mais erros.

Princípio 6 – Teste depende do contexto
Testes são realizados de forma diferente conforme o contexto. Por exemplo, softwares de segurança crítica são testados diferentemente de um software de comércio eletrônico.

Princípio 7 – A ilusão da ausência de erros
Encontrar e consertar defeitos não ajuda se o sistema construído não atende às expectativas e necessidades dos usuários.

Já analisando a situação da questão, temos uma equipe de teste que encontra de 90% a 95% dos defeitos do Sistema testado. A questão informa que o gerente de teste acha que esse percentual é satisfatório, os gerentes dos projetos ainda acha que teria como encontrar mais defeitos. 

Como sabemos, um software é praticamente impossível de testá-lo 100%, não se pode chegar a um ponto de dizer "esse sistema está 100% sem bugs" , o indicado sempre é definir uma métrica, um valor satisfatório como meta de testes. No caso da questão a equipe chegou a um valor de 95%, que para o gerente de Teste é excelente, mas para o gerente de projeto esses 5% ainda pode ser encontrado muitos bugs.

Dentre as quatros opções indicadas pela questão a) Teste exaustivo é impossível, b) Agrupamento de defeitos, c) A ilusão da ausência de erros, d) Paradoxo do Pesticidao que mais se aproxima da realidade da questão é o Princípio do Teste exaustivo é impossível. O gerente de teste pode usar o argumento de que um sistema é impossível de ser testado exaustivamente, atingir 100% de bugs encontrados, definindo a métrica de 95% como ponto de aceitação dos testes.

Você pode me perguntar porque não o Princípio da Ilusão da ausência de erros, mas esse princípio diz respeito de uma cenário onde o sistema não há erros, porém ele foi construído de forma que não atende as especificações do cliente, logo o sistema não tem erros mas ele ta errado :D

0 comentários:

Postar um comentário