What is V-Model – Advantages and Disadvantages?
What is V-Model?
V-Model also known as verification and validation model. V-Model look like V shape, In this model process done in sequentially like waterfall model. Each phase must be completed to start next phase. It is good model for testing point of view because testing done parallel with every phase. As i mentioned above V-Model is made of two things verification and validation.
Verification is a process where we check that the work product which we are building is as per the requirement or not. This type of process done by QA (Quality Assurance). Verification also called as static testing.
Validation is a process where we test complete build product as per the requirement. This type of process done by QC (Quality Control). Validation also called as Dynamic testing.
As per the Software Testing Principles, early testing will be beneficial for software as well as for customer. V-Model is a combination of software development life cycle and software testing life cycle.
In this phase companies BA (Business Analysts) will collect complete detailed requirement from client. BA creates (BRS) Business requirement specification. Using BRS, Project Manager, Business Analysts, Stockholders and senior members create SRS (Software Requirement Specification). This Requirement Documents used to create Test Plan. After done requirement phase testing team preparing for acceptance testing.
- System Requirement
Using SRS, gathering the requirement which required for system build. Creating system design as well as architecture. As per the system requirement, build all the functionality in software. After done system requirement phase testing team preparing for system testing.
- Global Design
In global design, focused on integrate parts. Creating perfect plan for integrated module, this phase is more detailed as compare to System requirement. After done global design phase testing team preparing for integration testing.
- Detailed Design
This is detailed phase where creating designs for module, more focused on functionality of module or on component. After this phase testing team preparing for unit testing.
The implementation phase where coding done. All the requirement and designs convert into software build. Trying to implements all the functionality into work products.