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

Atlassian Cloud: Understanding Zero Trust Security

Atlassian Cloud: Understanding Zero Trust Security

Where To Start & Why It Matters What is the Atlassian Cloud Zero Trust Security model? Well, for decades, enterprise security controls were built to protect a large, single perimeter around a corporation. Often described as castle-and-moat security, This approach...

Related Resources

2022: The Year So Far Tech Review

2022: The Year So Far Tech Review

There’s been a lot of innovation, software and product releases in the past six months alone. So, we are rounding up the best tech review and engineering releases for the first half of 2022. The tech forecast for 2022 was heavily influenced by how the world adjusted...

Why Process Automation Is Critical For Engineering

Why Process Automation Is Critical For Engineering

Process automation releases your engineers for the work their brains are intended for. That work is creativity and problem-solving.  By implementing process automation, you improve the team’s morale. Firstly, they get more focus time for deep work and designing better...

CloudBees SDA:  Software Delivery Without Silos

CloudBees SDA:  Software Delivery Without Silos

Tired of missing deadlines, and only measuring performance of departments, but not of your entire software delivery organization? This blog will show you how CloudBees Software Delivery Automation (CloudBees SDA) can break down silos, drive DevOps mentality and...