← Back to Home

Software Development Life Cycle (SDLC)

Software Development Life Cycle (SDLC) is a structured process that defines the phases involved in planning, building, testing, deploying, and maintaining software. SDLC answers: “How is software built from idea to production?”

1. Definition

SDLC is a structured process that defines the phases involved in planning, building, testing, deploying, and maintaining software.

2. Purpose of SDLC

  • Provide a systematic approach to software development
  • Ensure predictable and controlled delivery
  • Improve quality and reduce risk
  • Define roles, responsibilities, and deliverables
  • Enable effective planning and tracking

3. Phases of SDLC

3.1 Requirement Analysis

Activities

  • Gather business and user requirements
  • Identify functional and non-functional needs

Manual Tester Role

  • Review requirements for clarity and completeness
  • Identify ambiguities and gaps
  • Ask “what-if” and edge-case questions

Deliverables

  • BRD / FRS / User Stories

3.2 Design

Activities

  • System architecture design
  • Database and interface design

Manual Tester Role

  • Participate in design walkthroughs
  • Identify testability issues
  • Prepare high-level test scenarios

Deliverables

  • Design documents, wireframes

3.3 Development

Activities

  • Coding and unit testing

Manual Tester Role

  • Understand feature behavior
  • Prepare detailed test cases
  • Review test cases internally

Deliverables

  • Source code, unit test results

3.4 Testing

Activities

  • Execute test cases
  • Log defects
  • Re-test and regression test

Manual Tester Role

  • Validate requirements
  • Perform functional and non-functional testing
  • Provide quality status

Deliverables

  • Test execution reports
  • Defect reports

3.5 Deployment

Activities

  • Release software to production

Manual Tester Role

  • Support UAT
  • Perform smoke testing
  • Provide release recommendation

Deliverables

  • Release notes
  • Sign-off documents

3.6 Maintenance

Activities

  • Bug fixes and enhancements

Manual Tester Role

  • Validate fixes
  • Perform regression testing
  • Support production issues

Deliverables

  • Updated test cases and reports

4. SDLC Models (Overview)

  • Waterfall Model
  • V-Model
  • Agile Model
  • Iterative Model

(Each model will be covered separately.)

5. SDLC vs STLC

  • SDLC → Overall software development process
  • STLC → Testing-specific lifecycle within SDLC

6. Importance of SDLC for Manual Testers

  • Understand where testing fits
  • Plan testing activities early
  • Collaborate effectively with developers
  • Reduce defects and cost

7. Real-Time Example

If requirement analysis is weak:

  • Test cases become unclear
  • Defects increase in later phases
  • Cost of defects rises

8. Common Mistakes

  • Assuming testing starts only after development
  • Not participating in early SDLC phases
  • Ignoring requirement reviews

9. Interview-Ready Answers

Short answer:

SDLC is a structured process that defines the phases involved in developing and maintaining software.

Detailed answer:

SDLC outlines the complete lifecycle of software development, from requirement analysis to maintenance, ensuring quality, predictability, and risk control.

10. Key Takeaway

Manual testers add maximum value when they are involved early and throughout the SDLC.