BT

Programação em Par: Técnicas e Dicas

por Pedro Mariano em 06 Mai 2010 |

Programação pareada é uma das técnicas ágeis mais aplicadas em todo o mundo, os seus benefícios são inúmeros dentre eles temos a melhoria da código final e a disseminação do conhecimento. Programar em par consiste em dois membros do time programarem em apenas 1 computador com o intuito de resolver o mesmo problema ou implementar a mesma funcionalidade.

Existem algumas dicas que você pode seguir para ajudar no sucesso da programação pareada, absorvendo melhor seus benefícios e tornando sua adoção mais agradável, são elas:

  • Utilizar apenas 1 computador, isso evita a distração e melhora a comunicação entre os membros.
  • Procurar não abrir outros programas(email, msn, twitter) além dos necessários para se executar a tarefa.
  • Um computador rápido e que não fique travando ajuda, pois evita a distração e, consequentemente, o desfoque no problema.
  • Revezar as duplas para que o conhecimento possa ser melhor disseminado.

Existe também as formas diferentes de "parear" - termo utilizado para o ato de programar em par -, essas que variam de time para time. Recentemente o blog dhelper publicou uma lista com 4 formas de se parear, são elas:

Baseada em Turnos

A idéia é simples, você deve mudar de posição de tempos em tempos, esse tempo deve ser pré definido. Quem estava digitando o código(piloto) se torna a pessoa que irá revisa o código(co-piloto) e vice-versa. Uma dica é mudar de posição a cada feature implementada ou em um curto espaço de tempo como 30 segundos ~ 1 minuto. O mais importante é que a dupla entre em uma regra comum para a troca de posição e que a mesma seja rigorosamente respeitada.

Utilizando esse método os dois desenvolvedores irão sempre ficar interessados no código além de evitar que apenas um desenvolvedor fique codificando enquanto o outro acaba ficando entediado.

Testador - Codificador

Essa é uma das favoritas pelo autor do post. A técnica consiste em, utilizar TDD com "pareamento". Um desenvolvedor primeiro escreve um teste que falha, então o outro desenvolvedor assume o teclado e deve fazer com que o teste passe escrevendo o mínimo de código possível. Você pode mudar quem escreve o código e quem faz ele passar de tempos em tempos ou então quando uma funcionalidade estiver completa.

Esta é uma ótima forma de você ensinar e mitigar TDD no seu time através de exemplos.

O Rei da Colina

Quem estiver com o teclado escreve o código. Se a pessoa parar de digitar ou começar a demorar muito para codificar (cuidado com o seu companheiro) o parceiro(co-piloto) pega o teclado sem aviso prévio e continua o código.

Essa técnica deve ser utilizada apenas quando a  uma dupla que se sentir confortável pois pode ofender o parceiro. Utilizando ela você exercita o pensamento rápido e também evita possíveis distrações.

Uma mente - quatro mãos

Esse método é raro, e pode se facilmente confundindo com o modo baseado em turnos. Ele consiste de, tanto o piloto quanto o co-piloto, instantaneamente entenderem o código que está sendo escrito sem a necessidade de explicação.

Um desenvolvedor escreve o código enquanto o outro fica apenas revisando, então quando o que estava codificando se cansar(ou o timebox terminar) eles trocam de posição. Não deve haver nenhuma explicação sobre o código que está sendo escrito.

O problema dessa técnica é que a dupla deve pensar da mesma forma e terem conhecimentos próximos . Além disso é necessário que quem revisa o código sempre interrompa o outro a cada "problema" que ele ver. Caso a frequência das interrupções seja muito baixa isso pode significar que o código está sendo muito bem escrito e realmente não existe problemas, ou então que o co-piloto não está entendendo nada que está sendo codificado por que o código está mal escrito ou então pela diferença de conhecimento existente na dupla.

Com essa técnica você consegue que os desenvolvedores escrevam códigos legíveis e que os outros possam entender conseguindo, no fim de tudo, um código com mais qualidade.

 

Vimos acima algumas técnicas utilizadas na programação em par, lembre-se de que elas variam de time para time.

E você leitor quais técnicas de programação em par que você conhece? Você se identificou com alguma das citadas acima? Há algumas outras dicas que você gostaria de sugerir?

Olá visitante

Você precisa cadastrar-se no InfoQ Brasil ou para enviar comentários. Há muitas vantagens em se cadastrar.

Obtenha o máximo da experiência do InfoQ Brasil.

Dê sua opinião

HTML é permitido: a,b,br,blockquote,i,li,pre,u,ul,p

Receber menssagens dessa discussão

Texto interessante by Paulo Henrique Soares da Silva...

Texto muito interessante. Preste atenção no seu português, fica estranho ler textos interessantes com erros comuns de "msn" e "orkut". Procure também revisar seus textos.

HTML é permitido: a,b,br,blockquote,i,li,pre,u,ul,p

Receber menssagens dessa discussão

HTML é permitido: a,b,br,blockquote,i,li,pre,u,ul,p

Receber menssagens dessa discussão

1 Dê sua opinião

Conteúdo educacional

Feedback geral
Bugs
Publicidade
Editorial
InfoQ Brasil e todo o seu conteúdo: todos os direitos reservados. © 2006-2013 C4Media Inc.
Política de privacidade
BT