Coding Dojo Floripa

Desenvolvimento Ágil

Ping Pong Programming

Posted by Ivan Sanchez em Sexta-feira, Fevereiro 9, 2007

Pra quem quer experimentar um pouco de Pair Programming e TDD, este é o exercício:

De preferência em dois programadores (talvez com mais também funcione, se alguém conseguir me avise), definam um problema simples para ser resolvido. Agora sigam o processo:

  1. Programador A escreve um novo teste que falha;
  2. Programador B faz o teste passar;
  3. Programador B escreve um novo teste que falha;
  4. Programador A faz o teste passar;
  5. Repita.

Simples, não? Seguindo estes passos já deve ser possível sentir a maioria das dificuldades e benefícios que ambas as práticas apresentam, e ainda pode servir como um passatempo para quem gosta de programar.

Esse exercício foi proposto em 2003, no Wiki da C2. Estou pensando em fazer uma sessão dele na próxima reunião do Dojo. Neste caso acho que vou precisar de um teclado sem fio 😉

2 Respostas to “Ping Pong Programming”

  1. Marcelo said

    Essa abordagem é bem interesante e faz bastante sentido … acho que o ideal para isso seria utilizar dois monitores/teclados e mouse … assim não fica um troca-troca (no bom sentido) …

    Você acha que seria uma boa utilizar pair com um grupo de estagiários ?

    E você costuma utilizar testes para telas simples como Cadastro de categoria por exemplo?

  2. Utilizar pair programming com estagiários é uma boa idéia caso você possua pessoas mais experientes para participar. Desta forma você vai distribuir o conhecimento dentro da equipe. No caso de só haverem programadores inexperientes não sei se esta abordagem pode ajudar em algo…

    Quanto aos testes, eles servem não só como uma ferramenta de modelagem mas também como uma segurança de que aquilo que foi feito, por mais simples que seja, está funcionando como o esperado. Isso ajuda não só a evitar bugs como facilita MUITO na hora de fazer possíveis mudanças numa funcionalidade.

    Além disso, se o seu Cadastro de Categoria é tão simples, também deve ser simples escrever um teste pra ele, certo?

    Bom, espero ter ajudado. Qualquer outra dúvida é só falar…

Deixe um comentário