Alistair Cockburn highlights the commonalities between engineering and manufacturing. Apply it to software engineering and you might come across some problems that you have already experienced. A lot of times, as a software engineer, I like to show off how it is different from the others. But I cannot disagree with what Alistair says, especially not about the lessons learned from manufacturing. In all these years I have experienced that problems usually lie around in disconnect between the fantasized, proposed or recommended processes (even if adhoc) and reality of the team. Well, more reasons for me to believe that Theory Of Constraints can help software engineering a lot.