DEV Community

Cover image for SDLC MODELS
Vinoth Kumar
Vinoth Kumar

Posted on

SDLC MODELS

WATERFALL MODEL : is a traditional software development methodology that follows a linear, phase-by-phase approach, where each phase must be completed before moving to the next. It does not allow backtracking and permits only minimal changes once a phase is completed. The model is simple, well-structured, and easy to manage, offering high predictability and clearly defined milestones throughout the development process.

FEATURES OF WATERFALL MODEL :

  1. Sequential Approach - Development follows a linear, step-by-step process where each phase is completed before moving to the next.
  2. Document-Driven Process - Detailed documentation is created at every stage to clearly define requirements, design, and progress.
  3. Quality Control - Strong emphasis is placed on verification and testing to ensure each phase meets its defined requirements.
  4. Detailed Planning - The project scope, schedule, and deliverables are carefully planned and monitored throughout the lifecycle.

REQUIREMENT ANALYSIS : phase focuses on clearly understanding and documenting the customer’s needs.

DESIGN : The requirements from the SRS are converted into a system design that can be implemented in code.

  1. High-Level Design (HLD): Defines the overall system architecture, major components, and their interactions.
  2. Low-Level Design (LLD): Provides detailed design of each component, including logic and data flow, to guide developers during coding.

DEVELOPMENT : Ensures that the integrated software functions correctly and is successfully delivered for real world use.

  • **Testing : **After unit testing, software modules are integrated incrementally and tested at each stage. Once all modules are successfully integrated, full system testing is performed to ensure the system functions as expected.

DEPLOYMENT : After successful testing, the software is deployed to a live environment for end users. This phase includes environment setup, user training, and final checks to ensure smooth operation in real world conditions.

MAINTENANCE : Ensures the software continues to function effectively after deployment.

  • Corrective Maintenance : Fixes errors found after release.
  • Perfective Maintenance : Enhances features based on user needs.
  • Adaptive Maintenance : Updates software to work in new environments, such as new hardware or operating systems.

Top comments (0)