den här lektionen beskriver hur en effektiv strategi som används i ett parlor spel är direkt relevant för programvarutestning. Och varför veta denna strategi är inte tillräckligt.
först, vad är ”20 frågor”?
För alla som är obekanta med 20 frågor, erbjuder vi Wikipedias definition:
”tjugo frågor är ett talat sällskapsspel som uppmuntrar deduktiv resonemang och kreativitet., Det har sitt ursprung i USA och eskalerade i popularitet under slutet av 1940-talet när det blev formatet för en framgångsrik vecka Radio frågesport program.
i det traditionella spelet väljs en spelare att vara svararen. Den personen väljer ett ämne men avslöjar inte detta för de andra. Alla andra spelare är frågeställare. De turas om att ställa en fråga som kan besvaras med ett enkelt ”ja” eller ”Nej.”I varianter av spelet (se nedan)kan flera statliga svar inkluderas som svaret” kanske.”Svararen svarar på varje fråga i sin tur., Exempel på frågor kan vara: ”är det större än en brödlåda?”eller” kan jag lägga den i min mun?”Att ljuga är inte tillåtet i spelet. Om en frågeställare gissar rätt svar vinner frågeställaren och blir ansvarig för nästa omgång. Om 20 frågor ställs utan en korrekt gissning, har svararen stumpat frågeställarna och får vara svararen för en annan runda.”
den bästa strategin att använda i 20 frågor
för att utmärka sig i spelet med 20 frågor är det extremt användbart att veta ”vetenskapen” av spelteori och design av experiment., Välj var och en av dina frågor så att det blir en 50/50 sannolikhet att svaret på frågan blir ”Ja.”På så sätt lär du dig så mycket som möjligt med varje fråga.
för att ge ett exempel för att förstärka denna punkt är det enda du vet om vad du gissar att det är en levande person, och du väljer mellan dessa två alternativ för din nästa fråga:
- ”tänker du på David Beckham?”
– eller-
- är den person du tänker på Man?,
den andra frågan maximerar din chans att eliminera 50% av de återstående möjligheterna, medan den första frågan sannolikt kommer att ta bort endast en enda möjlighet och lämna dig med en färre fråga. Hexawise-driven testdesign handlar om att försöka ge dig maximalt möjligt lärande från varje enskilt testförhållande i varje enskilt test du utför.,
Wikipedias 20 Frågor inresa enligt följande, slående exempel på hur man med hjälp av denna enkla strategi kunde ha sparat 50 år av arbete för forskare att forska ljus:
”1901 Charles Sanders Peirce diskuterade möjligheten av Tjugo Frågor till en enda föremål ut från mellan 220 och pekar på skickliga försiktighet, sade,
” Så tjugo skickliga hypoteser kommer att fastställa vilka två hundra tusen dumma och kära kan misslyckas med att göra., Affärshemligheten ligger i den försiktighet som bryter en hypotes upp i sina minsta logiska komponenter, och riskerar bara en av dem åt gången.”
han utarbetade hur dess utredare skulle ha räddat sig från ett halvt sekel av arbete om denna princip hade följts i utredningen av ljus.,”
att veta den bästa strategin räcker inte
den välkända designen av Experimentboken med titeln ”Statistics for Experimenters” påpekar att du inte kan vinna ett spel med 20 frågor om din motståndare tänker på Abraham Lincolns Stovepipe hatt, men du har aldrig hört talas om Abraham Lincoln. Att ha viss expertis i det relevanta ämnet är avgörande.
vad som är sant för att vinna i 20 frågor är också sant för att skapa programvarutester.,
medan Hexawise kan kombinera dina befintliga testidéer på ett sätt som gör dig mer effektiv och effektiv än du annars skulle kunna vara på egen hand, är annan kunskap absolut nödvändig också för att utforma mycket effektiva mjukvarutester.,
Du kan inte konsekvent utmärka dig vid 20 frågor eller programvarutestning om du inte har en bra blandning av båda:
- strategi (för bästa sannolikhet att lära dig så mycket som möjligt med varje fråga du frågar i spelet eller varje test du utför i Hexawise)
och
- expertis (styrd av erfarenhet, instinkter och ämnesexpertis om det specifika ämnet)
ett specifikt exempel gör det här: endast en mycket liten andel av mjukvarutestare har ämnesexpertisen för att hitta svaret på denna testutmaning., Att använda Hexawise för att försöka hitta lösningen kan mycket väl hjälpa till när du har några testidéer att experimentera med, men om du inte kan tänka på några testidéer att experimentera med, kommer Hexawise inte att kunna hjälpa till.