A idéia geral adotada pela maioria dos teóricos do Agile / XP parece ser que os pares devem ser trocados regularmente. Por exemplo, cada programador deve trocar pares uma vez por dia; metade das pessoas trocam no início do dia, metade das pessoas trocam após o almoço: devido a fatores externos, como reuniões, feriados e similares, a maioria das pessoas tende a mudar seus horários de troca uma ou duas vezes por semana, para que as configurações dos pares sejam distribuídas bastante uniforme em toda a equipe.
Uma lógica por trás da troca frequente é que o conhecimento é distribuído entre a equipe de maneira rápida e uniforme, em vez de se concentrar habilidades específicas e conhecimentos em indivíduos específicos - o que implica que o trabalho pode continuar sem problemas se as pessoas estiverem fora ou deixarem a empresa. Outra justificativa, que é uma espécie de corolário do próprio dogma que envolve a programação de pares, é que toda vez que alguém troca com você, você recebe uma nova revisão de código com um novo par de olhos, para que isso só melhore a qualidade do código.
Ambas as afirmações parecem razoáveis; do ponto de vista do gerenciamento, parece que você obtém um aumento tanto na estabilidade quanto na qualidade, e, como essa troca frequente, é praticamente uma teoria padrão na maioria dos livros do Agile / XP que eu observei.
Então, quando realmente colocado em prática, o que as pessoas realmente pensam sobre a troca de pares de
- O ponto de vista de um programador?
- O ponto de vista de um gerente?
E
- O que deve determinar quando alguém muda de / para um par?