The spiral model is a software development model combining elements of both design and prototyping-in-stages, so it's a healthy mix of top-down and bottom-up concepts.

The spiral model was defined by Barry Boehm. This model was not the first model to discuss iteration, but it was the first model to explain why the iteration matters. As originally envisioned, the iterations were typically 6 months to 2 years long. This persisted until around 2000.

Each phase starts with a design goal (such as a user interface prototype as an early phase) and ends with the client (which may be internal) reviewing the progress thus far.

Analysis and engineering efforts are applied to each phase of the project, with an eye toward the end goal of the project.

So, for a typical shrink-wrap application, this might mean that you have a rough-cut of user elements (without the pretty graphics) as an operable application, add features in phases, and, at some point, add the final graphics.

Table of contents
1 Disadvantages
2 Advantages
3 See Also

Disadvantages

Advantages

  • Estimates (budget and schedule) get more realistic as work progresses, because the questions have been raised.
  • It is more able to cope with the (nearly inevitable) changes that software development generally entails.
  • Software engineers, who can get restless with protracted design processes, can get their hands in and working on a project earlier.

See Also

Software engineering, Waterfall model, Chaos model