Team Productivity Variation in Software Development

Software experts have long observed that team productivity varies about as much as individual productivity does—by an order of magnitude [Mills 1983]. Part of the reason is that good programmers tend to cluster in some organizations and bad programmers in others, an observation that has been confirmed by a study of 166 professional programmers from 18 organizations [Demarco and Lister 1999].

In one study of seven identical projects, expended effort varied by a factor of 3.4 to 1 and program sizes by a factor of 3 to 1 [Boehm et al. 1984]. In spite of the productivity range, the programmers in this study were not a diverse group. They were all professional programmers with several years of experience who were enrolled in a computer-science graduate program. It’s reasonable to assume that a study of a less homogeneous group would turn up even greater differences. An earlier study of programming teams observed a 5-to-1 difference in program size and a 2.6-to-1 variation in the time required for a team to complete the same project [Weinberg and Schulman 1974].

After reviewing more than 20 years of data in constructing the COCOMO II estimation model, Barry Boehm and other researchers concluded that developing a program with a team in the 15th percentile of programmers ranked by ability typically requires about 3.5 times as many staff-months as developing a program with a team in the 90th percentile [Boehm et al. 2000]. The difference ...

Get Making Software now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.