OPORTUNIDADES

X

Estamos buscando os melhores profissionais para se integrarem à nossa equipe. Se você acredita que pode contribuir para nossa empresa, envie-nos o seu currículo para rhumanos@svlabs.com.br


ou pelo endereço:

R. Geraldo Flausino Gomes, 78 - conj 54 CEP: 04575-060 - Brooklin Novo São Paulo - SP - Brasil


AGRADECEMOS PELO SEU INTERESSE!

www.svlabs.com.br


Testes de software: Para quê?

11 de agosto de 2006
Marcelo Marinho


Se você já ocupou algum cargo em uma empresa que tenha desenvolvido ou implementado um software, certamente se deparou com a seguinte pergunta: "Testar para quê?". Talvez você nem tenha notado, afinal, a resposta é óbvia: "Para encontrar erros ou verificar se o programa funciona." Mas serão estes os únicos motivos?

Ao analisar a planilha de custos de um projeto em busca do retorno sobre o investimento (ROI), alguém pode questionar quanto vale encontrar erros no sistema. Também é comum ouvir alguém dizer: "Gostaria que a equipe de testes fosse mais produtiva."

Normalmente, quem faz um pedido desses está envolvido com um sistema repleto de erros de programação, afinal, a equipe não está sendo capaz de encontrar todas as falhas que deveria. No entanto, você não vai ouvir o mesmo comentário de um gerente de projeto. E por que não? Um erro como esse não é responsabilidade da equipe de testes?

Qualidade total?

As respostas começam a aparecer quando um conceito muito simples torna-se claro e corrente em todos os níveis do projeto: "Qualidade Boa o Suficiente", do inglês Good Enough Quality. Em resumo, o conceito diz que não devemos simplesmente buscar um nível de qualidade utópico: a excelência.

Primeiro, uma empresa ou um projeto economicamente responsável deve definir a qualidade desejada. A partir daí, passa a estabelecer estratégias e alocar os recursos necessários para alcançá-la. Nesse contexto, o papel da equipe de testes não é garantir a qualidade do software e sim descrevê-la ou deixar bem claro qual é o seu nível.

Os testes são quase sempre realizados às pressas, no fim do ciclo de vida do software, com uma equipe improvisada. Isto é feito apenas para saber se o sistema se sustenta por algumas horas e realiza as operações básicas para as quais foi projetado.

Investimento e resultado

Nesses casos, não há dúvidas de que existe um problema quantitativo, o que indica a necessidade de execução de novos testes. No entanto, isso não basta. Quando existe um parâmetro a seguir, duas perguntas são necessárias: "Os testes corretos estão sendo feitos?" e "Os recursos estão sendo empregados em algo que traga valor?"

A quantidade de erros encontrada ou não nem sempre é a medida ideal de eficiência. Quanto mais clara e mensurável for a definição de qualidade - que deve estar atrelada a parâmetros de custo-benefício - , mais fácil será comprovar a eficácia dos testes, permitindo saber se o investimento está dando retorno.

A pergunta que dá título a este artigo deve ser respondida por todos os envolvidos no processo - clientes, usuários, analistas, gerentes de projeto etc. - durante o início do ciclo de desenvolvimento ou da implantação do software. Cada um agindo de acordo com seu conhecimento e interesse, mas todos com a mesma missão: descobrir se a qualidade está sendo atingida ou não.