Um guia para tornar a programação em pares bem-sucedida.
A programação em pares (PP) é uma abordagem de programação extrema para produzir software melhor, onde duas pessoas trabalham juntas em um computador e o trabalho é revisado à medida que é feito. Mais um dos temas dentro do Agile.
Primeiramente o “driver” (motorista em tradução livre) opera o teclado enquanto o “navegador” está assistindo, fazendo perguntas, orientando, revisando, aprendendo e fazendo sugestões. Encontre mais sobre PP na Wikipédia .
Frequentemente ouvimos que a programação em pares é uma “perda de tempo”, “realmente não funciona”, “suprime a criatividade”, “mata a privacidade”, “estressante” etc. etc.
Essas são preocupações genuínas em que qualquer equipe pode ter suas circunstâncias e experiência.
Problemas à vista! (Conhecidos-Conhecidos)
Alguns dos problemas que geralmente ouvimos sobre a programação em pares são:
Emparelhamento
Programação(agenda)
Compatibilidade com parceiros
Espaço pessoal
Adaptação da programação em pares
Co-localização
Referência de papel
Pressão dos pares
Compreendendo a Programação em Pares
A programação em pares é um processo especializado e precisa de compreensão, treinamento e experiência para se beneficiar.
Pontos a serem considerados para obter resultados bem-sucedidos com programação em pares:
- Primeiramente a gerência precisa perceber os benefícios da prática de programação da PP para implementá-la na organização. Haverá fases de aprendizado e adaptação para as equipes e os Gerentes precisarem apoiar as equipes durante essas fases.
- Em princípio a programação em pares não precisa ser para uma equipe inteira – a equipe pode decidir a porcentagem correta da prática em um sprint ou em um dia da semana.
- Primordialmente realize sessões de treinamento sobre os conceitos de Programação em Pares e as maneiras de se beneficiar dessa prática.
- Consequentemente o cronograma dos membros da equipe desempenha um bom papel na implementação disso, portanto, encontre um horário comum para esta atividade. Adquira as ferramentas de comunicação corretas para colaboração quando a equipe for distribuída. Uma vantagem da equipe distribuída é que o cronograma pode ser facilitada.
- Que tipo de trabalho é qualificado para a programação em pares?
- Quais são os melhores horários do dia para a atividade?
- As sessões simuladas / experimentais da programação em pares ajudam a equipe a entender a abordagem e podem esclarecer suas dúvidas quanto à prontidão.
- Como haverá muita conversa entre o par de membros, a equipe precisa estar preparada para um certo nível de ruído. Como alternativa, uma mesa / sala específica pode ser alocada para a atividade de programação de pares para reduzir os níveis de ruído.
- Sob o mesmo ponto de vista ambos os parceiros devem se apropriar para terminar o trabalho.
- Inclusive entenda que haverá um pequeno aumento nos custos de desenvolvimento (20% +) nessa abordagem, mas há benefícios a longo prazo.
- Portanto, obtenha feedback dos pares para melhorar / alterar o processo para obter melhores resultados.
- Defina as regras básicas sobre como fazer a programação em pares. Alguns dos aspectos a serem incluídos nas regras:
Quais atividades são permitidas?
O que não será permitido fazer?
Entre os pares qual as expectativas?
Quanto tempo uma sessão pode durar?
Como definir o objetivo da sessão?
Como encontrar um parceiro?
Evite a programação em pares quando:
- As tarefas são simples e diretas
- Não há ferramentas certas para colaborar remotamente
- Não há acompanhante certo para uma tarefa crítica com prazo determinado
- Um parceiro sente muito estresse na atividade
- A equipe não conhece o conceito de programação em pares
- O par não se apropria do resultado
Benefícios da Programação em Pares
Desde que seja usado corretamente os seguintes benefícios podem ser observados com a programação em pares:
Maior produtividade
Constantemente a equipe alcança mais produtividade em um tempo determinado, pois trabalha com conhecimento coletivo, mais foco, experiência variada no projeto / domínio.
Defeitos reduzidos
Primordialmente a revisão contínua do trabalho, a depuração e o teste do código juntos produzem menos erros.
Qualidade aprimorada
Deste modo, impor os padrões de codificação e as melhores práticas durante o processo de programação do Par ajuda a equipe a evitar retrabalhos.
Eventualmente o par pode discutir / debater e implementar os melhores padrões de design, estruturas de dados e lógica ideal para produzir um produto de alta qualidade.
Tempo reduzido
Cada vez que exista uma necessidade crítica de concluir o trabalho rapidamente, como solucionar um problema de produção ou analisar um cenário complicado, o PP ajudou a resolver os quebra-cabeças de maneira fácil.
Aprendendo para melhor
Durante a programação em pares, quando um membro usa alguns truques e técnicas para atingir a meta, isso ajuda a outra pessoa a aprender esses conceitos e usá-los no futuro.
Treinamento / integração
Da mesma forma PP ajuda na transição do conhecimento e funciona muito bem quando você tem novos membros na equipe.
Enquanto o Navegador desempenha um papel de colaborador enquanto o driver é o receptor. Essa abordagem indiretamente reduz o custo de treinamento dos novos membros.
Compartilhamento de conhecimento
Enquanto os membros da equipe com maior conhecimento do projeto tendem a receber pares mais dependentes, pois eles são os pilares do conhecimento.
Uma boa ideia espalhar esse conhecimento para outras pessoas para reduzir a dependência dessas pessoas. Quando esses “pesos-pesados” se juntam a outros, ajudam a espalhar o conhecimento facilmente.
Ligação em equipe
Já a programação em pares quando realizada de maneira positiva também funciona como uma atividade de formação de equipe e cria uma ligação em equipe.
Melhora na comunicação
Acima de tudo o PP incentiva a quebra do silêncio e comunica mais sobre código, projeto, empresa, cliente, fluxo de trabalho e tudo o que for necessário. Isso ajuda a equipe a melhorar suas habilidades de comunicação e habilidades pessoais.
Maior confiança na programação em pares
Imediatamente uma maior qualidade e produtividade têm um efeito positivo sobre os membros da equipe – Seus níveis de confiança aumentarão várias vezes.
Melhor satisfação com a programação em pares
Enquanto as questões complexas são resolvidas de maneira sistemática pelo par certo de pessoas e isso lhes proporciona grande satisfação.
Em suma a Programação em Pares (PP) quando bem implementada, realizada e amplamente discutida e disseminada na empresa pode alcançar resultados incríveis, tente utilizar este guia para começar a implementar isso.
PMP, SMC, SAMC, SPOC, SCT, PTMC, PTME, OKR, SDC, SSYB, SAP, CYNEFIN, M3.0, ACM, CPM-E, CKMS, CCNS, CDTS Educador e orientador Webinar specialist
Gerente de programas e produtos, educador e mentor, fundador do Grupo de Projetos de Ribeirão Preto.
Como fundador da Projetos e TI, ajudo as organizações a se tornarem ecossistemas adaptativos, responsivos e auto organizáveis, implementando novas práticas, estruturas, ritmos e tecnologias que permitam transparência, abertura, inovação e uma forma progressiva de liderar. Caso queira saber mais entre em contato comigo, ou me convide para uma palestra.