September 25, 2005 
US Edition | CDN Edition



Smaller software development teams much more effective
25 September, 2005
by Mark Cox

Putting a large team on a software project can cost millions of dollars more, yet save only a few days' delivery time, according to new research from software development consultants QSM. They say that while people have long suspected that larger teams operate more clumsily than small ones, there has been little quantifiable research on the impact of this phenomenon, until now.

QSM, which has been compiling detailed data across all major industry segments for nearly 20 years, said the study represents the latest three-year time slice for the data.

For a typical project of 40,000 source lines of code, QSM found that a 29-person team on average would take 191 staff months of effort and cost $2.3 million (at $12,000 per person month); for a project of the same nature, the 2.5-person team would have used 40 staff months, and cost $480,000. A dramatic savings of approximately $1.8 million is experienced with this small-team approach.

"Of course, if time to delivery is critical, a company might believe that the additional cost is worth it," commented Doug Putnam, managing partner at QSM, Inc. "But the savings in the schedule are relatively trivial, compared with the overall costs." The difference between the large- and the small-team approaches for the average project is only 12 calendar days, he noted, trimming the schedule from seven months to 6.6 months.

With the additional manpower and cost, one might question why the impact on schedule is so minimal.

"The answer is just one word: bugs," said Putnam.

Large teams created significantly more defects, more than six times as many, in fact. The increased volume of defects creates more rework cycles, more than giving back the schedule benefits of the additional people.

QSM maintains a metrics database of completed software projects. As of July 2005, the database contained more than 7,000 projects of all application types. In this study, the company analyzed 564 information systems completed since 2002.

They separated the projects into small teams (fewer than five people) and large teams (more than 20), and in the size range of 10,000 to 200,000 lines of code. After this filtering there were 29 projects with 20 or more people on the team and 120 projects with team size of five people or less. They then analyzed the data showing staffing, schedule, effort and defects versus the size of the system that was built. This portrayal also showed how much schedule compression was achieved by the larger teams as well as any insights into the associated cost and defect-creation side effects.

Michael Mah, managing partner of QSM Associates noted, "Anyone who has ever driven a car knows that maximum acceleration burns fuel at a significantly higher rate, and provides only marginal time compression in getting you to the final destination. Software projects seem to exhibit this same non-linear behavior."

Looked at in another way, "the strategy of throwing people at projects costs a lot in money and degrades reliability and gains very little in producing the product faster - well worth considering when you plan the next project. And, if you add staff, be sure to plan additional testing resources to handle the increased volume of defects," Mah said.

Additional information is available at www.qsm.com. and www.QSMA.com.








Printable Version | Email This Article To A Friend | Feedback | Contact Us

© Copyright 2005 Integrated mar.com Corporation