Software Testing in the Development Life Cycle

The QA VibeThe QA Vibe
5 min read

Welcome back to The QA Vibe*!*

In this chapter, I’ll take you through how software testing fits into the Software Development Life Cycle (SDLC) and how I’ve seen its role shift across different project types and industries.

πŸ—οΈ What Is the Software Development Life Cycle (SDLC)?

The SDLC is the process software teams follow to plan, develop, test, deploy, and maintain an application. It provides a framework for delivering quality software in a structured, predictable way. It includes specific phases that ensure the end result meets business and technical goals on time and within budget.

Having worked in domains like yard management, finance, and education, I’ve seen how the SDLC helps teams align technical efforts with real-world business goals like optimizing order & contract flows, managing financial transactions, or tracking student progress.

πŸ“Œ SDLC Phases and the Role of Testing

  1. Requirement Analysis
    Testers work with BAs and stakeholders to ensure all requirements are clear, testable, and complete.
    πŸ“ In a yard management solution I worked on, defining accurate GPS-based check-in rules was critical. We had to clarify every edge case to avoid misinterpretations.

  2. System Design
    Here, testers review architecture, workflows, and integration points to identify early risks.
    πŸ“ In a finance application, reviewing the design helped us spot a potential compliance gap with transaction logging before a single line of code was written.

  3. Implementation (Development)
    Developers build the system. QA prepares test cases, automation scripts, and test environments.
    πŸ“ In an education platform project, we began parallel test case design during dev, which helped us hit tight deadlines for semester-based releases.

  4. Testing
    QA executes test cases, logs bugs, performs regressions, and validates all business logic.
    πŸ“We have to thoroughly test and validate that the software works as intended.

  5. Deployment
    QA supports go-live activities with sanity checks, deployment validations, and rollback readiness.
    πŸ“ On a financial reporting module, I personally ran post-deploy smoke tests to ensure data integrity across dashboards and exports.

  6. Maintenance
    Regular updates, patch testing, and regression testing continue post-launch.
    πŸ“ Maintenance
    Regular updates, patch testing, and regression testing continue post-launch.
    πŸ“ For every project, there are ongoing updates, bug fixes, and support after deployment.

1. Waterfall Model

A sequential model where each phase must complete before moving to the next.
🟑 Testing is done only after development, which can delay defect detection.
βœ”οΈ Best suited for simple, unchanging requirements.

2. V-Model (Verification and Validation)

Each development phase has a matching testing phase.
🟒 Promotes early test planning and clear traceability.
βœ”οΈ Ideal for projects where quality is critical (e.g., healthcare, aerospace).

3. Iterative & Incremental Model

Software is built in small parts (iterations). Each piece is tested before the next is added.
🟒 Enables feedback and gradual improvement.
βœ”οΈ Works well for large systems with evolving requirements.

4. Agile Model

Testing is continuous. QA is part of the sprint team, collaborating closely with devs and BAs.
🟒 Encourages early feedback, frequent testing, and flexibility.
βœ”οΈ Perfect for projects with changing scope and fast releases.

5. DevOps & Continuous Testing

Here, testing is tightly integrated with development and deployment using CI/CD pipelines.
🟒 Requires strong test automation to ensure code is validated in real time.
βœ”οΈ Ideal for modern, scalable, fast-paced delivery environments.

πŸ§ͺ Testing Types Across the SDLC

Different levels of testing are applied as the system grows:

  • Unit Testing: Done by developers to test individual components or functions.

  • Smoke Testing: In my experience, we are doing the smoke testing within the dev handovers.

  • Integration Testing: Ensures that modules or services interact correctly.

  • System Testing: The entire application is tested as a whole to verify its behavior.

  • Regression Testing: Regression testing is performed to check whether the defect fix has any impact on other functionality. Before every production release, we do a complete regression testing on the system.

  • User Acceptance Testing (UAT): End users validate whether the system meets business requirements.

Real-World Tip: In one project I worked on, skipping proper integration testing between modules led to last-minute failures in payroll processing a crucial lesson in validating dependencies!

🧘 Static Testing: Reviews, Inspections & Walkthroughs

Not all testing involves running code.
Static testing includes:

  • Requirement Reviews – Helps uncover unclear or conflicting requirements.

  • Design Reviews – Identifies architectural flaws early.

  • Code Reviews – Catches syntax or logic errors before execution.

This saves time, reduces rework, and improves overall product quality.

πŸ” Key Lessons From Real Projects

  • In finance, precision and compliance are critical β€” even a rounding bug in interest calculation can escalate.

  • In yard logistics, real-time sync is key β€” we tested data syncs under poor network conditions.

  • In education systems, scalability matters β€” we tested load during admission season to avoid system crashes.

  • In employee tools, role-based access control must be airtight β€” we validated every permission combination manually and through automation.

πŸ’‘ Real-World QA Tips:

  • Start preparing test cases during the design phase.

  • Collaborate actively with developers and BAs during sprints.

  • Keep test documentation up-to-date.

  • Use risk-based testing to prioritize important features.

  • Balance manual and automated testing efforts wisely.

πŸ“Œ Key Takeaways:

  • Testing should be integrated throughout the SDLC, not just at the end.

  • The role of QA adapts depending on the development model used.

  • Understanding the SDLC helps QA teams plan smarter, test earlier, and reduce risk.

  • Continuous collaboration is the key to building reliable and scalable systems.

A tester’s value multiplies when they understand how testing fits into the SDLC and adapt based on project context. It’s not just about execution. It’s about collaboration, timing, and critical thinking.

πŸ”œ What’s Coming Next?

Test Design & Analysisβ€”From Requirements to Test Cases

I’ll walk you through how to break down requirements and design smart test scenarios that deliver real-world coverage.

0
Subscribe to my newsletter

Read articles from The QA Vibe directly inside your inbox. Subscribe to the newsletter, and don't miss out.

Written by

The QA Vibe
The QA Vibe

πŸ’» Software Quality Assurance Engineer | Sharing real-world testing insights, automation tips, and educational content for aspiring and professional QA folks. πŸ“š Passionate about clean code, bug hunting, and continuous improvement. πŸ“ Welcome to The QA Vibe – your go-to space for everything testing!