Use Process Improvement Methods to Elevate Your Test/QA Workflow
Many quality assurance testers face the same challenge: an ever-increasing number of functions, interfacing systems, and environments to support (without the old environments going away much). Unfortunately, this does not seem to lead to more time to do the job—in fact, they often have less time, with more last-minute changes.
What can help? Automation is great, once it works; the first time takes approximately three times as long as doing the testing manually. The benefit is forever, but the automation tools and systems still need maintenance. Adding testers has diminishing benefits, as the cost-estimating models show us (SLIM-Estimate or the COCOMO II Cost Model). The overhead of communicating with all testers reduces the benefit of each added tester as the team increases in size.
Yahoo recently decided to eliminate QA testers while making developers exclusively responsible for the quality of the delivered product, as reported in IEEE Spectrum. The theory was that more human teams inevitably introduce more human error. The developers ended up creating their own automation—perhaps a substitute QA test.
There are mature ways to plan and implement improved processes. Process improvement is a mature discipline; Richard Demining started it after WWII. Its basic precepts can be used for any process (including QA testing) and are well-documented by organizations such as the American Society for Quality. This process starts with using root-cause analysis to identify what needs to be fixed, and at the same time, documenting the current baseline. (Any change is going to meet resistance somewhere, so the business case for it needs to be built as it goes along.)
Improvements can then be selected using techniques such as kaizen to pick logical next steps while avoiding the temptation to try to do too much, too soon. Existing improvement models, such as Lean Six Sigma and testing process improvement models, provide well-established possibilities for choices as to what is best to work on next. Even though there are useful suggestions available, there is no one turnkey set of solutions that will work for everyone. If there were, this problem would cease to exist.
A pilot project can implement the desired changes while collecting carefully selected metrics (using Basili's Goal-Question-Metric model will help with this selection) that will show if it is working or not. Experiments that don’t work can be quickly forgotten as new ideas are tried. Changes that do work will have the “proof” of success ready to present wherever support or approval is needed. Then the improved processes can be disseminated throughout the organization at a time interval that works for the participants.
Quality assurance testers may be feeling overwhelmed with all they have to do and the short time in which they have to do it. Implementing proven process improvement techniques can help streamline or replace existing models, making testers’ workloads manageable and letting them accomplish more—without sacrificing quality.