Alcuni progetti software sono per loro natura così grandi che non potrebbero essere fatti in un tempo ragionevole da un piccolo gruppo. Un esempio di questo sarebbe un grande sistema operativo o un prodotto di database.
È davvero una questione di matematica. Ad esempio, ricordo un sistema operativo standard piuttosto semplice con il sistema operativo standard di 2,5 milioni di righe. Supponendo che un programmatore possa produrre 100 linee di codice al giorno debugate, testate e pronte per la produzione (molto ottimistiche), allora ci vorrebbero 25.000 giorni per una persona o 68,5 anni per 7 giorni alla settimana!
Nella gestione del progetto ci sono metodi per ottimizzare le dimensioni del team rispetto alla durata del progetto per ridurre al minimo i costi. Ovviamente la necessità di raggiungere rapidamente il mercato spesso spinge le aziende a mettere più persone su un progetto rispetto a quelle ottimali da una prospettiva di costo, al fine di tentare di farlo fare più velocemente.
Se possibile su piccoli progetti è generalmente meglio mantenere la squadra più piccola che più grande. In questo modo c'è meno tempo perso in amministrazione, riunioni, ecc. Ed è più facile assicurare che tutti capiscano la visione e restino sulla stessa pagina.
Un lavoro fondamentale che discute di questi problemi è il libro The Mythical Man-Month: Saggi sull'ingegneria del software di Fredrick Brooks.