Recently I had the opportunity to participate in Rapid Software Testing (game master Michael Bolton) and the acclaimed dicegame. I also had the chance to be game master on a variation of the dicegame session for a small test team. Reflecting on the experiences I had two considerations: (Some spoilers apply)
When are you confident enough?
The dicegame is played by a loop of theories/ideas and tries/tests on the idea. The goal is to produce a theory/algorithm that can succesfully predict the number that the game master presents. How many tries/tests/checks would give you confidence in the theory you have in mind? Options:
The dice game seems simple, but the problem domain of even the dice game is infine. Or at least practically infinite (7776 is practically infinite in the dice game IMHO). James Bach replied to my tweet that "The number of tests doesn't matter, but the character of the test, relative to your mental models, matters a great deal.". My purpose is not to find a fixed number of tries, but to make you consider the underlying assumption on confidence levels. That is you have a confidence in your model until it fails. You are confident to the level of x succesfull predictions, where the x+1 prediction fails. All you know at that time is that your theory is "incomplete" (not wrong, not right) - and this calls for more learning and more ideas...
All oracles are failable
The oracle in software projects is the ressource of answers - the documents, the mindmap, the subject matter expert. In the dice game the game master is the oracle (ie Michael Bolton, James Bach or yours humbly). We are humans hence failable. The physical oracles (docs, ...) even more. This made me ponder:
Michael Bolton replied to my tweet that "In the dice game, we need to be prepared to deal with any test that a tester offers. Is it a bug? That depends on the framing." The key framing of the dice game is usually a lesson in learning, in theory setting and trials of that theory - still under the underlying assumption that the game master can deal with any test that is offered. What would happen if the game master was blindfolded? What would the case if the algorithm was more complex - less humanly processable in a short time. There will always be a level of capability of the oracle, and it will fail - eventually.
Add a Comment