0
3.6kviews
V Model (Validation Model)
1 Answer
0
81views

The V-model is a type of SDLC model where process executes in a sequential manner in V-shape. It is also known as Verification and Validation model. It is based on the association of a testing phase for each corresponding development stage. Development of each step directly associated with the testing phase. The next phase starts only after completion of the previous phase i.e. for each development activity, there is a testing activity corresponding to it.

enter image description here

Verification: It involves static analysis technique (review) done without executing code. It is the process of evaluation of the product development phase to find whether specified requirements meet.

Validation: It involves dynamic analysis technique (functional, non-functional), testing done by executing code. Validation is the process to evolute the software after completion of the development phase to determine whether software meets the customer expectations and requirements.

So V-Model contains Verification phases on one side of the Validation phases on the other side. Verification and Validation phase joined by coding phase in V-shape. So it is called as V-Model.

Design Phase:

  • Requirement Analysis: This phase contains detailed communication with the customer to understand the requirement and their expectations. This stage is known as Requirement Gathering.

  • System Design: This phase contains the system design and the complete hardware and communication setup for developing product.

  • Architectural Design: System design is broken down further into modules taking up different functionality. The data transfer and communication between the internal modules and with the outside world (other systems) is clearly understood.

  • Module Design: In this phase the system break down into small modules. The detail design of system modules is specified, known as Low-Level Design (LLD).

Testing Phases:

  • Unit Testing: Unit Test Plans are developed during module design phase. These Unit Test Plans are executed to eliminate bugs at code level or unit level.

  • Integration testing: After completion of unit testing Integration testing performs. In integration testing, integrate modules and test the system. Integration testing performs on the Architecture design phase. This test verifies the communication of modules among themselves.

  • System Testing: System testing test the complete application with their functionality, interdependency, and communication. The System Testing test the functional and non-functional requirements of developed application.

  • User Acceptance Testing (UAT): UAT is performed in a user environment that resembles the production environment. UAT verifies that the delivered system meets user’s requirement and system is ready for use in real time.

When to use?

  • Where requirements are clearly defined and fixed.

  • The V-Model is used when ample technical resources are available with technical expertise.

Advantages:

  • This is a highly disciplined model and Phases are completed one at a time.

  • V-Model is used for small projects where project requirements are clear.

  • Simple and easy to understand and use.

Disadvantages:

  • High risk and uncertainty.

  • It is not a good for complex and object-oriented projects.

  • It is not suitable for projects where requirements are not clear and contains high risk of changing.

  • Once an application is in the testing stage, it is difficult to go back and change a functionality.

  • Poor model for long and ongoing projects.

Please log in to add an answer.