Programação Pareada

Pair Programming

A Programação Pareada é uma das práticas do Extreme Programming (XP), que sugere que o código seja sempre trabalhado em dupla em um mesmo computador, revezando quem está digitando. Assim, existem dois papéis nessa atividade, o piloto e o co-piloto. Os dois trabalham de forma análoga a pilotos e co-pilotos de aeronaves.

O piloto é o responsável pela digitação do código, a sintaxe, e por deixar o seu parceiro ciente do que está fazendo, sempre explicando seu raciocínio durante a execução. O co-piloto acompanha a elaboração do código, os testes que deverão passar, a próxima história a ser entregue, o tempo gasto na execução dos testes, o tempo decorrido desde o último commit, e a qualidade do código em geral.

A ideia é que o pareamento ajude a disseminar o conhecimento entre o time de desenvolvimento, que a aplicação tenha menos bugs e que mais funcionalidades sejam acrescentadas num menor período de tempo, resultando em melhores projetos.

Programação Pareada Remota

Pareamento remoto significa pareamento a distância. Esse tipo de pareamento é necessário quando os desenvolvedores não podem se encontrar pessoalmente.
Este pareamento é feito com o auxílio de ferramentas que permitem a comunicação e o compartilhamento de tela, como hangouts ou skype, ou em alguns sites que permitem várias programarem juntas.
A desvantagem desse pareamento é que o par pode perder o foco com facilidade já que a pressão do outro não é tão grande, o que pode acarretar em perda de produtividade.

Boas práticas Programação Pareada

Algumas práticas de pareamento altamente efetivos:

Tipos de Programação Pareada

Especialista x Especialista

Tipo de pareamento que a princípio parece ser o melhor, contudo, geralmente traz poucas inovações, já que especialistas já estão acostumados com as estruturas e paradigmas pré-definidos e tendem a não questioná-los.

Principiante x Principiante

Tipo de pareamento que traz melhores resultados que um principiante trabalhando sozinho, contudo, a curva de aprendizagem e de produção deste tipo é bem lenta, sendo ele desencorajado.

Especialista x Principiante

Tipo de pareamento mais recomendado, de modo que a curva de aprendizado do principiante tem crescimento rápido, além de que, o desconhecimento do principiante de estruturas e paradigmas pré-definidos o faz questioná-los, podendo gerar novas ideias e inovações. Contudo, para que este pareamento funcione adequadamente, o especialista precisa ter paciência e vontade de ensinar o principiante, bem como é requerida proatividade deste último, para que o primeiro não faça tudo sozinho.

Treinamento Programação Pareada

Referências

Programação em par