Exploration and Discovery (BBC 23Q2)

A 1-hour workshop on exploring, and how we explore software systems

Open Miro frame. Return to central page

Changes made in delivery

We did not do the exercise Exploring Without Requirements.

We ran the first half of How do you Explore What a System Does? instead.

We may return to those exercises and the ideas they support in later workshops.

Discovery

Noticing things is ôdd. You may see something several times, before you notice it. You may need to gather plenty of information and push it around, for a while, before an underlying explaining pattern reveals itself to you. You may need a sleep, or a walk.

As exploratory testers, we have the pleasure of making regular novel discoveries.

Raster Reveal

This exercise / toy lets us easily access the experience of discovery. Use it to assess the ways that you recognise and react to that experience.

Exercise: Raster Reveal

1-minute exploration, short debrief, repeat 2-3 times

Play with the image: move over parts where you want to see more.

Then we'll talk about it. Some questions:

  • When did you know what you were looking at?
  • How did you know?
  • Did you think it was one thing before revealing another?
  • How could you describe your actions? Would your actions transfer to another person? Another picture?
  • What role do your knowledge, skills and judgement play in exploring this?

When you realise something, an idea has bubbled from your unconsious thought processes into your conscious mind. That transfer is the vital first step in turning incoherent observations into a useful model. For more on this, find wide references at :Dual Process Theory, and deep while accessible science at :Kahneman's Thinking Fast and Slow

Playing, with Purpose

Let's think of exploration as :purposeful play

A purpose both shapes and limits our play. We'll want to be clear about shapes and limits as we work on exploratory testing.

In these exercises, the purpose is to answer a question within a time limit...

Exercise: Puzzle 13 – don't explore before workshop

3 minutes exploring solo or in groups, 3 mins debrief

  • Open Puzzle 13 – it has buttons (on the left) and lights (on the right)
  • Play with the buttons, watch the lights
  • Purpose: What does the middle button do to the lights?

Debrief – exchange answers

Think about – how did you reach that answer?

Exercise: Puzzle 22 – don't explore before workshop

3 minutes exploring solo or in groups, 3 mins debrief

  • Open Puzzle 22. It's been reported that sometimes, the button doesn't work
  • Purpose: What might this report mean?

Debrief – exchange answers

Think about – how did you reach that answer?

Charters and timeboxes reflect the purpose of an exploratory session. We'll look at that in Working with Exploration II – Work.
Exploratory Testing can be thought of as exploration guided by :judgement. We'll start looking into that in Exploration and Testing.

Exploring Without Requirements

Testing involves comparisons: We can't test without using our judgement.

We can test without requirements – but often we're asked to restrict our judgement to situations where we're looking for inconsistency between requirements and behaviour. Testers can be uncomfortable with exploring to find out what a system does, because they feel they should start from a point of exploring what it is.

I try to help people work, with discipline, through a system's behaviours. We'll explore something to find out what it does, and from there what it is. We're not testing; we're making a model. We're not particularly judging the system, but we are judging the model we're building to gauge how well it describes the system.

Here's :more on exploring without requirements

Exercise: Exploring Without Requirements (not before w/shop)

10 minutes exploring, 5 minutes debrief.

The purpose of the exercise is to observe how you act, and how you feel, when working without requirements.

  • Explore Puzzle 15 in pairs
  • Write down what you do, and what you observe
  • The purpose of your observations is to look for similarities betwen the buttons.
  • Observe how you're working, and how your partner is working. DO talk about what you've seen.
  • Assess the models you build, and how you arrive at / accept / test / refute them

Debrief – let's talk. We'll use Miro if it's worthwhile.

Methods of Exploration, and Models

Your exploration will be influenced by what you're exploring, what you're using as you explore, and the :model that you're building.

In later workshops, we'll look into various methods of exploring working systems, and the models that they build. Those methods will typically share the following characteristics:

Characteristics of Methodical Exploration:

  • Reliable discovery of information
  • Shareable outputs, allowing work to be built upon
  • Methods reflect a model; they have a start point, a process, a way to change within context (or an end point).

Your exploration will build a model of the thing you're exploring. The model may not necessarily be clear at the start of exploration...

Session Notes allow you to share and reflect on what you've found, and to improve your methods. We'll look at that in Working with Exploration I - Records.

Characteristics of Commercial Exploration

Exploratory testing is typically shaped by commercial needs.

  • Swift – information sought is shaped by, and delivered within, available time
  • Relevant – discoveries are contextualised for the work
  • True – discoveries can be substantiated

extra material – may be used later

Ways To Explore a System

A swift thinking exercise.

Exercise – How do you Explore What a System Does?

5 mins to list, 10 mins or less to debrief

  • Make your own list away from the board, on your own
  • Add those items to the board with partners

Debrief

  • In groups or individually, if you see stuff which goes together, draw and label a circle for that grouping, and put them in
  • If something you want for a circle has moved to another, duplicate it and put it where you want it. Draw a line between if you like.
  • Let the groupings and their contents talk to you. If something's missing from a grouping, add it.

When activity subsides, we'll gather as a whole and talk.

I've written a :short and general list of ways.

:x Purpose in play

See Alan Richardson’s Dear EvilTester, book, chapter “What is exploratory testing?”

Alan calls this intent, I tend to say purpose

:x Definition of Model

For here: A limited, purposeful, comprehensible and mostly-true representation.

:x Thinking and acting

Thinking about doing, and doing, on a cycle

Great! You've successfully subscribed.
Great! Next, complete checkout for full access.
Welcome back! You've successfully signed in.
Success! Your account is fully activated, you now have access to all content.