I was working on my website and saw the following quote come up in my quote list. I didn't know what waterfall programming meant, so I did a search for the quote. I find it interesting that my site (when it was still using Postnuke) came up in the Google results. Made me happy. But the article I found is an interesting read. The quote was actually part of a reader response to the article.
Part of the reason so many companies continue to develop software using variations of waterfall is the misconception that the analysis phase of waterfall completes the design and the rest of the process is just non-creative execution of programming skills.
The article is "Iterative vs. waterfall software development: Why don't companies get it?" by Bill Walton.
It discusses four methodologies for programming. I think I use the third one most often in my work, except that I rarely have a partner to work with.
- The iterative and incremental approaches involve a number of short cycles in which steps such as requirements gathering, coding, testing and deployment, are conducted to produce small parts of the final project. The software system grows incrementally, and user feedback can be used throughout the process.
- The waterfall philosophy is a strictly sequential approach in which a project is completed in a series of steps, such as analysis, design, coding, testing and deployment. Each step, such as requirements gathering, is undertaken only once and must be completed and verified before the next phase.
- Extreme programming is a software development approach built around rapid iterations, an emphasis on code writing and working closely with end users to achieve business results. The 12 basic practices of XP include continual testing and the idea that programmers should work in pairs. (See Computerworld QuickStudy.)
- Project Management Institute methodology involves recommended best practices that use a cycle of processes -- initiating, planning, executing, controlling and closing -- to manage a project's scope, time, costs, risks and so on.

