V Model in SDLC | Verification & Validation
- V Model can also be called as Sequential Development Model .
- V Model in software engineering came up in order to overcome the drawback of waterfall Model .
- In V Model process executes in a sequential manner in V-shape.
- V –Model is based on the association of a testing phase for each corresponding development stage.
- In V –Model development of each step directly associated with the testing phase
- SDLC V Model contains Verification phases on one side of the Validation phases on the other side.
- Verification and Validation process is joined by coding phase in V-shape. So it is called as V-Model.
- In V Model, testing team involves in the early phases of SDLC and Testing starts in early stages of product development which avoids downward flow of defects.
Phases of Verification of V-model:
1) Business requirements:
- It is a step where product Business requirements understood from the customer’s side so the requirements are collected and analyzed.
- Requirements reviews is the verification Activity
- Creation of UAT test cases is the validation activity.
2) System Design or High-level design:
- The team studies and investigates on how the requirements could be implemented and how team can implement technically.
- In this stage test team analyse and interpret the business of the proposed system by studying the user requirements document.
- System Design reviews is the verification activity
- System test plan, test cases, and traceability metrics is the validation activities
3) Architecture Design:
- System design is divided further into modules taking up different functionalities.
- The data transfer and communication between the modules or systems is clearly understood.
- The integration-testing model is carried out this phase.
- Review HLD is the verification activity.
- Write Integration test plan and test cases are the validation activity.
4) Module Design or low level design :
- In this phase, the system breaks down into small modules.
- The detailed design of the modules is specified.
- Methods, classes, data types, interfaces, etc. are all finalised in this phase.
- Review LLD is the verification activity.
- Write Functional test plan and test cases is the validation activity.
5) Coding or implementation:
- Once the coding language is finalised, coding is started with some guidelines and standards.
- Code review, test cases review is the verification activity
- Creation of functional test cases is the validation activity.
Phases of Validation of V-model:
- Unit testing is carried out during the development of module design.
- Unit test cases are executed for removing bugs that are found in code at the development phase.
- Unit Test Plans are developed during the module design phase.
- Unit testing verifies that each module can function correctly
- Integration Test Plan is developed during the Architectural Design Phase.
- Integration testing is carried out where the integration of modules in the system is tested.
- System Tests Plans are developed during System Design Phase.
- The actual and full testing of the application takes place.
- The traceability metrics are updated to check the coverage and risk mitigated.
- Acceptance testing is related to the business requirement analysis part.
- Acceptance testing is done to validate that the business requirements are met in the user environment.
- Functional testing and sometimes nonfunctional testing are also carried out in this phase.
Advantages of V Model:
- Investment and re-work is less.
- Testing is involved in every stage so produced quality product.
- Test team will be ready with the test cases by the time developers release the software which in turns saves a lot of time
- Easy to manage as each phase has well defined objectives and goals
Disadvantages of V Model:
- It is not a good for a complex project.
- Initial investment is more because test team involves right from the early stage.
- If any changes happen in the middle, then the testing documents and other related documents needs to be updated
When to use the V-Model??
- For small to medium sized projects where requirements are clearly defined and fixed.
- Chosen when sample technical resources are available with essential technical expertise.