Tentativa e erro em TDD  XML
Índice dos Fóruns » Metodologias de Desenvolvimento e Testes de Software
Autor Mensagem
itanor
Entusiasta Java

Membro desde: 26/11/2003 19:44:45
Mensagens: 23
Offline

Olá pessoal,

venho acompanhando à algum tempo a idéia do TDD e todos os seus conceitos.
Acho interessante como o desenvolvimento guiado por testes se comporta e faz
com que o programador/desenvolvedor mude seu pensamento no momento de
construir software. Com certeza é uma mudança de paradigma em relação ao modelo
tradicional de se testar software. Até aí tudo OK.

Certa vez, comentando com colegas, um deles disse que a idéia do TDD era basicamente
a programação por tentativa e erro... Até aquele momento eu não havia pensado nesta questão.
Outras questões como estas eu já havia visto, mas essa de tentativa e erro ainda não...
A partir desse comentário comecei a "mastigar" isso e não consegui vislumbrar uma resposta
para dizer que o TDD não é "tentativa e erro".

Gostaria que colocassem suas opiniões sobre esta questão...

Grato!
Rodrigo Carvalho Auler
Virtual Machine Man

Membro desde: 14/02/2003 15:59:17
Mensagens: 576
Localização: Rio de Janeiro
Offline

Tentativa e erro? Isso não faz sentido. O TDD só quer garantir que o resultado do que você fez vai ser realmente o esperado.

Se o que você diz ser "tentativa e erro" é você corrigir o seu código até ele funcionar direito, isso acontece com qualquer metodologia, nem que a correção seja feita depois de 2 meses do seu código em produção... e é justamente isso que o TDD tenta evitar...

[]'s

Rodrigo Auler
pcalcado
Moderador
[Avatar]

Membro desde: 08/03/2004 17:19:35
Mensagens: 5174
Localização: Sydney - Australia
Offline

A analogia é bem furada, creio. Quando você faz TDD você não está tentando, você está especificando o que o software deve fazer pela ótica de quem usa sua class/objeto/etc.

Phillip Calçado "Shoes"
http://fragmental.tw/
http://blog.fragmental.com.br/
"It is unfortunate that much of what is called 'object-oriented programming today is simply old style programming with fancier constructs." - Alan Kay
[Email] [WWW] [Yahoo!] [MSN]
itanor
Entusiasta Java

Membro desde: 26/11/2003 19:44:45
Mensagens: 23
Offline

Pois é Philip, vejo que a "tentativa e erro" em TDD não tem sentido quando fala-se em, por exemplo,
codificar um método, realizar um teste, corrigir tal método, aplicar os testes novamente e repetindo
esta sequencia até ter a funcionalidade desejada e também uma boa cobertura dos testes.

Acho que a "tentativa e erro" tem mais haver com programadores ou com pessoas que estão começando
a programar do que com TDD. Um exemplo disso é quando, codificando o corpo de uma função/método,
o programador tende a criar código aparentemente satisfatório. Após esta codificação ele testa o
método/função e percebe que existem erros. Porém, nesta situação, ele ainda não sabe que tipo de erro
ele tem e vai tentar arrumar seu método em diversas tentativas e erros... Mas isso torna-se diferente em TDD,
pois estamos "amparados" pelos testes previamente criados que nos dão ou nos indicam onde está o erro
do método/função/classe, etc.

Creio que seja mais ou menos essa a diferença... O que vocês pensam?

Grato!
thingol
Moderador

Membro desde: 29/07/2004 16:10:13
Mensagens: 17543
Offline

Tentativa e erro não tem nada a ver com TDD. Na verdade eu diria que, especificamente no meu caso, eu uso tentativa e erro para efetuar "programação exploratória", ou seja, quando não sei exatamente nem o que deve ser feito, nem quais são exatamente os requisitos - o que é radicalmente diferente do TDD (que se caracteriza por ser usada em casos em que os requisitos e os resultados são bem-definidos - mesmo que sejam bem-definidos na mente do usuário somente).


[WWW]
itanor
Entusiasta Java

Membro desde: 26/11/2003 19:44:45
Mensagens: 23
Offline

Oopsss... "tentativa e erro" tem mais a ver com programadores...
 
Índice dos Fóruns » Metodologias de Desenvolvimento e Testes de Software
Ir para:   
Powered by JForum 2.1.8 © JForum Team