TDD - Just do it!

Posted by caike on March 31, 2009

Este assunto foi abordado hoje em uma da listas de XP das quais participo e é algo que já venho pensando há algum tempo.

Mais de uma pessoa na lista concordou que um dos principais impedimentos na adoção de TDD seria a falta de apoio por parte da gerência e que métodos ágeis teriam de ser implantados top-down.  Eu discordo de ambas as afirmações.

Em situações onde gerentes não são técnicos (a grande maioria dos casos), acredito que as técnicas de engenharia de software tenham que vir de baixo pra cima. Você não deve esperar que seu gerente lhe incentive a testar para que você o faça. Provavelmente ele não está preocupado com isso. Ele não deve se preocupar com isso.

Um gerente facilitador não vai lhe dizer o que você deve fazer. Ele acredita que você e seu time sabem o que deve ser feito no que diz respeito ao código. Caso você não saiba, junte-se a alguém do seu time que saiba. Caso ninguém do seu time saiba, busque ajuda em outros times, livros, comunidade, etc.

Já um gerente controlador vai  dizer que o programa deve simplesmente funcionar. Simplesmente funcionando também não é o que procuramos e o software craftsmanship manifesto esclarece isto muito bem.

Acredito que como desenvolvedores somos os responsáveis por tomar a iniciativa de identificar as nossas próprias boas práticas e exercitá-las ao máximo para que nos acompanhem a todo instante.

Quando o número de bugs começar a diminuir, juntamente com o tempo de desenvolvimento de novas features, então vá em frente e fale para o seu gerente que isso é resultado de sua técnica de modelagem e de verificação através de seus testes unitários e de tudo de bom que eles trouxeram (baixo acomplamento, alta coesão, etc etc).

Provavelmente ele vai continuar não se preocupando com isso, mas vai gostar dos resultados.

Coisas como reuniões freqüentes com o cliente, time-box fixo, escopo variável e outras características mais relacionadas ao processo, realmente dependem de um mínimo de esforço de camadas gerenciais. A situação fica um pouco mais complicada em organizações de médio e grande portes e com características de produção fabril.

Mas, calma. Um passo de cada vez.

Estamos falando de boas práticas de engenharia de software, que não dependem de gerente algum. Dependem de você.

Trackbacks

Use this link to trackback from your own site.

Comments

Leave a response

Comments

Anti-Spam Protection by WP-SpamFree