Uma visão geral e análise bastante detalhadas da pesquisa sobre diferenças de produtividade é fornecida em dois artigos escritos por Steve McConnell :
O primeiro artigo ( Variações de produtividade ... ) declara:
... O estudo original que encontrou grandes variações na produtividade individual da programação foi conduzido no final dos anos 1960 por Sackman, Erikson e Grant (1968). Eles estudaram programadores profissionais com uma média de 7 anos de experiência e descobriram que a proporção do tempo inicial de codificação entre os melhores e os piores programadores era de cerca de 20 para 1; a proporção de tempos de depuração acima de 25 para 1; do tamanho do programa 5 para 1; e a velocidade de execução do programa é de 10 para 1. Eles não encontraram relação entre a quantidade de experiência de um programador e a qualidade ou produtividade do código.
Um exame detalhado das descobertas de Sackman, Erickson e Grant mostra algumas falhas em sua metodologia ... No entanto, mesmo depois de contabilizar as falhas, seus dados ainda mostram uma diferença de mais de 10 vezes entre os melhores programadores e os piores.
Nos anos que se seguiram ao estudo original, a descoberta geral de que "existem diferenças de ordem de magnitude entre programadores" foi confirmada por muitos outros estudos de programadores profissionais (Curtis 1981, Mills 1983, DeMarco e Lister 1985, Curtis et al. 1986 (Card 1987, Boehm e Papaccio 1988, Valett e McGarry 1989, Boehm et al 2000) ...
Este artigo também tem uma observação interessante:
Esse grau de variação não é exclusivo do software. Um estudo de Norm Augustine constatou que, em uma variedade de profissões - redação, futebol, invenção, trabalho policial e outras ocupações - os 20% das pessoas produziam cerca de 50% da produção, sejam eles touchdowns, patentes , casos resolvidos ou software (Augustine 1979).
O segundo artigo ( ... Qual a validade da pesquisa subjacente? ) Foi escrito principalmente para tratar da revisão crítica do primeiro por Laurent Bossavit :
No segundo artigo, na seção Um mergulho mais profundo na pesquisa “10x”, McConnell verifica novamente mais detalhadamente as referências usadas no primeiro artigo e conclui:
... Ao revisar essas citações mais uma vez ao escrever este artigo, concluí novamente que elas apóiam a conclusão geral de que existem diferenças de produtividade em 10x entre os programadores. Os estudos envolveram coletivamente centenas de programadores profissionais em diversas atividades de programação.
... o corpo de pesquisa que apóia a afirmação de 10x é tão sólido quanto qualquer pesquisa realizada em engenharia de software. Os estudos que apóiam a alegação de 10x não estão singularmente sujeitos à limitação metodológica descrita na Figura 1, porque estão estudando a própria variabilidade individual (ou seja, apenas o lado esquerdo da figura). O Bossavit não cita nem mesmo um estudo - defeituoso ou não - que contraria a afirmação de 10x, e eu também não vi nenhum desses estudos. O fato de nenhum estudo ter produzido descobertas que contradizem a afirmação de 10x fornece ainda mais confiança na afirmação de 10x. Quando considero o número de estudos realizados, em conjunto, considero a pesquisa não apenas sugestiva, mas conclusiva - o que é raro na pesquisa de engenharia de software.
Por uma questão de integridade, a lista de referências usadas nas variações de produtividade ... também é citada abaixo:
Referências
Agostinho, NR 1979. "Leis de Agostinho e principais programas de desenvolvimento de sistemas". Revisão de gerenciamento de sistemas de defesa: 50-76.
Boehm, Barry W. e Philip N. Papaccio. 1988. "Entendendo e controlando os custos de software". Transações IEEE em Engenharia de Software SE-14, no. 10 (outubro): 1462-77.
Boehm, Barry, et al., 2000. Software Cost Estimation with Cocomo II, Boston, Mass .: Addison Wesley, 2000.
Boehm, Barry W., TE Gray e T. Seewaldt. 1984. "Prototipagem versus especificação: uma experiência de multiprojeto". Transações IEEE em Engenharia de Software SE-10, no. 3 (maio): 290-303. Também em Jones 1986b.
Card, David N. 1987. "Um programa de avaliação de tecnologia de software". Tecnologia da informação e software 29, no. 6 (julho / agosto): 291-300.
Curtis, Bill. 1981. "Substanciando a variabilidade do programador". Anais do IEEE 69, no. 7: 846.
Curtis, Bill, et al. 1986. "Psicologia de Software: A Necessidade de um Programa Interdisciplinar". Anais do IEEE 74, no. 8: 1092-1106.
DeMarco, Tom e Timothy Lister. 1985. "Desempenho do programador e os efeitos do local de trabalho". Anais da 8ª Conferência Internacional de Engenharia de Software. Washington, DC: IEEE Computer Society Press, 268-72.
DeMarco, Tom e Timothy Lister, 1999. Peopleware: Projetos Produtivos e Equipes, 2ª Ed. Nova York: Dorset House, 1999.
Mills, Harlan D. 1983. Produtividade de Software. Boston, Massachusetts: Little, Brown.
Sackman, H., WJ Erikson e EE Grant. 1968. "Estudos experimentais exploratórios comparando o desempenho da programação online e offline". Comunicações da ACM 11, no. 1 (janeiro): 3-11.
Valett, J. e FE McGarry. 1989. "Um resumo das experiências de medição de software no laboratório de engenharia de software". Revista de Sistemas e Software 9, no. 2 (fevereiro): 137-48.
Weinberg, Gerald M. e Edward L. Schulman. 1974. "Objetivos e desempenho em programação de computadores". Fatores humanos 16, no. 1 (fevereiro): 70-77.