Os Pitfalls e os Perils da programação do par

| by V. Berba Velasco Jr., Ph.D. | November 20, 2006

Programação do par: Povoar um ou outro amor ele ou odiá-lo.

O conceito do par que programa primeiramente transformou-se agradecimentos populares do “à programação extremo” ou ao jogo das práticas que permitem suposta as companhias que desenvolvam o software em um mais eficiente, mais maneira “ágil” de XP-a. Os Proponents de XP reivindicam que permite que os programadores respondam à mudança ou às exigências ambiguous do software sem sacrificar a qualidade. Os Skeptics discordam, discutindo que estes benefícios alegados são illusory ou exaggerated.

Os proponents de XP discutem aquele que duas cabeças de programação são melhores do que os colaboradores do software do one- that dois que trabalham junto tenderão a produzir mais melhor, mais de confiança e mais maintainable do que um único programador que trabalha sozinho. Esta prática é sabida como o par que programa, e no primeiro glance, soa como uma idéia grande. Pessoalmente though, eu penso de que smacks de um “um tamanho cabe todo o” mentality. Isto é, supõe que dois programadores que trabalham no concert serão certamente mais eficientes e que produzirão resultados melhores. Eu penso que há uma razão boa acreditar de outra maneira.

MUITO ESTUDO DE VAUNTED WILLIAMS

XP ventila tipicamente o ponto a um estudo infamous dirigido pelo Prof. Laurie Williams na universidade de Utá. Neste estudo, Williams concliu que o par que programa tomadas 15% mais tempo do que só o desenvolvimento, mas resulta no software que é 15% melhor. Discutem que este aumento modesto no tempo de desenvolvimento é um preço pequeno a pagar, desde que a qualidade melhor do código significa que menos tempo e esforço serão pena mais atrasada requerida a estrada - durante testar e manutenção, por exemplo.

Eu penso de que há uns problemas numerosos com este estudo, though. Como os investigadores calibraram a qualidade do software, por exemplo? Usado o comprimento do código como a qualidade métrica; isto é, mais curto o código de fonte, melhores julgaram-no para ser. Relatado, “[as equipes emparelhadas] executou consistentemente a mesma funcionalidade que os indivíduos em poucas linhas do código. Nós acreditamos que esta é uma indicação que os pares tiveram projetos melhores.” Eu penso que este é um pulo hasty da lógica, para dizer o menos!

Um código de fonte mais curto exibe uma qualidade mais grande? Às vezes, talvez. Entretanto, se poderia apenas como fàcilmente speculate que o código mais longo contem mais reparos e proteções do erro. Além, adicionar mais linhas de código - para executar um teste padrão do projeto, por exemplo - pode fazer o software mais eficiente ou mais fácil manter. Eu penso de que a correlação presumida entre o comprimento do código e a falta da qualidade está justificada mal no melhor dos casos.

O estudo exibiu também um exemplo severo da polarização do participant. Os estudantes em uma classe foram perguntados se preferissem trabalhar nos grupos ou sozinho. 35 dos respondents disseram que preferiram o funcionamento collaborative; destes estudantes, 28 deles foram selecionados constituir o par que programa o grupo experimental. Os sete restantes foram colocados no grupo de programação de solo, isto é os controles experimentais. Isto criou uma polarização experimental forte; todos os programadores do par eram voluntários dispostos, visto que alguns membros do grupo de controle estavam lá relutantemente.

O que é mais, 13 fora dos 14 pares self-estavam selecionando; isto é, foram permitidos aos estudantes escolher disposta seus sócios. Uma vez que outra vez, isto inclina os resultados, desde que os participants são prováveis selecionar os sócios com quem são particularmente compatíveis.

(Interessante bastante, estas polarizações poderiam fàcilmente ter sido evitadas atribuindo pares aleatòria. Eu não desejo moldar aspersions; entretanto, eu não posso ajudar mas querer saber a se o Prof. Williams e companhia puder unconsciously ter inclinado sua experiência para demonstrar o superiority da programação do par.)

SHORT-CIRCUITING O PROCESSO CREATIVO

No short, a evidência suposta para a produtividade aumentada sob a programação do par é questionável no melhor dos casos. Além, nós devemos perguntar se houver alguma razão acreditar que a programação do par pode ser counter-productive ou de outra maneira prejudicial.

Eu acredito que pode ser. Emparelhar a programação pode certamente ajudar povoar o prendedor ou impedir erros; porque o cliche hoary vai, dois pares dos olhos são melhores de um. Quando enfrentado com um problema thorny though, um necessita frequentemente deixou o problema filtrar-se em one cérebro por um quando antes de chegar em uma solução apropriada. Frequentemente, isso é como as mentes creativas se operam; necessitam deixaram suas mentes sift um problema primeiramente antes de tentar repará-lo.

Com o par que programa though, este processo short-circuited. Em vez de deixar one mente digerir o problema no tempo devido, programação do par aplica uma pressão sobre povos chegar mais rapidamente em uma solução. Às vezes, isto pode produzir resultados melhores; entretanto, pode também ter o efeito oposto. Eu suspeito que para as mentes as mais creativas, este tipo da pressão pode stifle a creatividade melhor que hinder a.

Mas espera! Não há um poder nos números? Não há as épocas em que os mais melhores resultados são produzidos tendo o brainstorm dos povos e conferenciam? Certamente… mas estas “reuniões das mentes” não têm que ocorrer durante o processo de programação. Podem ocorrer durante sessões do planeamento, durante revisões de projeto, ou ao sentar-se em torno de uma tabela do lunch. Nós não devemos dispensar com o grupo que pesquisa defeitos e projetar; nós simplesmente não devemos forçar este para ocorrer no estágio do coding. Isso pode fazer mais danos do que bons.

O que é mais, das mentes a necessidade a mais creativa frequentemente um a medida do playtime - uma oportunidade de jogar ao redor com o código, as várias opções tentatively explorando e deixar one mente vagueiam livre. Isto pode ser difícil de fazer quando um outro programador está olhando sobre seu ombro. Apesar de tudo, que devemos nós fazer - explicar e discutir cada etapa tentative? Para uma mente creativa, isto pode ser stifling certamente.

CONCLUSÃO

No short, eu penso de que a evidência para a eficácia de programação do par é questionável e overblown. Eu penso também de que há uma razão boa acreditar que a programação do par pode stifle o processo creativo, em vez de o ajudar. Pode a programação do par ser útil? Certamente… Entretanto, quando forçado em cima dos povos, transforma-se ajustes todos de um “um tamanho” estratégia-e infelizmente, um único tamanho não pode possivelmente caber todos, não importa o que os salespeople dizem.

Article Source: http://www.articleset.com



About the Author

V. Berba Velasco Jr., Ph.D. is a senior electrical and software engineer at Cellular Technology Ltd (http://www.immunospot.com, http://www.elispot-analyzers.de, http://www.elispot.cn). The neighborhood children have referred to him as the “Crocodile Hunter” though, due to his impressive menagerie of magnificent arachnids. » Read more articles by V. Berba Velasco Jr., Ph.D.
You are welcome to publish or reprint this article free of charge, provided: