Quer melhorar a qualidade do código? Use evidências de testes

Written by  //  May 12, 2010  //  Dicas, Qualidade  //  No comments

melhorar-a-qualidade
No começo de minha carreira em TI eu trabalhava em uma grande empresa de Campinas onde o ambiente principal era mainframe (COBOL). Naquela época uma das coisas que eu e o resto da equipe menos gostava era que toda vez que tínhamos que entregar um programa, a gente tinha que entregar algumas confirmações de que fizemos os testes solicitados pelo analista.

Isso era muito estressante pois terminávamos o programa, testávamos, e quando íamos fazer o teste com os dados que o analista passou… dava erro. Logo, tínhamos que rever todo o programa, encontrar o que não estava certo e resolver até tudo estar ok e de acordo com os dados do analista. Para ajudar, o analista somente recebia o programa com as telas (evidências de testes) confirmando que havíamos passado por todos os testes que ele solicitou.

Naquela época (meados de 90) ninguém lá (nós programadores) gostava disso, mas, com o passar do tempo acabamos percebendo o quanto aquilo era importante e contribuía para a qualidade.

Estas confirmações, ou, vamos chamar de evidências de testes, ajudavam muito na qualidade pois, ninguém entregava programas com erros (na verdade até entregava). Os analistas solicitavam evidências de teste das regras mais críticas e criavam cenários que faziam com que passasse por cada “IF”.

Imagine uma função de bonificação onde você entra com dois valores e retorna o bónus do vendedor. Eles passavam algo assim:
Bonus (100.000,30.000) retorna 5.700
Bonus (50.000,4.000) retorna 0
Bonus (60.000,10.000) retorna 0

Criavam-se cenários que verificassem as principais regras de negócio. Nossos programas tinham que dar o resultado definido pelo analista, se desse algo diferente, provavelmente o programa estaria errado (e em 99% das vezes estava), e, para garantir que tínhamos feito estes testes, os programas só eram aceitos com um print da tela com o resultado.

Claro que ainda assim apareciam alguns erros, mas eram poucos. O fator psicológico ajudava bastante.

O que vemos hoje é que a qualidade em TI caiu. Muitos programadores não testam seus programas, apenas “verificam se funciona”. Com o advento das “fábricas de testes” isso normalmente piora pois normalmente quando a fábrica é interna, os programadores deixam de testar pois “a fábrica de testes vai pegar mesmo”. Isso é péssimo pois o custo de idas e vindas entre programador e tester é muito alto. Se o programador realizar estes testes e garantir que seu programa esta correto, o tester terá menos trabalho, apenas verificando se o trabalho teoricamente bem feito, esta de fato bem feito.

Se você tem ou pensa em ter uma fábrica de testes, considere colocar como critério de entrada entre o desenvolvimento e os testes as evidências e testes. Você não precisa ter evidências de tudo não, até porque os custos iriam nas alturas, apenas instrua seus analistas a criarem uns 5 ou no máximo 10 cenários que tentem passar por tudo. E só aceitem para testes os programas que chegarem com estas evidências.

Outro ponto importante, é que os analistas devem pensar nesses cenários. Comece pelo bom e velho teste de mesa, você verá que suas dores de cabeça com qualidade tendem a diminuir.

Por fim, as empresas que conheço que utilizam este método não se arrependem.

About the Author

Black Belt, Washington Souza tem mais de 10 anos de experiência com gestão. Participou de implantações em todos os níveis CMMI e MPS.Br A. Gosta muito de Six Sigma e gestão como um todo.

View all posts by

Leave a Comment

comm comm comm