Waterfall Process vs. Incremental Process

Read this article, which compares the two broad processes for developing software. Then, select one of the methodologies (SDLC, RAD, Agile, Lean) you read about in Chapter 10 and do further research on the state of the art for that particular methodology. Write a four-six paragraph essay that describes the methodology you chose, your research findings, and the types of projects that use that methodology.

Waterfall process

A waterfall process is one where all of the work is done by the team, and when it is complete, it is delivered to their customer(s). With a waterfall, the water doesn't do anything useful until after it falls off the end of the cliff – and by then it's too late to climb out of the barrel if you change your mind. You don't know if you'll hit a rock until you reach the bottom of the waterfall. The larger the waterfall, the larger the risk, and the bigger the mess if you do hit a rock.

The same is true for waterfall software processes – we decide what to do, we develop the solution, and then we deliver it. We don't revisit our decisions. Once the decisions are made, we're in the barrel and falling, and we won't know if our software will succeed until after we deliver it. The risk of failure is proportional to the amount of money and time spent before delivering the software to our customer.