Theory of Software Development

In today’s Computer Sweden, Ivar Jacobsson plugs his company’s latest offerings and requests a theory of software development. I haven’t tried his latest products, so I won’t comment on them. They might be great. However, one thing that puzzles me about the article is the absence of anything concerning useful theories applicable for software development.

Ivar Jacobsson rails at the prevalance of practices but, at least in this article, doesn’t even come close to touching on any relevant theories. Instead, it seems to me that he promotes even more practices. I’m sure things will clear up for me once I get my hands on his latest toolbox. Unless, of course, I have to pay a lot of cash to get it, in which case I probably won’t get my hands on it.

In that case, I might just spend my time by learning a bit more from those who seem to come closer to a set of working theories useful for understanding software development work. Like Gregory Howell and Lauri Koskela, in their provocatively titled paper “The Theory of Project Management is Obsolete”. Or like Don Reinertsen, who uses queueing theory to understand certain aspects of getting stuff out the door. Or like Mary Poppendieck, who also likes lean thinking and has made her own attempt at translating those thoughts to our world. I’m not sure these three would necessarily agree with each other if they met, but they are trying to find new ways of understanding the theoretical underpinnings of development work.

Published by Tobias Fors

I'm a software management consultant. I help other people succeed with software development. In my work, I help teams and organizations be more effective and ship software.

2 replies on “Theory of Software Development”

  1. Is it only me or does Jacobson’s talk about “the truth about software development” freak someone else out?

    I’m all go for a more academical approach to research about software development, but it really scares me when Jacobson says that he has a theory and it was just there in front of him. First you have an idea, then you can theorize around that and build a hypothesis. If that hypothesis proves its value through research, you can say it’s a theory. With even more research you can then validate your theory.

    Jacobson uses these scientific terms but should realize that his method is anecdotal, and even if anecdotal methods can be used to validate or form theories, this should be done with care.

    So, what is the truth about software development? The answer is 42. (If you have no idea what I’m talking about, find the number on this wikipedia page:

Comments are closed.