Development of Test Strategy
1 Answer

When the project under consideration starts and progresses, testing too starts from the first step of SDLC. Therefore, the test strategy should be such that the testing process continues till the implementation of project. The rule for development of a test strategy is that testing 'begins from the smallest unit and progresses to enlarge'. This means the testing strategy should start at the component level and finish at the integration of the entire system. Thus, a test strategy includes testing the components being built for the system, and slowly shifts towards testing the whole system. This gives rise to two basic terms- verification and validation-the basis for any type of testing. It can also be said that the testing process is a combination of verification and validation.

The purpose of verification is to check the software with its specification at every development phase such that any defect can be detected at an early stage of testing and will not be allowed to propagate further. That is why verification can be applied to all stages of SDLC. So verification refers to the set of activities that ensures correct implementation of functions in a software. However, as we progress down to the completion of one module or system development, the scope of verification decreases.

The validation process starts replacing the verification in the later stages of SDLC. Validation is a very general term to test the software as a whole in conformance with customer expectations. According to Boehm [5]

Verification is Are we building the product right?
Validation is 'Are we building the right product?

You can relate verification and validation to every complex task of daily life. You divide a complex task into many sub-tasks. In this case, every sub-task is developed and accomplished towards achieving the complex task. Here, you check every sub-task to ensure that you are working in the right direction. This is verification. After the sub-tasks have been completed and merged, the entire task is checked to ensure the required task goals have been achieved. This is validation.

Verification is checking the work at intermediate stages to confirm that the project is moving in the right direction, towards the set goal.

When a module is prepared with various stages of SDLC such as plan, design, and code, it is verified at every stage. However, there may be various modules in the project. These need to be integrated, after which the full system is built. If we simply integrate the modules and build the system for the customer, then we are leaving open spaces for the bugs to intrude. After building individual modules, the following stages need to be tested: the module as a whole, integration of modules, and the system built after integration. This is validation testing.

Please log in to add an answer.