QA / Software Testing

Difference between V-model and W-model in Software Testing

JIN

Jul 08, 2020

Table of contents

Table of contents

    How are V and W models different by definition?

    Both models sit within the broader category of plan-driven, sequential Software Development Life Cycles (SDLCs). They share the same core development phases, requirements, design, and implementation, but diverge sharply on when and how testing enters the picture.

    The V-model (Verification and Validation Model) maps each development phase to a corresponding testing phase. Development progresses down the left arm of the “V”; testing executes back up the right arm once coding is complete. Testing is planned early, but most of it runs late.

    The W-model extends the V-model by running testing activities in parallel with every development phase from day one. Development and testing advance together as two synchronized streams, forming a shape that resembles two overlapping Vs, hence the “W.” Rather than waiting for code to exist before testing begins, testers in the W-model start reviewing requirements, designs, and plans the moment each artifact is created.

    V-model

    What is V-model in Software testing?

    The V-model has been a cornerstone of software quality testing since its introduction in the 1980s and is widely adopted in industries where requirements are stable and documentation is critical, such as defense, aerospace, medical devices, and financial systems. Its name comes from the visual shape formed when development phases (the left arm of the “V”) are paired with their corresponding testing phases (the right arm).

    The V-model’s guiding principle is verification and validation: verification asks, “Are we building the product right?” (checking that each phase conforms to its specification), while validation asks, “Are we building the right product?” (checking that the final system meets user needs).

    Its sequence of steps is designed so that each phase builds on the completion of the preceding tasks, forming an upward-bent progression for maximum efficiency and execution accuracy.

    The verification phase includes

    Phase 1 – Business requirements analysis

    The team captures what the system must do through detailed discussions with stakeholders. Clear, unambiguous requirements are documented here, and this is also when acceptance test plans are first drafted, even though they won’t be executed until much later.

    Phase 2 – System design

    Engineers define the hardware, communication infrastructure, and high-level architecture needed to satisfy the requirements. System test plans are designed at this stage to validate the overall system once it is built.

    Phase 3 – Architectural design

    The system is broken into components, and the interactions between them are specified. Technical and financial feasibility are assessed. Integration test plans are drafted to verify that these components will communicate correctly once assembled.

    Phase 4 – Module design

    Each individual module or component is specified in detail, including its internal logic and interfaces with other modules. Unit test plans are written here to validate each module’s internal behavior in isolation.

    The coding phase includes

    Here, the actual coding of the system modules is taken up. Based on the program’s system and architectural requirements, the most suitable programming language is selected. Then the code is reviewed and optimized to ensure the delivery of the best performing, and unit testing is completed by the developers.

    The validation phase includes

    Phase 5 – Unit testing

    Executes the unit test plans written during module design. Tests individual components in isolation to confirm they behave according to their low-level specification. Not all defects can be caught here, but catching them early is significantly cheaper than finding them later.

    Phase 6 – Integration testing

    Verifies that the assembled modules communicate correctly with one another in accordance with the architectural design. Focuses on interfaces and data flow between components rather than internal logic.

    Phase 7 – System testing

    Test the complete, integrated system against the system design specification. Validates that the product functions correctly in its target environment and that all end-to-end scenarios work as expected.

    Phase 8 – Acceptance testing

    Executed in the client’s real environment to confirm the system meets the original business requirements. Typically, the final gate before delivery. Often includes User Acceptance Testing (UAT) performed by the client themselves.

    Advantages and disadvantages of the V-model

    Advantages Disadvantages
    • Simple, explicit process that is easy to follow and explain
    • Test planning begins at the requirements phase, and defects in specs are caught early
    • Every functional area has a corresponding testing phase
    • Comprehensive documentation at each stage
    • Works well for safety-critical projects with fixed, well-understood requirements
    • Not suited to projects where requirements change mid-cycle
    • No working software is produced until late in the lifecycle
    • Defects introduced during development may not surface until the testing phase
    • Expensive to return to earlier phases if problems are discovered late
    • Limited feedback loops, not iterative by design

    This is comparable to the shift-right approach in DevOps testing, which encourages the testers to analyze and wait until changes are deployed in production to find defects in unexpected real-life situations.

    With the same definition of each phase – Requirement Review, System Design, Architecture, Low-level Design- using the W model helps ensure that the testing of the product begins from the very first day of the product’s development.

    What is W-model in Software testing?

    The W-model was developed in direct response to the V-model’s most significant weakness: defects introduced during the requirements, design, and planning phases remain invisible until testing begins on the right arm of the V, often much too late. By the time a flawed requirement is discovered during acceptance testing, correcting it can cost 10–100 times more than if it had been caught during the requirements phase itself.

    The W-model solves this by making testing a continuous, parallel activity rather than a sequential follow-up. For every development activity, there is an immediate, corresponding testing activity happening simultaneously in a second stream. The result is a shape that looks like a double-V, a “W.”

    How the W-model works phase by phase

    Phase 1 – Requirements analysis + Requirements testing

    While developers and business analysts gather and document requirements, testers review them in parallel for ambiguity, contradiction, and testability. Acceptance test cases are planned and reviewed immediately. Requirements defects are caught before any design work begins.

    Phase 2 – System design + Design review

    As the system architecture is specified, testers perform design walkthroughs and review system test plans for completeness. Communication gaps and missing interface definitions are identified before implementation begins.

    Phase 3 – Architectural design + Architecture review

    High-level design documents are reviewed by testers for consistency with the system specification. Integration test strategies are planned and reviewed in parallel with the architectural work.

    Phase 4 – Module design + Unit test planning

    Low-level design specs are reviewed immediately. Unit test cases are written and reviewed in parallel with the design itself, ensuring testability is built in rather than bolted on.

    Phase 5 – Coding + Unit testing

    Coding and unit test execution run side by side. Developers fix defects that testers uncover immediately, shortening the feedback loop significantly compared to the V-model.

    Phase 6 – Integration, system, and acceptance test execution

    The two streams converge for higher-level testing. Because test plans were prepared in parallel throughout the project, execution is faster, more thorough, and less likely to surface surprises.

    Advantages and disadvantages of the W-model

    Advantages Disadvantages
    • Testing runs in parallel with development, and defects are found much earlier
    • Requirements, design, and documentation defects are caught before they propagate
    • No artificial division between “build” and “test” phases
    • Faster feedback to developers results in cheaper defect resolution
    • Reduces the risk of a surprise discovery during final testing
    • Significantly more complex to manage and coordinate
    • Requires experienced testers who can review design artifacts, not just execute tests
    • Doubles resource demand throughout the project lifecycle
    • Harder to track progress when two streams are running simultaneously
    • Less effective if the testing team is under-resourced or brought in late

    It embodies the shift-left testing approach, ‘test early and often’, to perform testing earlier in the lifecycle, thereby moving left on the project timeline.

    V-model vs. W-model

    Aspect V-model W-model
    Testing approach Sequential testing after development Testing runs parallel with development
    When testing begins Test planning begins early; test execution begins after coding Both test planning and review execution begin from day one
    Defect detection timing Mostly in the testing phases (right arm of the V) Continuously, at every phase, including requirements and design
    Cost of late defects Higher — requirement defects may surface very late Lower requirements and design defects are caught immediately
    Flexibility Low — scope changes disrupt the entire phase sequence Moderate — parallel testing provides earlier feedback for corrections
    Process complexity Relatively simple and straightforward to manage More complex — requires coordination of two simultaneous streams
    Resource requirement The testing team is largely idle during development phases Full testing team engaged throughout the entire lifecycle
    Team collaboration Developers and testers work in sequence — siloed handoffs Developers and testers collaborate continuously from the start
    Documentation Heavy, detailed plans are required at each phase before proceeding Heavy — same documentation depth, but reviewed immediately in parallel
    CI/CD compatibility Poor — sequential structure conflicts with continuous deployment Better — parallel testing streams align with continuous integration
    Risk management Risks are often identified late in the cycle Early, continuous risk detection at every phase
    Best suited for Fixed requirements, safety-critical, heavily regulated projects Complex projects where early defect prevention is critical

    When to use each model

    Choose the V-model when:

    • Requirements are fully defined and unlikely to change
    • The project is in a safety-critical or heavily regulated domain (medical devices, aerospace, defense, financial infrastructure)
    • Compliance and audit trails are mandatory, documentation must be exhaustive
    • The testing team is smaller or less experienced in static review techniques
    • The client relationship is contractual and scope-fixed
    • Budget and timeline are fixed, with no room for iterative adjustment

    Choose the W-model when:

    • Requirements are complex, detailed, or have a history of being misunderstood
    • The cost of finding defects late would be severe (large-scale enterprise systems, public-facing platforms)
    • An experienced testing team is available from day one of the project
    • The organization values collaboration between development and testing disciplines
    • Previous V-model projects suffered from late-stage surprises or significant rework
    • You want to gradually move toward shift-left practices without fully adopting Agile

    Relevance in modern DevOps and CI/CD

    Both the V-model and W-model were designed for plan-driven, sequential projects, which raises a fair question: are they still relevant in an era of Agile development, continuous integration, and cloud-native deployment?

    The answer is yes, but with an important nuance.

    The V-model remains dominant in regulated industries where iterative delivery conflicts with certification requirements. Medical device software regulated under IEC 62304, automotive systems developed to ISO 26262, and avionics software under DO-178C all require the structured documentation and phase-gated verification that the V-model provides. These industries cannot trade documentation for velocity.

    The W-model’s philosophy is embedded in modern DevOps — even if the model itself isn’t always named explicitly. The W-model’s core idea, that testing should happen in parallel with, and as early as, development, is exactly what modern shift-left testing practices advocate. In a CI/CD pipeline, every code commit triggers automated tests: unit tests run first, integration tests next, and end-to-end tests after deployment to staging. This is, in spirit, the W-model at machine speed.

    For organizations that must operate within plan-driven constraints but want to improve quality outcomes, the W-model is often the most practical step toward shift-left practices, requiring no change to governance structures or contractual frameworks, just earlier and deeper involvement of the testing team.

    Conclusion

    While it is true that the V model is an effective way to test and reveal results for dynamic test cycles, there is no scope for risk management and mitigation, especially in scheduling. In contrast, W models are more effective in catching defects early in the delivery pipeline and enable the development team to get an extensive view of testing. However, it’s important to remember that the W model is often compared to agile testing, where testing happens in parallel, which requires significant resources throughout the product cycle.

    Neither model is universally superior. The decision comes down to your project’s specific context: the stability of requirements, the capabilities of your testing team, the cost tolerance for late defects, and the regulatory environment you operate in. Teams migrating from purely sequential practices will often find the W-model a valuable and achievable intermediate step toward the continuous, parallel quality practices that modern software development demands.

    One must carefully choose a model that best fits the available pool of resources and the complexity of each project to deliver an ideal-quality product.


    Frequently Asked Questions (FAQs)

     

    The "W" refers to the visual shape of the model when drawn out. If the V-model looks like a single "V" (development going down the left arm, testing coming back up the right arm), the W-model places a second, overlapping "V" on top, representing the parallel testing stream. The combined shape resembles a "W."

    The W-model is a sequential, plan-driven methodology and is not inherently compatible with Agile's iterative, sprint-based approach. However, the underlying principle, testing and development running in parallel, aligns closely with Agile's quality practices. Teams working in Agile typically achieve the same outcome through continuous testing, automated test pipelines, and embedded QA in every sprint, rather than through the W-model's formal structure.

    The Waterfall model is purely sequential: each phase (requirements, design, build, test, deploy) completes before the next begins, and testing is a single late-stage activity. The V-model extends Waterfall by explicitly pairing each development phase with a corresponding testing phase, and by requiring that test plans be written during the corresponding development phase, not after. This means test planning starts much earlier in the V-model, even though execution still happens after coding is complete.

    The W-model supports shift-left testing far more directly than the V-model. Shift-left testing is the practice of moving testing activities earlier in the development lifecycle to find defects sooner and reduce fixing costs. The W-model formalizes this by running testing activities in parallel with every development phase. The V-model does shift test planning earlier (writing plans during design phases), but execution still occurs after development, which is a partial, not full, shift-left approach.

    The W-model produces the same types of documentation as the V-model: requirements specs, design documents, and test plans, but they are reviewed and validated in parallel rather than sequentially. In practice, this means the W-model may produce more defect reports and review notes during the early phases, but the overall documentation structure is comparable. The difference is in timing and coverage, not in documentation volume.

    Share this article

    ContactContact

    Stay in touch with Us

    What our Clients are saying

    • We asked Shift Asia for a skillful Ruby resource to work with our team in a big and long-term project in Fintech. And we're happy with provided resource on technical skill, performance, communication, and attitude. Beside that, the customer service is also a good point that should be mentioned.

      FPT Software

    • Quick turnaround, SHIFT ASIA supplied us with the resources and solutions needed to develop a feature for a file management functionality. Also, great partnership as they accommodated our requirements on the testing as well to make sure we have zero defect before launching it.

      Jienie Lab ASIA

    • Their comprehensive test cases and efficient system updates impressed us the most. Security concerns were solved, system update and quality assurance service improved the platform and its performance.

      XENON HOLDINGS