Fountain Model in Software Development Life Cycle (SDLC)

The Software Development Life Cycle (SDLC) is a structured process for building high quality and low cost software. It aims to deliver superior software within the estimated time and cost and also ensures that it meets or exceeds all customer expectations and demands.

SDLC is a framework that divides the software development process into phases with each phase performing a set of  well defined activities associated with it. The phases of SDLC include planning, defining, designing, building, testing, deployment and maintenance.

The Waterfall model was the first process model defined by an American scientist Winston W. Royce. The classical waterfall model follows the linear and sequential approach where every phase in the development process is discrete and has to be completed before the next phase starts with no phase overlapping.

However, some of the drawbacks of Waterfall model are as follows:

  • Freezing of requirements : The requirements needed to develop a product should be specified completely before the rest of the development begins.
  • No backtracking and feedback loops : Once a phase gets completed, there is no chance to go back to the same phase in case of any corrections or desired changes to it.
  • Not suitable for Object Oriented projects.


FOUNTAIN MODEL

Fountain Model Vs Water fountain analogy

  • The Fountain Model is a logically improved version of the waterfall model. 
  • It supports Iterative and Incremental approach to software development.
  • Fountain model is suitable for developing Object Oriented projects.
  • The phases and sequence order remains the same for both Waterfall and Fountain model however, at any time in fountain model, there can be a fallback into the previous phase providing an iterative fashion.
Fountain Model in SDLC
  • The fountain model is metaphorically compared with water fountain.
  • The fountain model allows for overlap of activities between development phases throughout the process development cycle, even though some activities cannot start before others.
  • The Object Oriented concepts offers benefits like reusability of code, reliability, maintainability, understandability and robustness.
  • Advantage of Fountain Model :
    • No Freezing of requirements.
    • Changes can be made as and when needed.
    • Incorporates the concepts of increments and iterations.

Post a Comment

0 Comments