Waterfall Process vs. Incremental Process

Delivering a subset of functionality (winner: it depends)

Some projects can't tolerate partial delivery. A pace maker that only regulates pulse, but can't be recharged is not useful. However, an RSS reader without archiving can be released now with feed-reading, and updated in the next release to include archiving. Many times we run into users who say things like "Until it does everything, I won't use it". This is most common when replacing a legacy application. Users are accustomed to a particular workflow, and have expectations about what they should be able to do. Change management is the discipline that focuses specifically on helping users manage changes in the way they do their work, and the tools they use to do it. We can often help users make a transition, even from a legacy system, in incremental steps. When we can't, a waterfall style delivery is usually better. The key thing to remember about incremental delivery is that the increments are as small as possible – which may mean "deliver it all in the first release".