Waterfall Model in SDLC
From Requirements to Maintenance: A Sequential Approach
Introduction
Waterfall model was introduced by Dr. Winston W. Royce in 1970.
The Software
1 Linear and sequential Development Life
approach. Key features Cycle (SDLC) is a
systematic process
used by software
Each phase must be completed engineers to design,
2 before the next one begins. develop, and test
high-quality
No overlapping or iteration software.
3 between phases.
Waterfall model is
one of the oldest and
most straightforward
SDLC models.
Overview
➢ The Waterfall Model is a sequential
design process, often used in
software development processes, in
Requirement Analysis
which progress is seen as flowing
steadily downwards (like a waterfall)
through several phases. System Design
➢ It was first model to be introduced
Implementation
and followed widely in Software
Engineering to ensure success of
the project. Integration and Testing
➢ In "The Waterfall" approach, the whole
process of software development is Deployment
divided into separate process phases.
Maintenance
Phases of Waterfall Model
1. Requirement Analysis:
✓ Gathering and documenting user
requirements.
✓ Involves stakeholder interviews,
surveys, and requirement workshops.
✓ Results in a detailed requirement
specification document.
2. System Design:
✓ Designing the system architecture
based on requirements.
✓ Consists of high-level design (HLD) for
3. Implementation:
overall system architecture and low-
✓ Writing code and converting design level design (LLD) for detailed
into an actual system. component design.
✓ Involves programming in chosen ✓ Results in design documents and
languages and adhering to coding diagrams.
standards.
✓ Results in source code and executable
software modules.
Phases of Waterfall Model
4. Integration and Testing:
✓ Combining and testing the system for
defects.
✓ Involves unit testing, integration
testing, system testing, and
acceptance testing.
5. Deployment: ✓ Ensures that the system works as
✓ Releasing the system to users. intended and meets requirements.
✓ Involves installation, configuration, and
initial user training.
✓ Results in a fully functional system in
the production environment.
6. Maintenance:
✓ Ongoing support and enhancements
post-deployment.
✓ Includes fixing bugs, implementing
new features, and performing system
updates.
✓ Ensures the system remains
functional and up-to-date over time.
Advantages
Simplicity: Better for Smaller Projects:
✓ Easy to Understand and ✓ Suitable for Projects with Well-
Manage: Defined Requirements:
The linear and sequential The Waterfall Model is ideal
nature of the Waterfall Model for projects where
makes it straightforward to requirements are well-
understand and follow. Each understood and unlikely to
phase has a clear beginning change. It ensures that these
and end, which simplifies requirements are thoroughly
project management and documented and adhered to
tracking progress. throughout the project.
Structured Approach:
✓ Clear Milestones: ✓ Clear Documentation: ✓ Minimized Risks:
Each phase serves as a The Waterfall Model emphasizes thorough For smaller projects with
milestone, providing a clear documentation at each phase. This stable requirements, the
indicator of progress and documentation serves as a reference Waterfall Model minimizes the
making it easier to manage the throughout the project and aids in risk of project scope changes
project's timeline. understanding and communication among and the complications that
stakeholders. come with iterative
development.
✓ Well-Defined Stages:
The model's stages are clearly defined,
providing a structured framework that ensures
all necessary steps are followed
systematically.
Disadvantages
Inflexibility:
▪ Difficulty in Handling Changes:
Late Testing:
Once a phase is completed, it is
▪ Defects Found Late:
challenging to go back and make
Since testing is performed after
changes. If new requirements or
the implementation phase,
issues are discovered later, they
defects and issues are often
cannot be easily incorporated
found late in the project
without significant rework.
lifecycle. This can lead to higher
▪ Rigidity: costs and more effort to resolve
The Waterfall Model follows a problems.
strict sequential order, which can
▪ Limited User Feedback:
be rigid and inflexible. This can Risk and Uncertainty: Users do not interact with the
be a problem in dynamic ▪ High Risk if Requirements Change: system until the testing phase.
environments where The model assumes that all This limits the opportunity for
requirements often change. requirements can be gathered upfront. If user feedback during
the project requirements evolve, the development, which can result
initial phases become obsolete, leading in a product that does not fully
to wasted effort and resources. meet user needs.
▪ Late Discovery of Issues:
Testing is done late in the development
cycle, meaning critical problems or bugs
may not be discovered until the system
is nearly complete. Fixing these issues at
such a late stage can be costly and time-
consuming.
Comparison with Other SDLC Models
❖ Agile Model ❖ Spiral Model
➢ Approach: Waterfall is ❖ V-Model
➢ Approach: Waterfall is
linear and sequential, while ➢ Approach: Both are linear,
linear, Spiral is iterative
Agile is iterative and but V-Model integrates
with focus on risk
incremental. testing phases parallel to
assessment.
➢ Flexibility: Waterfall is rigid development stages.
➢ Risk Management: Waterfall
and difficult to change, ➢ Testing: Waterfall tests
addresses risks late, Spiral
Agile is highly flexible and after development, V-Model
continuously assesses and
adaptive. tests at each development
mitigates risks.
➢ User Involvement: stage.
➢ Flexibility: Waterfall is
Waterfall has limited user ➢ Flexibility: Both are
rigid, Spiral is flexible and
involvement until testing; relatively inflexible, making
allows for changes
Agile involves users changes difficult.
throughout development.
continuously.
When to use Waterfall model
The Waterfall Model is
ideal for projects with ✓ Well-Defined Requirements: Use when project requirements
well-defined, stable are clear, fixed, and well-documented from the start.
requirements and clear ✓ Example: Government projects with strict compliance and
objectives. It's best predefined regulations.
suited for smaller
projects, government ✓ Stable Product Definition: Suitable for projects where the
contracts, and product definition is stable and unlikely to change.
construction projects ✓ Example: Construction projects or manufacturing processes
where a linear, step-by- with established blueprints.
step approach ensures
thorough documentation
✓ Sequential Process: Best for projects that naturally flow
and control. Use this from one phase to the next without the need for iteration.
model when technology ✓ Example: Hardware development where each phase builds
and tools are well on the completion of the previous one.
understood, and changes
are unlikely.
Real World Examples
✓ Defense Systems:
Requires strict adherence to
predefined requirements and
thorough documentation for
security and compliance.
✓ Banking Systems:
Needs a stable and well-
documented process due to
stringent regulatory requirements.
✓ Large-Scale Infrastructure
Projects:
Benefits from the linear, phase-
based approach where each phase's
completion is critical for the next.
Conclusion
✓ Best Fit: Ideal for projects with stable,
well-documented requirements. The Waterfall Model remains a
fundamental approach in software
development, especially suitable for
projects with well-defined and stable
✓ Advantages: Clear structure, comprehensive
documentation, and well-defined stages.
requirements. Its structured and
sequential nature ensures thorough
documentation, clear milestones,
and predictable outcomes. However,
✓ Challenges: Inflexibility and difficulty in
handling changes. its rigidity and difficulty in
accommodating changes highlight the
need to carefully assess project
requirements and context before
✓ Applicability: Suitable for industries like choosing this model.
construction, defense, aerospace, and
healthcare where requirements are stringent
and changes are minimal.
Question and
Answer