The Evolution of Software Engineering and the Role of Development Models
The article traces the history of software engineering as a continual shortening of release cycles, discusses the persistent emergence of new development models—from the waterfall to spiral and iterative approaches—and highlights George Box’s insight that while all models are imperfect, the useful ones illuminate practice.
The development history of software engineering is essentially a history of continuously shortening software release cycles.
Practitioners have constantly battled uncertainty.
Software release cycles have shrunk from being measured in years to, in some companies, being measured in hours.
In terms of theoretical development, the field of software engineering management, like business management, has never ceased to produce new theories.
Since the late 1980s, we entered a flourishing era of methodologies, and to this day new methods or models appear roughly every three years.
The image is incomplete and omits some items.
The most classic is still the waterfall model; although it originated earliest, it has never disappeared.
The concept of iteration began with the spiral model and continues to this day.
This reminds me of three statements:
1. Essentially, all models are wrong, but some are useful.
This is said by the famous statistician George E. P. Box (Empirical Model‑Building and Response Surfaces, 1987).
2. Remember: all models are wrong; the practical question is how wrong they must be to become useless.
— from Empirical Model‑Building by Box and Draper.
3. The right question is: Is the model enlightening and useful for you or your organization?
— George E. P. Box, “Robustness in the strategy of scientific model building”, 1979.
Continuous Delivery 2.0
Tech and case studies on organizational management, team management, and engineering efficiency
How this landed with the community
Was this worth your time?
0 Comments
Thoughtful readers leave field notes, pushback, and hard-won operational detail here.