In this article, the author cast the software engineering process into the function-behavior-structure framework and thus into the broader framework of engineering design. By doing so, we can draw some lessons about the state of our favorite engineering discipline. The most important lesson might be that many of the analogies we've drawn from other engineering disciplines, especially civil engineering, are somewhat flawed or biased.
No takes yet. Share an insight, caveat, or question.
Philippe Kruchten (2005) studied this question.
Synapse has enriched 5 related papers. Consider them for comparative context: