Manual QA is dead. Companies are getting rid of their QA teams. Quality Control performed manually is phasing out of style. What can we do instead? Become coaches, assistants or advisors? We could become developers? Or we could be better testers. QA and Quality Control is not Testing. This might be how people learn.
This was released to Patreon supporters early, with full transcript and no ads.
Manual QA is dead
We will all have heard of companies getting rid of their testing or QA teams. So how do we respond to that from a testing perspective?
Testing as a ‘process’ has always evolved to fit the project, so this isn’t really covering the ‘process’, this is more looking at the ‘role’ of the Tester.
Note: “Manual QA is dead”, not Software Testing or Manual Testing is dead. Manual QA. I’ve always made a distinction between QA and Testing so… I’m not actually that concerned when companies get rid of their Manual QA teams. Why is that?
So first… what is QA?
QA means Quality Assurance - overall process for assuring quality of a delivered product.
- involves Quality Control - CI, CD, Unit Testing.
- Inspection for requirement checks to evaluate the Quality of the implementation - integration level automated execution. Inspection is Quality Control gatekeeping to reject items that don’t conform to defined tolerances.
Then we have historically lumped “Testing” into QA:
- Testing for information and expanding our models, extremes, risks, data and usage scenarios that we haven’t built into checked assertions. This isn’t Quality Control and can’t be automated.
Testing is part of QA only in the sense that it provides information that can help you evaluate the Quality of the product. It might help you ‘control’ the quality by providing information which leads to the cancelling of projects, changing how you build things, not releasing versions. Testing provides information that can help influence the controls on the quality. But it’s information, and information can be ignored so Testing isn’t a direct control mechanism. Inspection is a direct control mechanism.
What does Getting rid of QA mean?
It usually means:
- no more QA team
- automated Quality Control - 1 and 2 above
Companies are trending towards getting rid of the QA
What leads to people getting rid of QA teams? Because they were mainly doing inspection and not testing.
- Scripted Inspection lends itself to being automated.
- Lack of variation lends itself to being automated.
Anything that people look at and think “we could automate that”.
Teams will try and automate that.
We are not talking about removing testing. And they aren’t really talking about removing QA. Companies might think they are, but they’re really talking about automating Quality Control.
Testers are at risk when they are involved in a Quality Control process.
Development practices are making it easier to add a lot of automated inspection and process control into the development process.
Testers need to distinguish themselves from Quality Control.
How can testers distinguish themselves from Quality Control?
Specialism based approaches that seem to be in vogue:
- Quality Assistance
- Quality Coaches
Risks associated with this:
- assistants are never paid as much, or valued as much, as the people they assist
- coaches that can’t “do” often struggle to get the respect needed to do their job
- automation can be absorbed into the coding process
- SDET is only really needed when there are testers
The risk is that this is focusing on the ’easy’ stuff again.
A missing Specialism approach is:
- Being a better Tester
The easy stuff is taking a requirement and seeing if it has been met.
The hard stuff is:
- taking a requirement, identify all the risks and ambiguities, exploring them to find issues.
- looking in all the gaps
- finding all the sources of emergent behaviour that hasn’t been thought about or handled
- etc. all the testing stuff
A lot of this is stuff that people never had the time for because they were too busy doing inspection that could have been automated if we had only taken the time to do it.
The risk with being a Better Tester occurs when companies equate Testing with QA.
So better testers need to demonstrate the difference.
Testers will also be able to describe the risks involved in removing the manual QA processes.
- What are the gaps?
- What inspection points have not been automated yet?
Testers will be able to explain how “testing” fits into the idealised Automated QA process.
- Where does it add value?
- How does it add value?
- When has it added value in the past?
- How will it add value in the future? What are you working on and learning that will make a difference to the process?
Testers have to advocate for testing.
Expand Role to Software Developer
Another specialism approach is:
- Software Developer
Expanding your skillset so that you can work alongside the programmers, not by coaching or mentoring them but by developing alongside them.
This is the hardest approach.
Programmer != Developer.
- elicit and question requirements
Software Developer is a master of the entire development process. This is an aspirational goal.
One of the benefits of a tester adding more development skills to their portfolio is that Software Development is incorporating more and more of what has traditionally been associated with the Software Testing role.
Software testers can expand their role by developing knowledge of more of the software development process.
Equally, programmers can expand their role by developing knowledge of more of the software development process and including testing.
Agile Coaches and Scrum Masters focus on process, different skill set and lot of competition for fewer positions
“Manual QA is Dead” is click bait. It’s really “Manual Quality Control and Inspection is dying” and that’s a good thing.
No-one is getting rid of testing. People are automating inspection.
Manual forms of inspection are being removed. This should actually help testing and testers by freeing up more time to do good testing.
People may think they are getting rid of testing. People may be trying to get rid of testing.
Automating inspection has the built in risk that all the stuff that good testers find when they are not busy ticking off requirement compliance will not get done.
Good testing skills are required. Companies might not see that.
So demonstrate them either by expanding your skill set so that you become a better developer than other people, or become a better tester than the organisation has ever experienced.