Chapter 4. Finding a Better Metaphor Than Software Engineering

We need a new metaphor because we have solved most of the mechanical challenges that used to face developers. As we have moved from writing in assembler on memory-limited devices to using high-level languages, the intellectual bookkeeping challenge of deciding how to make the best use of available memory has been replaced with the challenge of clearly expressing the design intention to the rest of the team so that the system can evolve. Over time, then, the nature of the challenges facing software development projects has changed, and the expectations that we have for software are drastically different.

Our customers' expectations have also changed. Initially, they were happy with whatever ...

Get Software Craftsmanship: The New Imperative now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.