What is V-model and W-model in Software Testing


Friday December 8, 2017

Software development process is a method in which a product is made to undergo various stages of ideation, planning, development and testing before the final product is delivered. While each stage of the software development lifecycle (SDLC) has its own significance, testing is one such stage that is extremely crucial to ensure the delivery of an optimum quality product.

app testing

V model and W model are two of the most important models that are followed in the process of software testing. V Model, also known as Verification and Validation Model, is similar to waterfall model that follows a sequential path of execution of processes. Waterfall model is a linear sequential design approach in which the progress flows in one direction.

On the other hand, W model is a sequential approach to test a product and can be done only once the development of the product is complete with no modifications required to be done in between. This type of testing is most suitable for short-term projects as medical applications.

There are a number of other ways in which the two models are different from each other. Read on to know and understand the difference between the two models in detail.


Devised by the late Paul Rook in 1980’s, V-model was developed with an aim to improve the efficiency and effectiveness of software development. The model was accepted both in Europe and Asia as an alternative to waterfall model.

V-model is a step-by-step process in which the next phase begins only after the completion of the present phase. The steps in this process do not move in a linear way. Instead, the steps in this process are bent upwards. When this model is compared with the waterfall model, there are larger chances of emphasizing on products testing.

If this model is used to test a product, there is an assurance that the final product developed will be of high quality.

Phases of V-Model

The phases of V-model includes verification, coding and validation that are further divided into different stages.

1) Verification phase:

The verification phase of V-model includes business requirement analysis, system design, architectural design and module design.

  1. Business requirement analysis is the stage of having a detailed communication with the customer so that it gets easier to understand and comprehend his/her exact requirements. It is beneficial to complete acceptance test design planning at this stage.
  2. System design stage involves understanding and detailing out the entire hardware and communication setup for the product being developed. System test design can also be planned at this stage.
  3. Architectural design stage involves understanding the technical and financial feasibility of the product before it is actually developed. The focus is to understand the data transfer that will take place between internal and external modules.
  4. Module design stage focuses on designing a detailed plan for the internal modules of the system. Also known as low-level design (LLD), it is important to ensure that the design is compatible with other modules in system architecture and other external systems.

2) Coding Phase:

During this phase, the actual coding of the system modules is taken up. On the basis of system and architectural requirements of the program, the best suitable programming language is selected using which the coding is done at par with the coding guidelines and standards. The code is then reviewed and optimized to ensure the delivery of best performing product.

3) Validation phase:

 During this phase, the product undergoes various forms of testing.

  1. Unit testing is conducted at an early stage so that the bugs are eliminated at the starting stages of product development.
  2. Integration testing is done to check whether there is a valid and proper communication within the internal modules of the system.
  3. System testing enables the testing of the entire system and to ensure if the internal modules communicate effectively with the external systems.
  4. Acceptance testing is done to test a product in user’s environment and to check if it’s compatible with the other systems available in the environment.



Introduced by Paul Herzlich, W-model signifies the one-to-one relationship that exists between the documents and test activities. Using this model helps in ensuring that the testing of the product begins from the very first day of the product’s development. This model is known to deal with the problems that could not be resolved using V-model.

mobile app

Here’s a presentation video on “Addressing Today’s Challenges in Application Development” by Paul Herzlich.

Phases of W-Model

Using W-model helps in ensuring that each phase of the product development is verified and validated. W-model can be divided into a number of stages that includes:

  • Building test plan and test strategy to ensure that the product delivered is tested rigorously before delivery.
  • Identifying the scenario for the product.
  • Preparing the test cases using specification and design documents.
  • Reviewing the test cases and sharing an update on the basis of review comments.
  • The product is then sent for testing using various testing methodologies such as unit testing, integration testing and specification-based testing, etc.
  • Once the product is tested rigorously, it, then, undergoes regression test cycles and user acceptance testing.


While it is true that V model is an effective way to test and reveal results for dynamic test cycles, W models are more effective and help one get a broader view of testing. The connection that exists between various stages of testing is much clear with W Model.

One must choose wisely as the game is not about choosing a model but delivering an optimum quality product.


Hire a Tester


Call Us