Quality Engineering 101: WHAT, WHEN and HOW?
We know that Zero bug development is a myth that should be dispensed, yet the answer to any troublesome inquiry that a QA should discover responses regarding the product testing is, “what testing system ought to follow for a bug free yield?”
Here comes the significance of testing the product according to the product maturity and the strategy should be moulded with respect to the degree of development at each stage. It is tied in with making QA work smarter and ensuring the control for consuming significant time. Testing is not restricted to the end of a development process but is done on an on-going basis and overlaps with design activities throughout the product development.
Considering the degrees of development of a product it has three different stages:
- Initial Stage- Primary analysis
- Middle Stage – Detail analysis
- Final Stage- Pack up
And by identifying key activities for each level, we can assure maximum quality yield respective to each of them.
The QA approach that can be adopted within the 3 stages for an assurance quality.
Initial Stage: Primary Analysis
In this initial stage, developers focus on creating a minimal viable product and building an app that customers actually want. The utmost priority at this stage should be to discover a product-market fit; so the QA approach in this stage is to test the core user flows and unblocking basic client requirements. Software will undergo several changes as the product is developed through different demanding situations and possibilities and it continues till the company finds a promising model. We know, quality is an underlying fact and so early testing achieves a more noteworthy significance. The focus points of this stage are cost effectiveness and versatility.
The test strategy that can be used here is to start with exploratory testing and the reason is because the product might not have a full set of requirements, but we can still walk through the product like a user. Manual testing techniques are the most ideal route forward as they allow more flexibility than automation.
At this stage, the product’s
- Risks are known and will be on a higher rate
- Quality is measured which will be low
- Cost is measured which will be low
Middle Stage: Detail Analysis Stage
At this phase, the focus is concentrated more on its core features. Developers have to ensure that all the main features are working adequately.
In this stage, product has several areas which had been tested thoroughly and are deeply familiar with. But we have to take into account that various individuals are going to utilize application in an unexpected way; whether that be on different devices or using different browsers or even for different use cases. Keeping all of those things in mind, QA have to guarantee that you have an item that everybody can utilize.
Therefore QA needs to discover, how well or poorly the system works and whether the system is buggy or not??
The testing procedure should focus on finding errors and risks as soon as possible and so QA strategy should include a blend of exploratory testing, crowd testing and automation to ensure full testing coverage. This will help to discover bugs that may not have considered before, and fix issues that would become even more significant at the next stage of your product.
This growth stage presents an opportunity to expand the role of automation. Automate those structured tests that have been developed in the previous stage which we know we can rely on. As you find bugs through exploratory testing, you can take those steps for reproduction and turn it into a test case, then add it to your regression suite.
At this stage, the product’s
- Risks get under control as the testing increases
- Quality is maintained with an above average value
- Cost brought under control but will be higher as the resources number gets higher
Final Stage: Packup Stage
This is the crucial stage where the companies pay attention to expand their commitments for existing clients and also focus on new client adoption for the growth. Progress towards a market fit product is the most important indicator to measure when evaluating improvement for new products. Trust and product quality matters here.
In this stage, QA should have the confidence to give a positive response to the inquiry from user side, "Can I truly confide in this application with my money?"
From this point, even a minor bug can make large impact in the business and so software testing is of utmost importance. You should have high focus on performance testing and vulnerable areas of the application. Performance tests are for simulating the load on the system under test to analyze its performance (response times and insights usage) to find bottlenecks and opportunities for improvement. This is the time to ramp up automation as the maximum quality is expected.
At this stage, the product’s
- Risk is reduced as all issues are addressed from the QA side
- Quality improves to the expected value
- Cost is optimized as resources ramp down are involved in this stage
Effective QA Strategy is Crucial
It not practical to expect for a bug free code from developers. Instead lets keep focus on delivering a product with good functionality for their business needs that make user smile.
Each project is unique. So consider options available, assess scope, and use QA strategy that is right. Test the product with the right technique at the right time. Adopting a context-specific approach to testing and continuously adopting QA strategy could help to overcome challenges and give the ability to put quality at the forefront of every product.