After reading this model i can easily understand the advantages and disadvantages of software testing!!! Your email address will not be published. What is Spiral Model in software testing and what are advantages and disadvantages of Spiral Model ». October 16, at pm. August 1, at am. July 25, at am. The V-Model can be interpreted as an extension of the Waterfall development model, which describes the testing activities as one of the last steps in a sequential development process.
However, in contrast to the Waterfall model, the V-model shows the relationship between each development phase and a corresponding test activity. Even though the V-model is criticized because it simplifies the software development process, and because it does not completely map onto modern Agile development processes, it does include a number of terms and concepts essential to software testing.
These terms and the concepts behind them can be leveraged to find a proper structure for the testing efforts in your software project.
Besides, the V-Model can be used as a model for each iteration of an Agile project. The main idea behind the V-model is that development and testing activities correspond to each other. Each development phase should be completed by its own testing activity. Each of these testing activities covers a different abstraction level: software components, the integration of components, the complete software system and the user acceptance.
Instead of just testing a monolithic piece of software at the end of the development process, this approach of focusing on different abstraction layers makes it much easier to trigger, analyze, locate and fix software defects. Such a V-Model is shown in the following illustration:. The development phases from the V-model are commonly known either from the Waterfall model or as logical phases of real-world development pipelines. We will go through each phase.
First, the requirements of the software system have to be discovered and gathered. This is typically done in sessions with users and other stakeholders, for example, through interviews and document research. The requirements are defined more precisely through the analysis of the information gathered. Based on the output from the Requirements Analysis, the system is designed at the functional level. This includes the definition of functions, user interface elements, including dialogs and menus, workflows and data structures.
This might be a surprise because BDD is strongly connected to the component level. The definition of the functional design is followed by the design of the system architecture as a whole and its separation into components. Along this phase, general component functionality, interfaces and dependencies are specified. This typically involves modeling languages, such as UML , and design patterns to solve common problems.
Since the components of the system and their intersection are now known, the integration test preparations can be started in this phase. 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. The Coding Phase joins the two sides of the V-Model.
There are several Verification phases in the V-Model, each of these are explained in detail below. This phase involves detailed communication with the customer to understand his expectations and exact requirement. This is a very important activity and needs to be managed well, as most of the customers are not sure about what exactly they need. The acceptance test design planning is done at this stage as business requirements can be used as an input for acceptance testing.
Once you have the clear and detailed product requirements, it is time to design the complete system. The system design will have the understanding and detailing the complete hardware and communication setup for the product under development. The system test plan is developed based on the system design. Doing this at an earlier stage leaves more time for the actual test execution later. The detailed design broken into Data structures, Algorithm used and the corresponding test activity is unit Testing.
Coding in which each component of the software is coded and tested to verify if faithfully implements the detailed design. Arnab Chakraborty. Zach Miller. John Shea.
0コメント