Why is the topic almost always dichotomized into "waterfall" and "agile"?
Does "agile" these days simply mean "not pure waterfall"? If not, what are other life cycles?
I often bring this up because my introduction to the topic was in the 1990s through Steve McConnell's 1996 book "Rapid Development: Taming Wild Software Schedules". It lists a number of software development life cycles in chapter 7, "Lifecycle Planning". From the ToC these are:
Pure Waterfall • Code-and-Fix • Spiral • Modified Waterfalls • Evolutionary Prototyping • Staged Delivery • Design-to-Schedule • Evolutionary Delivery • Design-to-Tools • Commercial Off-the-Shelf Software
Yet those different approaches, and their respective advantages and disadvantages, are rarely mentioned.