Why tester’s involvement is important in requirement gathering ?
- 0 Comments
It is very much important to include testing practices as early in the project as possible. The classic late involvement of testing in projects limits their efficiency. By the time testers get involved, all the development defects are already in the code, which makes detecting them much harder and fixing them much more costly. Late involvement limits how many issues are in fact found, due to both lack of time to test and testers’ lack of requirement understanding.
The requirement phase generates most of the defects. Over 50% of the defects are injected during this phase. Requirement Phase is an important phase in the SDLC and forms the base for any of the product that future work will be built on. So, if the requirements are not correct and clear, there may be fundamental and severe issues that do not float up until the later phases. And this means complete redesigning of the major part of the product. The amount of rework to fix defects or undiscovered issues can have a major impact on a project. Testing really has a need to learn earlier and more fully what the requirements and design are.
Problems when testers are involved during the later phases of the development?
- Testers’ understanding on the requirements is incomplete and tests designed aren’t robust.
- Requirements defects get carried on to next phase due to the insufficient review process.
- Testers are forced to learn and understand the application on the fly from the requirements.
- The risk analysis of the requirements are skipped, and the tests designed may not be of sufficient coverage.
- Requirements-based testing gets skipped and most of the ambiguous and inconsistent requirements are not corrected.
- Lack of clarity makes a requirement untestable. It is possible that an unclear requirement implemented incorrectly, and despite, without being able to test it, testers have no way to detect whether the requirement was implemented correctly.
Testers often receives the documentation so late that there’s not time to create and run sufficient tests. As the project progresses, testing will usually be asked to refine their resource estimates. Understanding the requirements as they are being created will help refine resource estimates.Even if test cases are not yet designed, we can get a logical number of requirements and estimate the necessary number of test cases and multiply by the time factor to create and execute test cases.
By understanding the requirements as they are being created, the test plan will include a better plan of testing for each area of functionality. We will have clearer and to the point requirements. We can clarify the gray area requirements that frequently get unnoticed, such as error messages and usability issues.Testers can have the feelings about certain requirements that they cannot get from an after-the-fact requirements review. Testers can also get to know about how development feels about certain requirements. This is essential for risk-based testing.
They may better understand the impact of the requirement on the other parts of the project. Participation of testing in requirement phase may result in fewer changing requirements throughout the project and less design problems. They can early start on test case designing. They may be able to create several tests with steps from basic flows of a use case.
Usually the software is tested when it is close to being delivered, and rarely testers become involved in testing the earlier deliverables. If testing waits until requirements are documented, it may already be too late. The time needed to then learn and understand the requirements eats valuable time necessary for test plan and test case designing. We have to understand the importance and benefits of early involvement of testing.
Requirements are early deliverables, which need to be tested: For example: - Is this requirement within scope? And obviously, is it the right requirement? The design of the software project, the architecture even whole product can be benefit from the early involvement of the testing.
