top of page
  • kellyellenkenyon

Mneomonics, Heuristics, and Thought Techniques

Do some research into mnemonics, heuristics, and thought techniques. Pick one or two to try.

Testing Mnemonics

\”A mnemonic device is a mind memory and/or learning aid. Mnemonics rely on associations between easy-to-remember constructs which can be related back to the datat that is to be remembered.\” Wikipedia.


SFDIPOT- (San Francisco Depot) Test Strategy Heuristics by James Bach

Structure Function Data Integrations Platform Operations Time

MCOASTER-  Test Reporting Heuristics by Michael D Kelly

Mission, Coverage, Obstacles, Audience, Status, Techniques, Environment, Risk

FAILURE – Error Handling Heuristics by Ben Simo

Functional, Appropriate, Impact, Log, UI, Recovery, Emotions

PROOF – Session Based Test Reporting Mnemonic by Jon Bach

Past Results Obstacles Outlook Feelings

Few Hiccups – James Bach and Michael Bolton

Familiar Explainability World History Image Comparable product Claims User Expectations Product Purpose Standards Statutes

Heuristics

Heuristics are efficient mental processes (or \”mental shortcuts\”) that help humans solve problems or learn a new concept.

Heuristics (also called “mental shortcuts” or “rules of thumb\”) are efficient mental processes that help humans solve problems and learn new concepts. These processes make problems less complex by ignoring some of the information that’s coming into the brain, either consciously or unconsciously. Today, heuristics have become an influential concept in the areas of judgment and decision-making.


Examples

Goldilocks “too big, too small and just right”.

Touch Points Identify any public or private interface that provides visibility or control. Provides places to provoke, monitor, and verify the system.

Interruptions Log Off, Shut Down, Reboot, Kill Process, Disconnect, Hibernate, Timeout, Cancel

Judgement Inconsistencies, Absences, and Extras with respect to Internal, External – Specific, or External – Cultural reference points. (James Lyndsay, Workroom Productions)

Users & Scenarios Use Cases, Soap Operas, Personae, Extreme Personalities

Thought Techniques

Creative or Lateral thinking- Amir Ghahrai- Software Testing and Different Thinking Types


Creative or Lateral Thinking

Creative thinking means looking at something in a new way. It is the very definition of “thinking outside the box.” In creative thinking, we break away from established theories, rules and procedures and do things in a new and imaginative way. In the context of testing, for example, this could be when we apply new test techniques, e.g. pairwise test technique to reduce the number of permutations yet increase coverage.


Analytical Thinking

Analytical thinking refers to the ability to separate a whole into its basic parts in order to examine the parts and their relationships. It involves thinking in a logical, step-by-step manner to break down a larger system of information into its parts. For instance when we look at architectural diagrams and try to figure out the path through the system and individual components. A good example is when we analyze what happens when a user submits a form and the request is sent to an API which communicates with a Database.


Critical Thinking

Critical thinking is the ability to reason by carefully analyzing something in order to determine its validity or accuracy. It is about being an active learner rather than a passive recipient of information. Critical thinking is possibly the most important type of thinking in the context of testing. As testers, we should always question ideas and assumptions rather than accept them at face value. For example, when looking at a user story, we could be asking questions about the acceptance criteria rather than accepting them as they are given to us.


Concrete Thinking

Concrete thinking refers to the ability to comprehend and apply factual knowledge. It is the opposite of abstract thinking. People who think concretely like to follow instructions and have detailed plans. They hate anything that is fuzzy or ambiguous. As such concrete thinkers prefer to work with lists and spreadsheets. In the context of testing, this is when testers demand that all instructions should exist before starting to test. E.g. some testers won’t start testing until all acceptance criteria are defined in a user story.


Abstract Thinking

Opposite of concrete thinking, abstract thinking refers to the ability to think about things that are not actually present. Software testers who think in an abstract way look at the broader significance of ideas and information rather than the concrete details. For example in the context of testing and story grooming sessions, testers with the ability to think in an abstract way can come up with interesting test scenarios. Rather than just reading the acceptance criteria, testers will look at a user story and try to figure out how this could relate to or impact other parts of the system.


Divergent Thinking

Divergent Thinking refers to the ability to generate creative ideas by exploring many possible solutions in an effort to find one that works. It involves bringing facts and data together from various sources and then applying logic and knowledge to make decisions. When doing exploratory testing, we apply oracles and heuristics and make judgments based on our previous experiences.


Convergent Thinking

Convergent thinking is the ability to put a number of different pieces or perspectives of a topic together in some organized, logical manner to find a single answer. For example, when we try to find a root cause of a defect, we gather relevant information and extract necessary data.


Sequential Thinking

Sequential (linear) thinking refers to the ability to process information in an orderly prescribed manner. It involves a step-by-step progression where a response to a step must be obtained before another step is taken. In the context of software testing, this correlates to when we follow a script with predefined steps and expected results.


Holistic Thinking

Holistic (nonlinear) thinking is the ability to see the big picture and recognize how the components form the larger system. It involves expanding your thought process in multiple directions, rather than in just one direction. In the context of testing, this is when we perform integration or system testing.


Six Thinking Hats- Edward De Bono

The Six Thinking Hats is a role-playing model presented by Edward de Bono in 1986. It serves as a team-based problem solving and brainstorming technique that can be used to explore problems and solutions and uncover ideas and options that might otherwise be overlooked by a homogeneously thinking group. The hats have natural pairings: yellow is positive while black is negative; red is emotion driven while white is data driven. In general, if you use one hat, you should also use its partner for balance.

Ask leading questions to activate different hats:

What data do we have or need? (white) What could go wrong? What are the possible negatives? (black) List all the benefits (yellow) Is there a different way of looking at this? How could the idea be further developed? (green) What do you feel about this? What is your gut feeling? (red) Could you summarise the findings so far? What needs to happen next? (blue)


Cheat Sheets

Other Links

1 view0 comments

Recent Posts

See All
Post: Blog2_Post
bottom of page