V-Model in SDLC

Lesson Progress
0% Complete

The V-Model is an extension of the waterfall model and is based on the association of a testing phase for each corresponding development stage. This means that for every single phase in the development cycle, there is a directly associated testing phase. This is a highly-disciplined model and the next phase starts only after completion of the previous phase.
Under the V-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. The Coding Phase joins the two sides of the V-Model.

v model

  • The left side of the model is Software Development Life Cycle – SDLC
  • The right side of the model is Software Test Life Cycle – STLC
  • The entire figure looks like a V, hence the name V – model

Apart from the V model, there are iterative development models, where development is carried in phases, with each phase adding a functionality to the software. Each phase comprises its independent set of development and testing activities.

Good examples of Development lifecycles following iterative method are Rapid Application Development, Agile Development

The advantages of the V-Model method are as follows

  • This is a highly-disciplined model and Phases are completed one at a time.
  • Works well for smaller projects where requirements are very well understood.
  • Simple and easy to understand and use.
  • Easy to manage due to the rigidity of the model. Each phase has specific deliverables and a review process.

The disadvantages of the V-Model method are as follows

  • High risk and uncertainty.
  • Not a good model for complex and object-oriented projects.
  • Poor model for long and ongoing projects.
  • Not suitable for the projects where requirements are at a moderate to high risk of changing.
  • Once an application is in the testing stage, it is difficult to go back and change a functionality.
  • No working software is produced until late during the life cycle.

Conclusion

There are numerous development life cycle models. Development model selected for a project depends on the aims and goals of that project.

  • Testing is not a stand-alone activity, and it has to adapt the development model chosen for the project.
  • In any model, testing should be performed at all levels i.e. right from requirements until maintenance.