Illusions, Sheriffs and Grassroots
Illusions
We’ve got a new product coming out sometime in the next month and the head of a different part of the company gave it a whirl recently. In talking to him about his comments he got up on his soap box and started to yammer on about quality. What struck me was his firm commitment to the belief that he is the gatekeeper for the product. Here are two quotes to illustrate:
The <department> is implementing a series of Quality Control measures…
If my department says that it is not of sufficient Quality then it isn’t being released.
This is a common stance for new testers, so it is not surprising that someone who has a decent profile within a company might feel this way. I used to, but came to see the folly of that way of thinking.
While this conversation was happening it occurred to me that he is falling for the illusion that he is a gatekeeper. And then it occurred to me that you can replace the word quality with illusion in almost any text or discussion without it really affecting the context too greatly:
- Quality Assurance == Illusion Assurance
- Building Quality in == Building Illusion in
- Quality through innovation == Illusion through innovation
- Our 100% code coverage gives us high quality == Our 100% code coverage gives high illusion (ok, this is not really clean grammatically)
It is an interesting trick that people, including myself sometimes, need to be mindful of. Are you really talking about quality, or are you talking about the illusion of it.
Sheriffs
When later mentioning the conversation with my boss I used a sheriff metaphor to describe the illusion this person was falling for (in reference to him trying to police the product — QC is (almost) always a policing action). The sheriff is ultimately the person who can green or red light something.
I don’t debate the presence of a sheriff as there most certainly is one. Except he sits in the big office down in the corner and not in the pit with everyone else. I also don’t debate that the person I was talking to doesn’t have a badge as he most certainly does. Knowing the politics I would guess his is even shinier than mine, which again, is ok. What I do debate however is that the badge is stamped ‘sheriff’. It is actually stamped ‘deputy’. (Credit to Michael Glenn for the metaphor extension.)
And there is nothing wrong with being a deputy. That is our role. We provide information about the state of the world to the sheriff who then decides whether to act on that information or not. They could always take our suggestions / opinions or they could take it as a tiny piece of the decision making process. But it is ultimately they who hold the power.
Grassroots
Lets focus in on the power that the Sheriff wields for a second. Ultimately, they steer the ship (yes, mixing metaphors all over the place) and the deputies and regular citizens have to go where they lead (or we could jump off the ship, but in this economy its more difficult than usual)
It is a commonly held belief that the quality of a product can be dramatically improved if actual developers and testers working on the product care hard enough. And by care I mean doing things like TDD, code coverage, static and dynamic automation, manual exploratory testing. To some extent I think this is true. Teams that care do tend to produce better code and as a result better applications.
But.
These are all grassroots activities and they can all be undermined entirely by the Sheriff. If the Sheriff is not absolutely committed to having Quality products then nothing the developer team can do will be enough to produce Quality products. They might have bits that are of high Quality, or being Quality-ish, but not taken as a whole. Its impossible. Here are some examples:
- Product to developer ratios of 5:1. Yes, that is product to developer, not the classic developer to tester ratio
- Having all the developers working on a new product while ignoring the others. Yes, developers is plural there, which coupled with the first example means a lot of code is going unmaintained and customers unsupported
- Contracting development of products which it has no programmer skill to support / maintain; even if there was capacity
Those are just the ones that are really bugging me (this week) and so come to mind. All of them dramatically affect the Quality of all the products across the company, and none of them are something a grassroots effort to improve would be able to touch. Unless the Sheriff is 100% dedicated to Quality and is willing to act (they are able to because they are the Sheriff) on it, then Quality is really just an illusion.