I’ve got to admit it’s getting better (Better)
It’s a little better all the time (It can’t get no worse)
Why do we expect productivity to increase? This goal seems to be a common expectation for management-driven Agile adoptions. Productivity is like motherhood and apple pie; who wouldn’t want more?
There is a story of a farm boy who went to the barn every morning and picked up the new-born calf. When asked why, he replied, “If I keep doing this every day, in a year I’ll be able to lift a thousand-pound cow!”
Just as there is a limit to our capacity to lift weights, there is a limit to the rate at which we can produce software.
Agile software development is not about productivity; it’s about working well. Yes, I think there are potential gains in productivity for most teams. Even then, the bulk of the gains are from “maximizing the work not done” rather than becoming more efficient programmers. We cannot increase our productivity indefinitely. More efficient programming is a slow process and comes not from trying to go faster, but by trying to do a better job. Productivity is one of the many things we’d like that are more likely achieved by an oblique approach.