spk-logo-white-text-short2
0%
1-888-310-4540 (main) / 1-888-707-6150 (support) info@spkaa.com
Select Page

Avoid Fatal Product Design Flaws with QA

The difference between quality assurance (QA) and testing is often misunderstood. In fact, the terms are frequently used interchangeably.

However, testing is actually just one part of QA. Quality assurance, on the other hand, covers a larger, more holistic part of the development process. Product flaws are not always a result of bad implementation, but they can often arise from bad design.

Using QA throughout the development process, along with peer reviews for all testing and quality assurance documentation, can ensure that products aren’t released with fundamental design flaws – design flaws that can quickly change the fortunes of even the biggest companies.

Quality Assurance can be divided into several different activities, only one of which is the traditional product testing for flaws and bugs. Other activities include defect prevention, inspections and peer reviews.

Defect prevention uses root cause analysis to discover why a defect occurred and attempts to ensure that the same type of defect doesn’t recur during product development. Such root cause analysis requires a system to log all classes of defects along with processes to identify the possible causes of the defects as well as actions to eliminate those causes.

Inspections can be applied to a variety of development activities including design inspections, code inspections and unit test inspections. An inspection needs to look at the product from an external point of view. For example, code inspections are performed without actually executing the code.

Linus Torvalds, the creator of the Linux kernel, once wrote about his dislike for debuggers without which you are forced to “look at the level above sources. At the meaning of things . . . you basically have to go the next step: understand what the program does. Not just that particular line.” His sentiments are equally true of inspections (code or otherwise) to the whole nature of quality assurance compared to just simple testing.

Peer reviews provide a formidable tool in the pursuit of quality. The result of each phase of the development process is reviewed by those qualified to understand the material (peers). Then the output from that review is fed back into the development process. Equally applicable to design, implementation, testing and deployment, the peer review process can spot flaws consistently. The old adage that two heads are better than one is applicable here.

Such quality assurance practices do not negate the need for detailed testing at every level, but rather they support the testing strategies to find flaws – and fix them. Such strategies should include black-box testing, white-box testing, system testing, stress and load testing and so on. Applying the processes of inspection and peer reviews to these traditional testing methods will also ensure that the testing phase itself is included in the overall quality assurance process.

For organizations that don’t practice these quality assurance activities – but are familiar with traditional testing methods – outsourcing quality assurance can be a cost-effective way of introducing these new skills. Also activities like peer reviews and code inspections are ideally suited to external agencies as working development environments or prototypes aren’t required.

The use of quality assurance practices coupled with traditional testing can ensure that products are shipped without crippling flaws but instead have quality built in.

Latest White Papers

A Guide To Cleaning Up Your Jira Instance

A Guide To Cleaning Up Your Jira Instance

Jira is a great project management tool, but it can easily become cluttered. Dive into this eBook to explore how to clean up your Jira instance easily.What You Will Learn Discover the tools that can help you: Remove and merge old or duplicate content Fix broken...

Related Resources

Accelerate Secure Software Delivery with GitLab Duo + Amazon Q

Accelerate Secure Software Delivery with GitLab Duo + Amazon Q

Every software development team must find the right balance between quick delivery cycles and proper security, compliance, and quality. Fragmented toolchains, manual testing, and inconsistent coding standards all slow innovation and increase risk. To solve this,...

How Hierarchies in Jira Product Discovery Empower Product Managers

How Hierarchies in Jira Product Discovery Empower Product Managers

Structuring ideas and aligning discovery work with delivery goals is crucial for product managers, but it’s not always easy. Atlassian’s Jira Product Discovery (JPD) has become a go-to solution for organizing ideas, insights, and roadmaps within a unified platform....