V-model - Verification and validation model - Process Modelling and SDLC

Q.  Which model is also known as Verification and validation model?
- Published on 22 Jul 15

a. Waterfall model
b. Big Bang model
c. V-model
d. Spiral model

ANSWER: V-model
 

    Discussion

  • Nirja Shah   -Posted on 06 Oct 15
    V - model
    - It is an SDLC model where execution of processes happens in a sequential manner in V-shape.

    - It is also known as Verification and Validation model.

    - It is an extension of the waterfall model and is based on association of a testing phase for each corresponding development stage.

    - It means that for every single phase in the development cycle there is a directly associated testing phase.

    - It is a highly disciplined model and next phase starts only after completion of the previous phase.

    V- Model design
    - In this model, the corresponding testing phase of the development phase is planned in parallel.
    - So there are Verification phases on one side of the .V. and Validation phases on the other side.
    - Coding phase joins the two sides of the V-Model.

    Verification Phases
    - Following are the Verification phases in V-Model:

    1. Business Requirement Analysis
    - This is the first phase in the development cycle where the product requirements are understood from the customer perspective.
    - It involves detailed communication with the customer to understand his expectations and exact requirement.
    - This is a very important activity and need to be managed well, as most of the customers are not sure about what exactly they need.
    - The acceptance test design planning is done at this stage as business requirements can be used as an input for acceptance testing.

    2. System Design
    - Once the clear and detailed product requirements are available, it's time to design the complete system.
    - It comprises of understanding and detailing the complete hardware and communication setup for the product under development.
    - System test plan is developed based on the system design.
    - Doing this at an earlier stage leaves more time for actual test execution later.

    3. Architectural Design
    - Architectural specifications are understood and designed in this phase.
    - Usually more than one technical approach is proposed and based on the technical and financial feasibility the final decision is taken.
    - System design is broken down further into modules taking up different functionality. This is also referred to as High Level Design (HLD).
    - The data transfer and communication between the internal modules and with the outside world (other systems) is clearly understood and defined in this stage.
    - Using this information, integration tests can be designed and documented during this stage.

    4. Module Design
    - In this phase the detailed internal design for all the system modules is specified, referred to as Low Level Design (LLD).
    - It is important that the design is compatible with the other modules in the system architecture and the other external systems.
    - Unit tests are an essential part of any development process and helps eliminate the maximum faults and errors at a very early stage.
    - Unit tests can be designed at this stage based on the internal module designs.

    Validation Phases
    - Following are the Validation phases in V-Model:

    1. Unit Testing
    - Unit tests designed in the module design phase are executed on the code during this validation phase.
    - This testing is the testing at code level and helps eliminate bugs at an early stage, though all defects cannot be uncovered by unit testing.

    2. Integration Testing
    - Integration testing is associated with the architectural design phase.
    - Integration tests are performed to test the coexistence and communication of the internal modules within the system.

    3. System Testing
    - System testing is directly associated with the System design phase.
    - System tests check the entire system functionality and the communication of the system under development with external systems.
    - Most of the software and hardware compatibility issues can be uncovered during system test execution.

    4. Acceptance Testing
    - It is associated with the business requirement analysis phase and involves testing the product in user environment.
    - Acceptance tests uncover the compatibility issues with the other systems available in the user environment.
    - It also discovers the non functional issues such as load and performance defects in the actual user environment.

Post your comment / Share knowledge


Enter the code shown above:
 
(Note: If you cannot read the numbers in the above image, reload the page to generate a new one.)