waterfall (was Re: REPOST: Re: Book "python programming patterns". anybody read this??)

Gordon McMillan gmcm at hypernet.com
Mon Dec 31 09:40:18 EST 2001

Alex Martelli wrote:


> This is also known as the "waterfall model" of software development.
> It just doesn't work, as many decades of industry experience have amply
> shown.  

The "waterfall" model comes from the days when most development was 
mainframe batch systems. It "worked" (to some limited degree) in that 
environment because of the following conditions:

 - there were only a half-dozen or so basic building blocks in mainframe 
batch systems (sort, merge, select, extract...)
 - the scope of the projects (successfully managed through "waterfall") was 
generally tiny compared to the scope of the system in which they fit
 - there were senior people on the project who could balance the "top down" 
with some "bottom up", but keep it secret

Violate any one of those (too many technical choices; too big a system; or 
people who aren't very familiar with the system's context) and the resultant 
system was iteration 1 of an iterative prototype too expensive to complete.

More generally, you could describe a successful "waterfall" project as an 
iterative prototype that worked the first time through.

What Peter had right was that *thinking* about the problem is always 
necessary, even in an iterative prototype :-).

-- Gordon

More information about the Python-list mailing list