Posts in Heuristics
The Pirate Heuristic

"Bad artists copy. Good artists steal."
-Pablo Picasso


The pirate heuristic says this, when you run out of ideas - steal someone else's.



Obtaining tools, ideas, and information to support your testing effort is critical to your success as a tester. When you have trouble recognizing the resources you have available it's important not to forget that great testers know that it's ok to steal. Look at past test plans, bug taxonomies, the notes of the person next to you, the Google super-mind, and any other resource you have available to you that you can exploit for your testing.

Don't break any laws (stealing tools illegally or stealing from a competitor), but make sure you aren't ignoring the wealth of ideas that surround you every day.

When you get stuck while generating ideas call upon the pirate heuristic.
The Cicada Killer Wasp heuristic
Over the weekend I was telling Jon Bach about a problem my wife and I have. We have Cicada Killer Wasps. They are big, scary, and when you see them, you run. Worse, they are hard to kill and they are really mean. This made both Jon and I think of James Bach's dead bee heuristic and we developed a new one for bigger and scarier bugs like Cicada Killer Wasps.

The dead bee heuristic works like this, when you see a bee in your living room, you run for something to kill it. When you get back and you don't see the bee any longer, you don't just say, "Oh, I guess he left." and stand down. No you say, "That darn bee's here somewhere..." and you stay on high alert! You wait for the bee to come back. The dead bee heuristic says I need to see the dead body or the bee fly out the window before I stop looking.

This applies to testing in the following way. If you find a bug, and you apply the dead bee heuristic, you will keep trying to reproduce the bug until you find it (dead body) or until you convince yourself it was truly user error (fly out the window).

Now what about Cicada Killer Wasps? I came up with a new heuristic. If the bug's big enough, outsource the problem. I thought of this because I thought about how I don't want to kill the Cicada Killer Wasps because all the scenarios involve me getting stung - badly. That made me think of testing problems I don't want to solve because they may involve me getting stung - badly.

For example, I may be working on a project that needs configuration testing. I'm not equipped to do configuration testing! I don't know how to kill configuration testing bugs. I don't have the tools or the highly skills configuration testing bug hunters. So, like with Cicada Killer Wasps, it may make sense for me to call in the configuration testing experts and outsource my configuration testing to a test lab (like Jon's).

That way I can be reasonably sure I don't get stung.