Brooks's law

expressão

cultura de operaçõesprogramação

O princípio de que acrescentar pessoas a um projeto de software atrasado o torna ainda mais atrasado.

Novos integrantes precisam de adaptação e treinamento, e cada pessoa a mais multiplica os caminhos de comunicação, então reforçar a equipe na reta final costuma atrasar em vez de acelerar. Fred Brooks o extraiu da gestão do OS/360 da IBM, e ele ainda desmonta o mito de que esforço é intercambiável.

Acrescentar pessoas a um projeto de software atrasado o atrasa ainda mais é a observação de Brooks a partir da gestão do OS/360 na IBM, e o raciocínio é aritmético, não cínico. Pessoas novas precisam ser treinadas por quem já é produtivo, o que retira essas pessoas do trabalho, e cada pessoa adicional multiplica os canais de comunicação que precisam ser mantidos.

O custo de comunicação é a parte que escala mal. As conexões entre n pessoas crescem com o quadrado de n, então um time de quatro tem seis relações e um de doze tem sessenta e seis, todas precisando ser mantidas atualizadas. Enquanto isso, o custo do treinamento é pago de imediato e a produtividade chega semanas depois, que é exatamente o formato errado para um projeto já atrasado.

A lei tem limites reais, e Brooks os enunciou. Aplica-se a trabalho que não é limpamente particionável, já que, se uma tarefa de fato se divide em partes independentes, mais gente ajuda. Aplica-se a projetos atrasados, não a contratação em geral. E o ponto mais profundo do livro sobrevive ao slogan: não há bala de prata, porque a complexidade essencial do software está em entender o problema, e acrescentar pessoas não divide esse trabalho como divide a digitação.

Também conhecido como: Brooks's law, the Mythical Man-Month

Fontes

  • Brooks, 'The Mythical Man-Month' (1975)

Todos os verbetes do glossário