DEV Community

Cover image for SDLC: WaterFall Model
Rishabhraghwendra18
Rishabhraghwendra18

Posted on

SDLC: WaterFall Model

The Waterfall Model was the first Process Model to be introduced. It was widely used as it was easy to understand & implement .

WaterFall Model is also known as Linear-Sequential Life Cycle Model because work is done linearly - the next stage begins after completion of the previous stage . Output of the previous stage is the input of the next stage .

The name “WaterFall Model” is because the process looks like flowing steadily downwards - as shown below just like a waterfall .
WaterFall Model diagram

The Phases are:-

  • Requirement Analysis: In this phase all the requirements about the project are gathered . For eg features in projects , etc . All these requirements are well documented in the SRS ( Software Requirement Specifications ) document.

  • System Design: The SRS document is then used to design the system . Defining system requirements like hardware, modules (any),etc.

  • Implementation: After the System design phase is completely over . Implementation phase starts . Here each unit is individually developed . This stage goes on until all the requirements in the SRS document are not developed .

  • Testing & Integration: Each individual unit is tested for potential bugs or errors . After testing is successful , individual units are integrated together.

  • Deployment: Once the integration is done, the software is deployed to production servers.

Note: Before deploying to production , the project is tested again (we are not going into much details).

  • Maintenance: Project is continuously being monitored for any user inconvenience or bugs . Time to time new patches are released as a result of any bug fixes.

Projects best fit for WaterFall Model:

  • Requirements are clear
  • Technology used is not dynamic
  • Project is short

Advantages of WaterFall Model:

  • Model is simple & easy to understand
  • Clear defined milestones & deadlines
  • Properly documented , hence team is focused towards one common goal
  • Clearly defined stages
  • Easy to arrange tasks

Disadvantages of WaterFall Model:

  • No working software is made till end of life cycle
  • Client feedback is not taken at any stage.
  • Not good fit for changing project requirements
  • Not suitable for OOPs & long-on going projects
  • Difficult to track progress within a stage
  • Includes high amount of risk & uncertainty

So far, we have discussed the WaterFall model, it’s use cases, advantages & disadvantages.

Feel free to comment if you have any questions. All comments are greatly appreciated. If you like the blog , don’t forget to like it & share with your friends/colleagues.

To see my projects or to get in personal touch , follow me on:
Linkedin: https://www.linkedin.com/in/rishabh-sde/
GitHub: https://github.com/Rishabhraghwendra18

Thanks for reading,
Written with ❤️ & passion 🔥 by Rishabh Raghwendra

Discussion (0)