What is SDLC or Waterfall Model?
Waterfall Model or SDLC, introduced in 1970 by Winston Royce, is a sequential model
divided into different phases of software development activity. Each phase is designed for
performing specific activity during SDLC phase.
Different Phases of Water-Fall Models
Different phases of Software
Activities performed in each stage
Development Cycle
Requirement Gathering
stage
Design Stage
During this phase, detailed requirements of the
software system to be developed are gathered from
client
Plan the programming language like Java, PHP, .net
or database like Oracle, MySQL, etc.
Or other high-level technical details of the project
After design stage, it is built stage, that is nothing but
Built Stage
coding the software
Test Stage
In this phase, you test the software to verify that it is
built as per the specifications given by the client.
Deployment stage
Deploy the application in the respective environment
Maintenance stage
Once your system is ready to use, you may later
require change the code as per customer request
When to use SDLC Waterfall Model
Waterfall model can be used when
Requirements are not changing frequently
Application is not complicated and big
Project is short
Requirement is clear
Environment is stable
Technology and tools used are not dynamic and is stable
Resources are available and trained
Advantages and Disadvantages of Waterfall-Model
Advantages
Dis-Advantages
Before the next phase of development,
each phase must be completed
Error can be fixed only during the
phase
Suited for smaller projects where
requirements are well defined
It is not desirable for complex project
where requirement changes frequently
They should perform quality
assurance test (Verification and
Validation) before completing each
stage
Testing period comes quite late in the
developmental process
Elaborate documentation is done at
every phase of the software's
development cycle
Documentation occupies a lot of time
of developers and testers
Project is completely dependent on
project team with minimum client
intervention
Clients valuable feedback cannot be
included with ongoing development
phase
Any changes in software is made
during the process of the development
Small changes or errors that arise in the
completed software may cause a lot of
problems