Programação em Pares obtendo ótimos resultados

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

Apesar de o período inicial pode levar mais tempo quando os programadores estão se adaptando ao trabalho em conjunto.

Programação(agenda)

Visto que os programadores acham difícil encontrar um horário comum para se encontrar e executarem a codificação devido às suas preferências de horário.

Compatibilidade com parceiros

Frequentemente observada devido a conflitos de personalidade, hábitos, diferentes níveis de habilidade, nível de experiência, estilo de programação, auto-estima etc.

Espaço pessoal

Embora alguns desenvolvedores sentem que estão perdendo seu espaço pessoal e também não conseguem se concentrar bem.

Adaptação da programação em pares

Enquanto a equipe não compra o conceito de programação em pares, parece uma perda de tempo.

Co-localização

Assim como programação em pares requer muita comunicação e expressão para codificar, revisar, depurar e testar o trabalho. Quando as equipes são distribuídas e trabalham remotamente e não há ferramentas certas para colaborar, torna-se difícil progredir no trabalho.

Referência de papel

Enquanto alguns preferem ser um navegador o tempo todo e só querem fornecer orientações ao motorista, o que pode frustrar o motorista de desempenhar esse papel sempre.

Pressão dos pares

Quando um dos parceiros está correndo para concluir a tarefa, fazendo um trabalho ruim, isso resulta em erros e baixa qualidade, o que leva à insatisfação.
Como deveria ser programação em pares, como ela acontece
Como deveria ser programação em pares, como ela acontece

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:
    1. Quais atividades são permitidas?

    2. O que não será permitido fazer?

    3. Entre os pares qual as expectativas?

    4. Quanto tempo uma sessão pode durar?

    5. Como definir o objetivo da sessão?

    6. 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.

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. PMP, SMC, SAMC, SPOC, SCT, PTMC, PTME, OKR, SDC, SSYB, SAP, CYNEFIN, M3.0, ACM, CPM-E, CKMS, CCNS, CDTS

1 Comment

Leave a comment

Your email address will not be published.