The software development process usually drives what users get. In the beginning, there was the Waterfall model based on a world where everything is known in advance and specs don't change (i.e. a figment). Users got something functional, just not what they wanted or needed by the time the software shipped. Then came various spiral flavors: Iterative, Agile, XP. Unlike waterfalls (which run in one