January 28, 2004 - That dirty little secret about programmer productivity

Bill de Hora reacts to Jon Udell's TDD-article and observes that the 50% of time spent on coding, which the article quotes, would be a number to be proud of. In a non-TDD environment the number ends up closer to 20%. And what is worse: in the non-TDD environment the efforts in the other 80% of time/effort are entirely transient with no lasting assets to benefit from in the future.

Moving from 20% productivity to 50% is good in anybody's book. And as Bill states: "[it is] compounded by the fact that anyone else can run and read the tests to understand how the system actually behaves, at any time in the future, and by the fact that an evolving test suite along with refactoring continually defers the day when you cannot easily add new features and capabilities, because you fear breaking what's already there."

So the question is how much better can it get when all these benefits can be obtained in less than 50% of a productive developer's time.

I have uploaded a spreadsheet that models the monitary savings that can be expected. It disregards the benefits of longterm maintainability, improved quality and other factors that Bill points out. It simply measures the dollar impact of improving productivity of the producers. Our customers confirm that productivity is an issue they worry about, although their estimates about their current situation vary significantly.

In the spreadsheet I have used numbers consistent with Bill's post for the first two scenario's. Feel free to play with the numbers and see which ones best model your experience and circumstances.

I came across the Thoughtworks study which can let you compare your assumptions with those obtained in some real projects.

Posted by Mark DeVisser at January 28, 2004 01:54 PM

Trackback Pings

TrackBack URL for this entry:


Post a comment

Remember Me?