Skip navigation.

The Cicada Killer Wasp heuristic

heuristics
[textile]
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.
[/textile]

The Biggest, Scariest Bugs

Growing up where I did, on a country golf course in the hills of West Virginia, the Cicada Killer Wasp represented the biggest, scariest bugs a kid could come face to face with. They lived in holes burrowed on the edges of the greens and came flying out at us when we least expected them. We just didn't expect something so mean and nasty to live in such a developed and well groomed area like a golf course green.

Given this, the hueristic for me is to watch out for the biggest, nastiest software bugs in places that neither I nor anyone else might expect them, even the most well known and "comfortable" areas of an application.

Cool heuristic, but there are

Cool heuristic, but there are either additional outsourcing heuristics that could accompany this or this one isn't complete... or... or...

Sometimes, I "outsource" not because the problem is too scary, but because I simply don't have the time/energy/tools/patience for a particular problem. For instance, when I'm travelling for work, I often have my wife call the plumber/AC company/pool guy/poison the annoying bugs company to take care of stuff that I would do myself if I were home. Since I'm not home, I find those issues important enough to be taken care of before I get home to do it myself, so we bring someone else in.

Which is kinda what I'd do with your wasps. I *could* do it, but it's not worth my time/effort/risk, etc.

Anyway, I'm nit picking as I often do with your models and heuristics because I think it helps both of us clarify our thoughts. This heuristic is a whole lot better than any conscious one I had before reading this - Thanks for sharing!!

--
Scott Barber
Chief Technologist, PerfTestPlus
Executive Director, Association for Software Testing
sbarber@perftestplus.com

Comment viewing options

Select your preferred way to display the comments and click 'Save settings' to activate your changes.