skip to content

How do you use the agile testing quadrants to decide which checks a release needs?

level: seniorimportance: nice to knowfreq 26%

answer

  1. A two-by-two, not a list
  2. One axis is the audience
  3. One axis is the purpose
  4. Look for the empty cell
  5. Numbers label cells, not order

basics

~20 s

The quadrants classify checks on two axes: business-facing versus technology-facing, and supporting the team versus critiquing the product. Plot the planned checks on the grid, and an empty cell shows a kind of evidence the release does not have.

solid answer

~50 s

The grid has two axes. One asks who the check speaks to — **business-facing** checks are expressed in the language of the people who wanted the system, **technology-facing** checks in the language of the people building it. The other asks what the check is for — **supporting the team** means it guides work in progress and tells you quickly when something broke, while **critiquing the product** means it goes looking for problems in something already built. That gives four cells: developer-owned component and integration checks; business-readable functional checks and worked examples; exploratory, usability and user acceptance work; and quality-attribute work such as load, resilience and security probing. Its value is diagnostic rather than prescriptive: plot what a release actually plans to do, and the empty cell names the evidence you will not have. The quadrant numbers are labels, not an execution order.

go deeper

for a junior

Learn the two axes and one concrete example from each cell. Being able to say that some checks guide work in progress while others go hunting in a finished product is most of the value at this level.

for a middle

Be able to classify a real check correctly and defend the classification by naming its audience and its purpose. Know that the quadrant numbers are labels and never a sequence.

for a senior

Show the diagnostic use on a real release: plot the plan, name the empty cell, and say what evidence you therefore did not have and what it let through.

for a principal

Own the model's limits. Argue when a deliberately lopsided plan beats a fully populated grid, and how you keep the classification argument from eating a planning session.

## The two axes The agile testing quadrants are a two-by-two grid, and both axes are worth stating precisely because candidates routinely substitute the wrong ones. The horizontal axis is **who the check speaks to**. A *business-facing* check is expressed in the vocabulary of the people who asked for the system: accounts, tariffs, entitlements, workflows. A *technology-facing* check is expressed in the vocabulary of the people building it: modules, interfaces, latency, memory, error handling. This is not the same as the functional/non-functional split, and it is not about who runs the check. The vertical axis is **what the check is for**. Checks that *support the team* are written to guide work while it is being done: they say quickly and unambiguously whether the thing under construction still behaves, and they are cheap to re-run. Checks that *critique the product* are aimed at something that already exists, and their job is to find problems that nobody anticipated well enough to encode in advance. ## The four cells - **Technology-facing, supporting the team.** Developer-owned component and integration-level checks. Fast, deterministic, owned by whoever wrote the code, run constantly. - **Business-facing, supporting the team.** Worked examples and business-readable functional checks agreed before the work starts; prototypes and simulations that settle what "done" means in domain language. - **Business-facing, critiquing the product.** Exploratory sessions against charters, usability observation, user acceptance work — a human exercising the built product and judging it, with judgement rather than a script as the oracle. - **Technology-facing, critiquing the product.** Quality-attribute work: load and stress behaviour, resilience under failure, security probing, resource behaviour over time. Usually needs specialist tooling and a realistic environment. The numbering that usually accompanies the grid is a **conventional label, not a sequence**. Nothing says the first cell runs before the fourth, and the authors of the model are explicit about that. The exact cell some check types belong in is argued over — that argument is far less interesting than what the grid is for. ## Using it as a diagnostic The grid earns its place when you stop treating it as a taxonomy and start using it as a coverage map for **kinds of evidence**. Plot what a release actually plans, then look at the shape. A smart-meter reading feed ships on a 3-week release train, and the release plan for the coming train lists 1,140 automated checks. Plotted, almost all of them sit in the technology-facing supporting-the-team cell, with a thin band of business-readable functional checks. Both critique cells are empty. Two consequences follow directly, and neither is visible from a pass-rate figure. No business-facing critique means nobody exercised the product as a real operator would. That is the gap that let a permission escalation through: the entitlement rule for reading a household's consumption history was implemented exactly as specified and checked exactly as specified, and only a technician actually using the thing would have noticed that the rule granted far more than anyone intended. Scripted checks confirm known expectations; they cannot notice something nobody thought to expect. No technology-facing critique means nothing established how the ingest path behaves when the half-hourly meter window bunches up after an outage and 218,400 readings arrive in one burst instead of spread across the window. Every functional check passes at trivial volume. The grid does not tell you how much of each cell you need — that is a risk judgement, and it depends on what the release actually changes. What it gives you is a quick, honest picture that a count of automated checks cannot: a release can be extremely well covered in one cell and have no evidence at all of the kind another cell produces. ## Its limits The grid says nothing about depth, sequencing, or how much is enough. It has no notion of risk weighting on its own, so a full grid with shallow work in every cell can look healthier than a deliberately lopsided plan that concentrates effort where the change is. Cell assignment gets argued about — where a contract check or an accessibility check belongs is a genuine debate — and those arguments are usually a waste of a planning session. Treat the model as a conversation starter that exposes a missing kind of evidence, then make the actual sizing decision on risk. ## Answering it well State both axes precisely, name what lives in each cell, say the numbers are labels rather than an order, and then show the diagnostic use: a real release whose plan was all one cell, and what that cost. Reciting four cell names without the diagnostic use is the weak version of this answer.

  • What does a release plan with both critique cells empty actually cost you?
    You lose every finding that nobody thought to encode in advance. Supporting-the-team checks confirm expectations that were already written down, so a plan made only of them proves the system still does what someone once specified. It cannot surface an entitlement rule that is broader than intended, a workflow that is technically correct but unusable, or behaviour that only appears under real volume. The evidence gap is not a coverage percentage; it is a whole category of question that was never asked.
  • Does the grid tell you how much work each cell needs?
    No, and claiming it does is the usual misuse. The grid classifies kinds of evidence; it has no notion of what the release changed or where the risk sits. A full grid with shallow work everywhere can be worse than a deliberately lopsided plan that concentrates depth on the areas that actually moved. Use the grid to notice a missing category, then size each cell from the risk in this particular release rather than from a wish to fill the picture.
  • Is the business-facing versus technology-facing axis the same as functional versus non-functional?
    No. The axis is about the language and audience of the check, not about the kind of property it asserts. A performance expectation stated as a business commitment — a customer-visible response time promised in a contract — is business-facing even though it is a quality attribute. A functional check written entirely in terms of internal interfaces is technology-facing even though it asserts function. Mapping the axis onto functional versus non-functional collapses the distinction the grid is trying to make.

saying these in an interview costs you the question

  • Gives the axes as manual versus automated and fast versus slow
  • Reads the quadrant numbers as an execution order
  • Equates business-facing with non-technical staff running the check
  • Uses the grid to demand equal effort in every cell
  • Cannot name what lives in the critique cells
  • Treats the grid as a substitute for risk-based sizing

context