The competition puts pressure on product companies to grow and evolve fast. In response to that, product companies – from maturing startups to established software product vendors – aim to deliver new functionality quickly, so that they can meet the needs of their customers and acquire new ones. A common issue in this race is that the testing processes companies used to rely on no longer support the newly introduced growth strategies. And due to the ill-fitted testing processes, the in-house test teams or QA vendors fail at ensuring product quality in the conditions of faster development.
So, as a product company, how can you win over customers with quickly delivered desired functionality and keep product quality high? My experience in software product testing proves that you need to start with introducing a structured testing process tailored to the peculiarities of your software product and project.
Establishing a testing process for a software product
I refer to the testing process as a set of systematically performed quality control activities, which lays the groundwork for both improving product quality and increasing the efficiency of the test teams. A model testing process includes the following stages, which can be tweaked to project and product specifics:
- Software product requirements analysis.
- Test planning (including the planning of non-functional testing activities, e.g., performance, usability, compliance testing).
- Test design.
- Test execution and defect reporting.
- Retesting and regression testing.
- Release and user acceptance testing.
A basic testing process comprised of the steps above can already drive significant quality improvements to your software product. For instance, a structured testing process InfoTech introduced for a security audit software provider during QA consulting, allowed the customer to achieve a 25% reduction in software product testing time and make sure no critical defect entered the production.
Still, there are startups and small product companies tempted to put off testing until the later stages of their product life cycle. I strongly believe that this option is not feasible since putting off testing until the first version of a product is released and the project team start working on the product growth creates problems. Thus, you will not only have to evolve your product fast but also search for and fix old defects that emerged at the initial product development stage. It is estimated that the defects found at the post-release stage may cost 15 times more than the ones found at a product design stage.
It is more efficient both in terms of product quality and project costs to start testing early. And after the first product version is released, you can evolve faster as you’ll have a quality basis for product growth.