Coupon Accepted Successfully!


Software Life Cycle Models


The software life cycle is a general model of the software development process, including all the activities and work products required to develop a software system. A software life cycle model is a particular abstraction representing a software life cycle. Such a model may be:

  • activity-centered — focusing on the activities of software development
  • entity-centered — focusing on the work products created by these activities


Waterfall Model

This prescribes a sequential execution of a set of development and management processes, with no return to an earlier activity once it is completed. Some variants of the waterfall model allow revisiting the immediately preceding activity (“feedback loops”) if inconsistencies or new problems are encountered during the current activity.


Another variant of the waterfall model — the V-model — associates each development activity with a test or validation at the same level of abstraction. Each development activity builds a more detailed model of the system than the one before it, and each validation tests a higher abstraction than its predecessor.

Spiral Model

Spiral model addresses the weakness of the waterfall model, spiral model focuses on addressing risks incrementally by repeating the waterfall model in a series of cycles or rounds:

  • Concept of Operation
  • Software Requirements
  • Software Product Design
  • Detailed Design
  • Code
  • Unit Test
  • Integration and Test
  • Acceptance Test
  • Implementation

Test Your Skills Now!
Take a Quiz now
Reviewer Name