Software Development Life Cycle (SDLC)
Phases of SDLC with Documentation
1. Requirement Gathering & Analysis
- Goal: Understand the software's purpose, features, and constraints.
- Activities:
- Stakeholder interviews
- Requirement workshops
- Feasibility analysis
- Documents:
- Business Requirements Document (BRD)
- Software Requirements Specification (SRS)
- Feasibility Study Report
2. Planning
- Goal: Develop a strategy for the entire project.
- Activities:
- Define scope, schedule, and budget
- Allocate resources
- Risk identification
- Documents:
- Project Plan
- Resource Allocation Plan
- Risk Management Plan
- Work Breakdown Structure (WBS)
3. System Design
- Goal: Translate requirements into architecture and design components.
- Activities:
- UI/UX mockups
- Database design
- Component and module definition
- Documents:
- High-Level Design (HLD)
- Low-Level Design (LLD)
- Data Dictionary
- UI/UX Design Specifications
4. Implementation / Coding
- Goal: Build the software components.
- Activities:
- Writing code
Software Development Life Cycle (SDLC)
- Version control and branching
- Code reviews
- Documents:
- Source Code Repositories
- Code Review Reports
- Build Scripts
- Config Files
5. Testing
- Goal: Validate functionality and performance.
- Activities:
- Manual and automated testing
- Bug tracking
- Documents:
- Test Plan
- Test Cases & Scripts
- Test Summary Report
- Bug Reports
6. Deployment
- Goal: Move the software to production.
- Activities:
- Final configuration
- Go-live
- Documents:
- Deployment Plan
- Release Notes
- User Guide / Installation Manual
- Change Log
7. Maintenance
- Goal: Keep software running smoothly.
- Activities:
- Bug fixes
- Updates
- Documents:
- Maintenance Logs
- Patch Reports
- SLA/Support Docs
- Monitoring Reports
Software Development Life Cycle (SDLC)
Popular SDLC Models (Including DevOps)
- Waterfall: Linear, phase-by-phase model.
- Agile: Iterative, focused on flexibility and collaboration.
- Scrum: Agile variant with roles and time-boxed sprints.
- Spiral: Iterative with risk analysis.
- V-Model: Each dev phase has a matching test phase.
- DevOps: Continuous development, integration, delivery, monitoring using automation.
Best Uses:
- Waterfall: Simple projects with fixed requirements.
- Agile: Fast-changing, customer-driven projects.
- Scrum: Agile teams with structured delivery.
- Spiral: Complex, high-risk projects.
- V-Model: High-quality, validation-driven systems.
- DevOps: Cloud-native, scalable, fast-release systems.
SDLC Flow Summary
1. Requirements -> 2. Planning -> 3. Design -> 4. Development -> 5. Testing -> 6. Deployment -> 7. Maintenance
Sample SDLC Document Folder Structure
SDLC_Documents/
01_Requirements/
SRS.pdf
02_Planning/
Project_Plan.docx
03_Design/
HLD_LLD.pptx
04_Development/
Source_Code/
05_Testing/
Test_Cases.xlsx
06_Deployment/
Release_Notes.pdf
07_Maintenance/
Patch_Logs.docx