https://www.qatechies.com

What is V-Model in SDLC?

SDLC-Models

What is V-Model in SDLC?


Welcome to this Post – “What is V-Model in SDLC?”.

This post discusses about the “What is V Model in Software Development Lifecycle (SDLC).” We will also focus on some frequently asked questions for choosing V-Model in the development is good idea or bad and why even today companies choose or select V-model to go with. So, go ahead and enjoy reading…

 

Abstract

V-model is another sequential method of software development. V- model means Verification and Validation model.

Just like the waterfall model, the V-Shaped Model has a sequential path of execution for different phases. Each of these phases must be completed before the next phase begins just like the waterfall model.

The important point is that testing of the product can be done at each of the phases.

 

Discussion:

We will start our discussion with Case Study to understand the difference between the Waterfall and V-Model and why there is need of V-model?

Case Study:

Let’s take an example- a XYZ company manufactures android TV. This TV can serve purpose of internet and television. Since TV itself is a hardware, and its testing would not be taken as part of discussion here instead our focus is on software that have various features to be tested. If this product would have been developed using Waterfall model, the testing activities would have been done later at the end of the development. Now this product can have two status: accepted or rejected at this point. If it can serve both the purposes without any interference to each other it may have status Passed\Accepted or else Failed\Rejected in case of only ONE Feature (either internet or TV) is working.

In software development we cannot just simply reject the parts of the system found to be faulty, otherwise this could lead to unstable software. On the contrary, if the software functionalities are such that they are independent and removal may not have any affect, then also it might even cause the system to become unusable. For example if touchscreen sensor driver is functioning incorrectly, then some of the apps dependent on it might not be accessible via a tap. Hence for bigger product like TV this would be a fairly intolerable fault in the live environment.

So, question is what can be done along with Waterfall to make it more effective? Why is this needed?

There is need of a process that can assure quality throughout the development life cycle. Each phase may have a check that assures the product in that phase is meeting its objectives. Well this what we do in V-Model. We keep on checking product at the end of every phase once the creator of the product has declared its phase completion. In addition, finding issues\defects at the point of creation will make fixing cheaper than fixing them at a later stage.

So now let’s see various phases of the V-model, which are as follows:


Diagram of V-model:

 

V-Model
V-Model

 

In the left-side of V-model shown, these are:

  • Requirement specification – this phase capture user needs in terms of system requirements, performance aspects, load aspects, resources aspects; every minute detail is captured here.

 

  • Functional specification – this phase expands the user needs and breaks it into definition of functions and how they are related to user needs.

 

  • Technical specification – this phase expands functions into more technical design of same indicating technology, screen interaction, etc parameters at high level design. The high-level design (HLD) focuses on system architecture and design. It provides overview of solution, platform, system, product and service/process.

 

  • Program specification – this phase expands Technical design into detailed design of each functional module or unit and describes a low-level design for all of these. The low-level design (LLD) describes actual software component’s working logic. Later this design is then used in coding of these units.

 

  • Coding: This is at the bottom of the V-Shape model. Module design is converted into code by developers.

 

The middle of the V-model shows that planning for various types of testing should get started with each phase. For instance, with the use of the requirement specification, acceptance testing would be planned.

 

The right-side of V-Model focuses on the testing activities. For each phase a testing activity is identified and defined. So, from top to bottom,

  • To do testing against the requirement specification, this takes place at the acceptance testing stage.
  • To do testing against the functional specification, this takes place at the system testing stage.
  • To do testing against the technical specification, this takes place at the integration testing stage.
  • To do testing against the program specification, this takes place at the unit testing stage.

Advantages of V-model:

  • Very simple to follow.
  • Testing activities like test planning, test designing happens well before coding. It saves a lot of time and hence higher chance of success as compared to the Waterfall model.
  • Defect density gets reduced for a single unit and is evenly spread across units even if they are found at later stage. Reason being defects are found at early stage.
  • This can be practiced well for small projects where requirements are easily understood.

Disadvantages of V-model:

  • This model is quite rigid and is not flexible enough to accommodate new dynamic changes.
  • The other major drawback here is system is developed during the implementation phase, so we cannot see early prototypes of the software.
  • In case requirements need to be updated then the complete test plan and related artifacts has to be updated.

When To Use V-Model?

SDLC V model is used when

  • Requirements are stable – You don’t see any frequent changes in the ground level requirements.
  • Requirements are not ambiguous – There is no requirement which is not understood and every requirement is well captured in detail.
  • Tools and Technology is clear – Technology and tools to be used is well understood, stable and is not dynamic.
  • Resources – Resources are expert and are available.
  • Duration – The project is short.

 


 Why people still prefer this model?

 

Organizations for say in manufacturing usually follow V-Model. The major reason behind this is that they have to do lots of compliance checks during the production of a product when it passes through various phases of development. And since production lines are not going to be changed frequently, hence this model fits best.

 

Conclusion:

In the V-Model, it is very important to take the sign off of the deliverables of each phase along with verification. Since each phase’s output becomes the input of the next phase. It is obligatory for a phase to be completed before the next phase starts. Each phase may have a check that assures the product in that phase is meeting its objectives.

Leave a Reply

This site uses Akismet to reduce spam. Learn how your comment data is processed.

advanced-floating-content-close-btn
https://pagead2.googlesyndication.com/pagead/js/adsbygoogle.js?client=ca-pub-5034726663464946 (adsbygoogle = window.adsbygoogle || []).push({});
advanced-floating-content-close-btn 
*************************** Do you want to learn TOSCA? Do you want to excel in Career? Try my New Courses: 1. Tricentis Tosca and Working with Excel   2. Tricentis Tosca and UI Automation Great News!!   Price has been slashed down for limited period of time.So Hurry!!! Click The Shown Links and Enjoy Learning. ***************************
 
error: Content is protected !!