3.3. Life-cycle Models

Some projects attempt to follow a sequence of phases like those identified above in linear fashion. They perform each stage before moving on to the next. This is commonly referred to as a waterfall type approach or life-cycle (Sommerville, 2001), since the project proceeds like water falling over a series of rocky outcroppings, never going back to a previous level. The waterfall approach promises linearity and predictability to tightly control the software process.

In practice, the waterfall approach may not provide the most efficient life-cycle model for every application. The waterfall model assumes that you can thoroughly uncover and understand every detail at every stage so that you never need to revisit it. This requires ...

Get Planning Smarter: Creating Blueprint-Quality Software Specifications now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.