Part 4. Repositioning Software Engineering

Software craftsmanship is not a replacement for software engineering, but rather a complement to it. Software engineering emerged to solve the problem of creating really large, multiple-year systems development projects such as air traffic control systems. Software craftsmanship is an acknowledgment that, for smaller applications, all we have ever needed was to give the application to a few good developers. Scaling down software engineering to deal with smaller problems is just as hard as scaling up the craftsmanship approach—and just as inappropriate.

Repositioning software engineering is necessary because one of the classical problems in software engineering has been getting engineers to use effective ...

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.