Imaginary Dead horse heuristic Martin Jansson
A while ago I was going to a customer meeting to hold a workshop in SBTM, showing that testing could be managed in a different way. I feel fairly experienced in the way I work as a tester, but at a parking lot my humility and confidence turned over.
I was standing next in line to pay for the parking ticket. The middle-aged man in front of me was having trouble to get a ticket. He thought it might be something wrong with his credit card, so I offered to try out my card to test if it was the card or if the machine was in fact broken. There were several people behind me. After noticing that my card didn’t work either, which I knew had worked earlier the same morning, we concluded as a group that the parking machine was broken. There was another machine a bit further away that seemed to work, based on that the people using it were getting parking tickets and using their cards, so all of us went there.
On the way back to my car I walked past, what we called, the broken parking machine and two very old ladies were trying use it. I told the ladies that the machine was broken and they responded, “Yes, but how broken is it?”. I realized my blindness and my narrow definition of broken. Then the ladies said, “We are going to test to see if coins work.”. I rarely have any coins or paper money for that matter, so my narrowness on the test scope based on my own context of use, what I could do at that time.
I thought I had found a dead horse, but it was infact an imaginary one.
It’s also a wonderful lesson in perspective. What appears to be dead is not necessarily dead if you know what to look for. Sometimes we give up when we have run out of ideas, thinking that this is the end of the situation. A little change in perspective can inject energy into that study of an apparently dead idea/horse.
Yes, exactly so. When you think you have a dead horse in front of you, bring in someone from outside your bubble and ask them what they see and experience.
In the spirit of the Princess Bride, the horse might merely be mostly dead. 🙂
The Dead Horse heuristic says “Do not test a dead horse.”
Since this is a heuristic, to use it responsibly you must understand the reasons behind it and what its limitations are.
The reason you don’t test a “dead horse” product is because any bugs you find will be rendered moot by the upcoming new build of the product. The developers are already working on a big set of fixes and they don’t need to hear any more from tester right now.
But the parking meter situation is not like that. You weren’t testing it for the purpose of reporting bugs or deciding that it needed service. It makes perfect sense to keep testing it to see if there is a workaround to the problem.
In project terms, I might test a dead horse in order to practice my testing, or to provide information to tech support, or to improve my understanding of the kind of problem that it has.