SDLC Waterfall
SDLC Waterfall
WATERFALL MODEL
&
PROTOTYPE MODEL
LEARNING OBJECTIVES
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.