Most IT-organizations nowadays are working in an Agile or DevOps way. Or busy transitioning towards Agile and DevOps. Often they struggle how to organize testing in their new organization. In this blog, I’ll give you an overview of how the well-known model of Agile Testing Quadrants can be used.
In 2003 Brian Marick introduced the Agile Testing Quadrants. A very useful model to pair different testing varieties with various perspectives of the IT-activities in an Agile development model. (read his original article here)
The picture below shows the original model of Brian Marick. It consists of four quadrants:
- Quadrant 1 (left-below) is all about testing the components that an IT-system consists of.
- Quadrant 2 (left-upper) is about testing the system as a whole and its connection with business processes and other systems.
- Quadrant 3 (right-upper) is about the quality in use, can users actually reach their goal.
- Quadrant 4 (right-below) is about the technical perspectives that most can only be tested when the system is ready (e.g. performance).
Figure 2: Testing Quadrants adepted by Lisa Crispin and Janet Gregory
The revelation is in the slight difference in wording. Brian Marick puts “Supporting Programming” on the left. Janet and Lisa have replaced that by “Guiding the team”.
Now, you may wonder, what’s the big difference?
It’s in the feeling that the terms given. “Supporting” feels like developers build something and while doing so are supported by testing. “Guiding” the team emphasizes a “test – first approach” where at first the team members think about how they will test a user story, automate that test and then develop the software and use the test to verify it.
I don’t mean to imply that Brian Marick didn’t intend this, actually in his original post he speaks of EDD – Example Driven Development. But by their wording Lisa Crispin and Janet Gregory made it more obvious that this is the way to go.
Figure 4: Focus of testing in the testing quadrants
In this version of the testing quadrants, the emphasis is on the difference between “checking” and “testing”. On the left the main focus is on verifying whether the system works as designed. At the right, the main focus is on validating if the business process will be fit for purpose.
Summarizing, we have seen that the testing quadrants are very useful. In preventive testing, they guide the team to verify the expected behavior. In detective testing they ensure critiquing the product to validate if it is fit for purpose. And in general, for testers and other IT-people the testing quadrants structure and organize the testing activities such that testing actually guides the team as a whole towards the fast delivery of business value.
--- This blog was written by Rik Marselis in January 2018 and initially published on the SogetiLabs website.---