fbpx
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

Windows Server on Azure Ultimate Guide

Windows Server on Azure Ultimate Guide

As technology progresses, more and more businesses are adopting cloud infrastructure. This shift can be difficult to adapt to, but it doesn't have to be. With Windows Server and Microsoft Azure, businesses can easily integrate their data and applications with the...

Related Resources

The Role of PLM in Orchestrating the Product Digital Thread

The Role of PLM in Orchestrating the Product Digital Thread

Product Lifecycle Management (PLM) plays an important role in the manufacturing industry. Ensuring all factors of a product are well-documented is a priority for every business.  Keeping this information organized is not just a good business practice, but it...

The Future of CAD with PTC Creo and Artificial Intelligence

The Future of CAD with PTC Creo and Artificial Intelligence

The seemingly endless debate of Artificial Intelligence's benefits and drawbacks has permeated all technological media. Why is this such a hot topic? The public wants to understand what AI can do, the technologies it can benefit, and what the future holds for AI....