← Back to libraryQuestion 238 of 273
📋Software TestingBeginner

Role of Testing in Software Development Lifecycle

📖 Detailed Explanation:

In different development models, testing is positioned differently. Understanding these differences helps testers align with project workflows and communicate testing value. Early testing (as in Agile) is more cost-effective because fixes are cheaper when code is fresh. Late testing (as in Waterfall) is expensive because developers have moved on and context is lost.

🧭 Overview:

Testing plays different roles depending on the development methodology followed. The timing and scope of testing directly impacts cost and quality of the final product.

📎 Waterfall Model:
Description:

Sequential phases where each stage must be completed before the next begins

Testing Phase:

Testing occurs only after development is fully complete

Key Characteristics:
  • Testing occurs after development is complete
  • Defects are detected late and are costlier to fix (100x more expensive than detecting in development)
  • Linear approach with distinct phases: Requirements → Design → Development → Testing → Deployment
  • Full regression testing required before release
  • Testing team enters project when development team exits
Challenges:
  • Bugs found late require major rework
  • No feedback loop for developers during development
  • Assumptions from requirements may be wrong
  • High-risk delivery model
📎 Agile Model:
Description:

Iterative development with continuous feedback and testing

Testing Phase:

Testing runs in parallel with development in every sprint

Key Characteristics:
  • Testing runs in parallel with development
  • Each iteration (2-4 weeks) is validated independently
  • Continuous feedback improves quality
  • Faster defect detection and resolution
  • Testing team and developers work together
  • Build-test-feedback cycle is tight
Advantages:
  • Bugs fixed immediately while code is fresh
  • Lower cost of fixing (5-10x cheaper than Waterfall)
  • Customer feedback incorporated early
  • Risk is spread across iterations
📎 Comparison Table:
AspectWaterfallAgile
TimingAfter developmentDuring development
Cost of Fixing BugsVery High (100x)Low (5-10x)
FeedbackLate stage (month 6)Continuous (every 2 weeks)
IterationsSingleMultiple (bi-weekly)
Team CoordinationSequential (separate)Parallel (collaborative)
Risk LevelHighLow
🎯 Scenario-Based Interview Question:

You're assigned to test a banking application. In Waterfall, testing starts after 6 months of development. In Agile, testing happens every 2 weeks. A critical security vulnerability is discovered in month 3 of Waterfall vs month 1 of Agile. Compare the impact.

💡 Quick Tip:

🎯 Testing early = cheap fixes. Testing late = expensive fixes. Choose Agile for quality.

💡 Interview Focus:

Candidates are expected to understand cost-benefit of early testing and explain why modern teams prefer continuous testing models.