0% found this document useful (0 votes)
15 views23 pages

SDLC Waterfall

The document outlines two software development life cycle (SDLC) models: the Waterfall Model and the Prototype Model. The Waterfall Model is a linear and sequential approach with defined phases, suitable for projects with stable requirements, while the Prototype Model is iterative and feedback-driven, allowing for continuous user involvement and adaptability to evolving requirements. Key differences include user involvement, flexibility, and how requirements are handled in each model.

Uploaded by

Abhay Damalu
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PPTX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
15 views23 pages

SDLC Waterfall

The document outlines two software development life cycle (SDLC) models: the Waterfall Model and the Prototype Model. The Waterfall Model is a linear and sequential approach with defined phases, suitable for projects with stable requirements, while the Prototype Model is iterative and feedback-driven, allowing for continuous user involvement and adaptability to evolving requirements. Key differences include user involvement, flexibility, and how requirements are handled in each model.

Uploaded by

Abhay Damalu
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PPTX, PDF, TXT or read online on Scribd
You are on page 1/ 23

SDLC MODELS

WATERFALL MODEL
&
PROTOTYPE MODEL
LEARNING OBJECTIVES

By the end of this presentation, you will be able to:

 Understand the Waterfall Model: Introduction,


Phases, Advantages, Limitations and use cases.
 Understand the Prototype Model: Introduction,
Steps, Advantages, Disadvantages and use cases.
 Compare Waterfall and Prototype Models :
Identify key differences between the two models.
WATERFALL MODEL
SDLC MODEL
INTRODUCTION
• The Waterfall Model is one of the oldest and traditional, classical
and foundational models in software development.
• It was first introduced by Winston W. Royce in 1970.
• The Waterfall Model is a linear and sequential software
development methodology.
• It follows a set sequence of phases, where each phase must be
completed before moving on the next.
• Often compared to a "cascade," as the process flows downwards
like a waterfall.
PHASES OF WATERFALL MODEL
PHASES OF WATERFALL MODEL
PHASE 1 : REQUIREMENTS
OBJECTIVE : To understand and document the software requirements.
Activities:
• REQUIREMENT GATHERING: Gather requirements from stakeholders.
• REQUIREMENT ANALYSIS: Analyse and prioritize requirements.
• DOCUMENTATION: Document functional and non-functional requirements.
• APPROVAL: Obtain client/stakeholder approval.

OUTCOME: A detailed, signed-off requirement specification document.


-> Software Requirement Specification (SRS) document.
PHASES OF WATERFALL MODEL
PHASE 2 : DESIGN
OBJECTIVE : To create a system architecture that satisfies the requirements.
Activities:
• High-Level Design: A blueprint for the system, including its architecture and
major components. This includes decisions about platform, technologies,
and architecture design (client-server, database, etc.).
• Low-Level Design: Detailing of individual system components, including
algorithms, data structures, and databases.

OUTCOME : A detailed designed documentation.


-> System Design Specifications (SDS) document.
PHASES OF WATERFALL MODEL
PHASE 3 : IMPLEMENTATION (CODING)
OBJECTIVE : To convert the design documents into actual working code.
Activities:
• Code Development: Write the source code based on the design documents
(HLD & LLD).
• Module Integration: Combine different modules and components into the
overall system.
• Version Control: Use version control systems (e.g., Git) to manage code
changes and collaboration.

OUTCOME : A fully developed and integrated software system ready.


PHASES OF WATERFALL MODEL
PHASE 4 : TESTING
OBJECTIVE : To ensure the system works as intended and meets the
requirements.
Activities:
• Test Planning: Define test cases, strategies, and objectives.
• Test Execution: Perform various types of testing (unit, integration, system,
and regression testing).
• Bug Reporting: Identify, report, and fix defects or issues.

OUTCOME : A bug-free and reliable system ready for deployment.


PHASES OF WATERFALL MODEL
PHASE 5 : DEPLOYMENT
OBJECTIVE : To deploy the system into the production environment where
end-users can use it.
Activities:
• Deployment Planning: Prepare deployment strategies, schedules.
• Installation: The software is installed on the target machines or servers.
• Configuration: The system is configured to match the production
environment (e.g., setting up databases, user roles, etc.).
• Training and Documentation: End-users are trained, and operational
documentation is provided.

OUTCOME : Software is live, accessible to users, and fully operational.


PHASES OF WATERFALL MODEL
PHASE 5 : MAINTENANCE
OBJECTIVE : To maintain the system post-deployment, ensuring it continues to
work efficiently and is updated as necessary.
Activities:
• Bug Fixing: Address any issues or defects discovered after deployment.
• Updates & Patches: Implement updates for improvements, new features, or
regulatory changes.
• Monitoring: Track system performance and optimize as needed.
• Technical Support: Provide ongoing support to users for issues and
troubleshooting.

OUTCOME : A stable, optimized system that continues to meet user needs and
requirements.
FEATURES OF WATERFALL MODEL
• Linear and Sequential: Each phase is completed before moving to the next,
ensuring clear progress.
• Clear Documentation: Emphasis on detailed documentation at every stage.
• Defined Phases: Distinct and well-defined phases: Requirements, Design,
Implementation, Testing, Deployment, and Maintenance.
• Easy to Manage: Due to its structured nature, it’s easy to manage and track
progress.
• Simple to Understand: Its straightforward process makes it suitable for small,
well-defined projects.
• Early Planning: All requirements are gathered upfront, making project scope
and goals clearly defined from the start.
ADVANTAGES OF WATERFALL MODEL
• Simple and easy to understand.
• Clear structure with defined phases.
• Easy to manage and track progress.
• Strong documentation at each stage.
• Works well for small to medium-sized projects.
• Suitable for projects with stable requirements.
• Predictable timelines and milestones.
LIMITATIONS OF WATERFALL MODEL
• Not Flexible
• Late Testing
• Assumes Complete Requirements Upfront
• No Iterations
• Lack of adaptability
• Limited/No Feedback
• Not Suitable for Complex Projects
WHEN TO USE
• Well-understood Requirements
• Very Little Changes Expected
• Small to Medium-Sized Projects
• Predictable
• Regulatory Compliance
• Client Prefers a Linear and Sequential Approach
• Limited Resources
• Projects with fixed timelines and budgets
• Customer feedback not required
INTRODUCTION
• The Prototype Model is a software development approach where a preliminary
version of the system is built, tested, and refined based on user feedback in iterative
cycles.
• The Prototype Model emerged in the 1980s as a response to the limitations of the
Waterfall Model, addressing the need for more user feedback and flexibility during
development.
• Unlike the Waterfall Model, which follows a linear progression, the Prototype Model
allows for iterative revisions and continuous user input throughout development.
• This model is used when the customers do not know the exact project requirements
beforehand.
• Helps in clarifying requirements and refining the product through multiple iterations.
• In this model, a prototype of the end product is first developed, tested, and refined
as per customer feedback repeatedly till a final acceptable prototype is achieved
which forms the basis for developing the final product.
STEPS OF PROTOTYPING MODEL
STEPS OF PROTOTYPING MODEL
• Step 1: Requirement Gathering and Analysis: This is the initial step in designing a prototype
model. In this phase, users are asked about what they expect or what they want from the
system.
• Step 2: Quick Design: This is the second step in the Prototyping Model. This model covers
the basic design of the requirement through which a quick overview can be easily described.
• Step 3: Build a Prototype: This step helps in building an actual prototype from the
knowledge gained from prototype design.
• Step 4: Initial User Evaluation: This step describes the preliminary testing where the
investigation of the performance model occurs, as the customer will tell the strengths and
weaknesses of the design, which was sent to the developer.
• Step 5: Refining Prototype: If any feedback is given by the user, then improving the client’s
response to feedback and suggestions, the final system is approved.
• Step 6: Implement Product and Maintain: This is the final step in the phase of the
Prototyping Model where the final system is tested and distributed to production, here the
program is run regularly to prevent failures.
ADVANTAGES OF PROTOTYPING
MODEL
• Early User Feedback : Users can interact with early versions of the software,
providing valuable input.
• Improved Requirements Understanding : Helps clarify and refine
requirements by building prototypes that evolve based on feedback.
• Better User Involvement : Users play a more active role in the development
process, ensuring the final product meets their expectations.
• Faster Delivery of Core Features: Prototype development focuses on essential
features, allowing quicker delivery of a usable product.
• Reduced Risk of Failure : Continuous testing and feedback minimize the risk of
building something that doesn't meet user needs.
DISADVANTAGES OF PROTOTYPING
MODEL
• Increased Costs : Multiple iterations and frequent changes to the prototype
can lead to higher development costs.
• Potential for Misleading Prototypes : Early prototypes might not represent
the final product accurately, leading to unrealistic user expectations.
• Incomplete Features: Prototypes often focus on specific functionalities,
potentially leaving important features unfinished or untested.
• User Expectations: Continuous iterations and updates can raise user
expectations, making it difficult to finalize the product on time.
• Overemphasis on User Feedback: While user feedback is crucial, relying too
heavily on it might lead to frequent scope changes, delaying the final product.
WHEN TO USE
• Unclear or Evolving Requirements
• User Feedback is Crucial
• High Risk of Misunderstanding Requirements
• Complex Systems
• Projects Requiring Early Testing
SUMMARY
• Approach:
• Waterfall: Linear, sequential process.
• Prototype: Iterative, feedback-driven process.
• User Involvement:
• Waterfall: Limited, mainly at the start and end.
• Prototype: Continuous throughout development.
• Requirements:
• Waterfall: Fixed and defined upfront.
• Prototype: Evolve based on user feedback.
• Flexibility:
• Waterfall: Low flexibility to change.
• Prototype: High flexibility for changes.

You might also like