Waterfall model, advantages, disadvantages, and examples in software engineering

Waterfall model, advantages, disadvantages, and examples in software engineering

In this tutorial, we will answer the following questions.

  1. What is waterfall model?
  2. Advantages and disadvantages of waterfall model.
  3. Examples of the waterfall model.

What is Waterfall model?

Waterfall model is a software model that can be adapted to produce the software. The main thing is that if software team adapt the waterfall model for the production of software than a proper detailed planning and proper accurate work is needed in every phase of the waterfall model. This is because while following the waterfall model, software team is not allowed to move to the previous phase.

What are phases of waterfall model?

waterfall software model

Figure: waterfall model.

1. Requirement gathering and analysis

In this phase, all the detailed requirements are gathered from the customer who wants to develop the software. After getting the requirements, system analyst analyses the requirements that whether requirement can be fulfilled or not. If customer requirements can be fulfilled than whether these requirements are fulfilled within budget or out of the budget. After this software team moves to the design phase.

2. Design

Before starting the design, software team completely gathered all the detailed requirement from the customer and requirement analysis is also completed. In the design phase, software team designs the software. Different diagrams are also drawn in this phase for software. Some of these are used the class diagram, activity diagram, data flow diagram, state transition diagram etc.

When a team is completely satisfied with the proposed design, then move to the next phase.

3. Implementation

Before starting implementation, software team completely design the system and now ready to develop the system. Programs are written and all the designed is converted into computer programs, collectively called software.

When the team is completely satisfied with the developed software, then move to the next phase.

4. Testing

Before starting testing, software team completely developed all the software. Now its time to test the software by using different software testing techniques. Most common are white box, black box, and gray box testing techniques.

When the team is completely satisfied with the testing and pass the software for implementation, then move to the next phase.

5. Deployment

Before starting deployment, software team completely tested all the software. Now its time to install or deploy the software in its working environment.

6. Maintenance

When software is deployed, there can be many bugs, faults or new updation needed. Maintenance includes debugging and new feature addition.

What are advantages of waterfall model?

  • Good for small projects
  • Easy to use and follow
  • When you move to the next phase, you have a clear picture of all previous phases.

What are disadvantages of waterfall model?

  • Not useful for large project
  • If frequent requirement changes occur then it is a problem to manage.
  • There is a big problem if testing fails the software.

When to use waterfall model?

  • For small projects
  •  When requirements are clear
  • When customer involvement is less.
  • For low budget projects.

Alternatives to waterfall model are spiral model, incremental model and agile model etc.


Fazal Rehman Shamil Click Here to Know More
Instructor, Researcher, Blogger, SEO Expert, Poet and Publisher of International Journal Of Software, Technology & Science ISSN : 2616 - 5325
Dear Professors and Resarchers!You are welome to Cite these tutorials in your research or slides etc. Please don't forget to mention the reference of website. Copy Paste of text is strcitly forbidden. Images can be reuse because images are protected with watermark.

Leave a Reply

Your email address will not be published. Required fields are marked *