I named a technique the other day. It’s another one of those things I’ve been doing for a while, but only now has come crisply into focus as a distinct heuristic of testing: the Paired Exploratory Survey (PES).
Definition: A paired exploratory survey is a process whereby two testers confront one product at the same time for the purpose of learning a product, preparing for formal testing, and/or characterizing its quality as rapidly as possible, whereby one tester (the “driver”) is responsible for open-ended play and all direct interaction with the product while the other tester (the “navigator” or “leader”) acts as documentarian, mission-minder, and co-test-designer.
Here’s a story about it..
Last week, I was on my way home from the CAST conference with my 17 year-old son Oliver when a client called me with an emergency assignment: “Get down to L.A. and test our product right away!” I didn’t have time to take Oliver home, so we bought some clean clothes, had Oliver’s ID flown in from Orcas Island by bush plane, and headed to SeaTac.
(I love emergencies. They’re exciting. It’s like James Bond, except that my Miss Moneypenny is named Lenore. I got to the airport and two first class tickets were waiting for us. However, a gentle note to potential clients: making me run around like a secret agent can be expensive.)
This is the first time I had Oliver with me while doing professional testing, so I decided to make use of him as an unpaid intern. Basically, this is the situation any tester is in when he employs a non-tester, such as a domain expert, as a partner. In such situations, the professional tester must assure that the non-tester is strongly engaged and having good fun. That’s why I like to make that “honorary tester” drive. I get them twiddling the knobs, punching the buttons, and looking for trouble. Then they’ll say “testing is fun” and help me the next time I ask.
(Oliver is a very experienced video gamer. He has played all the major offline games since he was 3 or 4, and the online ones for the last 5 years. I know from playing with him what this means: he can be relentless once he decides to figure out how a system works. I was hoping his gamer instinct would kick in for this, but I was also prepared for him to get bored and wander off. You shouldn’t set your expectations too high with teenagers.)
The client gave us a briefing about how the device is used. I have already studied up on this, but it’s new for Oliver. The scene reminded me of that part in the movie Inception where Leonardo DiCaprio explains the dynamics of dream invasion.We have a workstation that controls a power unit and connects to a probe which is connected to a pump. It all looks Frankenstein-y.
(I can’t tell you much about the device, in this case. Let’s just say it zaps the patient with “healing energy” and has nothing whatsoever to do with weaponized subconscious projections.)
I set up a camera so that all the testing would be filmed.
(Video is becoming an indispensable tool in my work. My traveling kit consists of a little solid state Sony cam that plugs into the wall so I don’t have to worry about battery life, a micro-tripod so I can pose the camera at any desired angle, and a terabyte hard drive which stores all the work.)
Then, I began the testing just to demonstrate to Oliver the sort of thing I wanted to do. We would begin with a sanity check of the major functions and flows, while letting ourselves deviate as needed to pursue follow-up testing on anything we find that was anomalous. After about 15 minutes, Oliver became the driver, I became the navigator, and that’s how we worked for the next 6 or 7 hours.
Oliver quickly distinguished himself as as a remarkable observer. He noticed flickers on the screen, small changes over time, quirks in the sound the device made. He had a good memory for what he had just been doing, and quickly constructed a mental model of the product.
From the transcript:
“What?!…That could be a problem…check this out…dad…look, right now…settings, unclickable…start…suddenly clickable, during operation…it’s possible to switch its entire mode to something else, when it should be locked!”
and later
“alright… you can’t see the error message every single time because it’s corrupted… but the error message… the error message is exactly what we were seeing before with the sequence bug… the error message comes up for a brief moment and then BOOM, it’s all gone… it’s like… it makes the bug we found with the sequence thing (that just makes it freeze) destructive and takes down the whole system… actually I think that’s really interesting. It’s like this bug is slightly more evolved…”
(You have to read this while imagining the voice of a triumphant teenager who’s just found an easter egg in HALO3. From his point of view, he’s finding ways to “beat the boss of the level.”)
At the start, I frequently took control of the process in order to reproduce the bugs, but as I saw Oliver’s natural enthusiasm and inquisitiveness blossom, I gave him room to run. I explained bug isolation and bug risk and challenged him to find the simplest, yet most compelling form of each problem he uncovered.
Meanwhile, I worked on my notes and noted time stamps of interesting events. As we moved along, I would redirect him occasionally to collect more evidence regarding specific aspects of the evolving testing story.
How is this different from ordinary paired testing?
Paired testing simply means two testers testing one product on the same system at the same time. A PES is a kind of paired testing.
Exploratory testing means an approach to testing whereby learning, test design, and test execution are mutually supportive activities that run in parallel. A PES is exploratory testing, too.
A “survey session,” in the lingo of Session-Based Test Management, is a test session devoted to learning a product and characterizing the general risks and challenges of testing it, while at the same time noticing problems. A survey session contrasts with analysis sessions, deep coverage sessions, and closure sessions, among possible others that aren’t yet identified as a category. A PES is a survey test session.
It’s all of those things, plus one more thing: the senior tester is the one who takes the notes and makes sure that the right areas are touched and right general information comes out. The senior tester is in charge of developing a compelling testing story. The senior tester does that so that his partner can get more engaged in the hunt for vital information. This “hunt” is a kind of play. A delicious dance of curiosity and analysis.
There are lots of ways to do paired testing. A PES is one interesting way.
Hey, I’ve done this before!
While testing with my son, I flashed back to 1997, in one of my first court cases, in which I worked with my brother Jon (who is now a director of testing at eBay, but was then a cub tester). Our job was to apply my Good Enough model of quality analysis to a specific product, and I let Jon drive that time, too. I didn’t think to give a name to that process, at the time, other than ET. The concept of paired testing hadn’t even been named in our community until Cem Kaner suggested that we experiment with it at the first Workshop on Heuristic and Exploratory Techniques in 2001.
I have seen different flavors of a PES, too. I once saw a test lead who stepped to the keyboard specifically because he wanted his intern to design the tests. He felt that that letting the kid lean back in his chair and talk ideas to the ceiling (as he was doing when I walked in) would be the best way to harness certain technical knowledge the intern had which the test lead did not have. In this way, the intern was actually the driver.
I’m feeling good about the name Paired Exploratory Survey. I think it may have legs. Time will tell.
Here’s the report I filed with the client (all specific details changed, but you can see what the report looks like, anyway).
Shrini says
This is great …. by any chance, the video could be made available to some restricted audience (such as me). I really want to see you testing.
Shrini
[James’ Reply: Ach! My client would kill me, then sue my cold dry bones. What you need to do is hire me… Rumor has it I may be coming to Pune.]
Anne-Marie says
This post got me thinking, in particular:
“A survey session contrasts with analysis sessions, deep coverage sessions, and closure sessions, among possible others that aren’t yet identified as a category.
”
I realise that I have an additional session to add, the Estimate Session
I use this when, I’m asked to provide an estimate for testing based on little information. This often happens to me when I work with startups.
I used to to struggle with this and to compensate I would make a conservative estimate. The trouble was, because of that I often lost work.
Thenl I hit upon this idea.
I provided a high risk estimate but with the proviso that I if the quote was accepted I would be allowed to perform some upfront analysis to enable me to refine my estimate.
This means that when I start testing for the client, I was learning, performing analysis, testing and refining my estimate. If after the session I realised I had under(or over) estimated, I had the right to change my estimate.
Its worked well with some clients, in particular start-ups who tend to have little up front information to estimate and are willing to be flexible.
[James’ Reply: Interesting idea. I do this, too. But I’ve always considered it part of the survey. In other words, I don’t do a test session just to estimate. Instead I perform a survey (we used to call these “recon” sessions, and I could imagine them being called many other names including “walkthroughs” or “smoke test sessions”) and the outcomes of the survey is that I now know more about risks, product status, obstacles to testing, etc.]
Andriy Rushchak says
Hmm, great technique to use while mentoring newcomer to the project!
And question not realy connected to the post – Why would you need camera, isn’t screen capturing enough? Or the point is to be able to connect what you see on the screen with, foe example, keys pressed?
[James’ Reply: I needed to minimize set-up time and avoid intruding on the product.]
Griffin Jones says
“…it’s possible to switch its entire mode to something else, when it should be locked!”
Wow.
How very Therac-25-like.
[James’ Reply: This one’s a long way from shipping.]
Michael Bolton says
Apropos of Oliver being an unschooled video gamer, I thought you might be interested in this: Online gamers crack AIDS enzyme puzzle
Tal E. says
James Bond, James Bach, same thing lol
it’s great that you could get your son excited about testing, and make a good point about exploratory testing as you go 🙂
monika hardy says
nice.
i esp like this:
It’s all of those things, plus one more thing: the senior tester is the one who takes the notes and makes sure that the right areas are touched and right general information comes out. The senior tester is in charge of developing a compelling testing story. The senior tester does that so that his partner can get more engaged in the hunt for vital information. This “hunt” is a kind of play. A delicious dance of curiosity and analysis.
David Greenlees says
Way cool!
“Definition: A paired exploratory survey is a process whereby two testers confront one product at the same time for the purpose of learning a product, preparing for formal testing, and/or characterizing its quality as rapidly as possible…”
When you say “characterizing its quality” do you also be mean test execution? I note in the definition that you have learning and preparing, but could this survey also serve as the actual test of the product? Would there be instances where the PES would be enough with no further ‘formal testing’ be required?
Purely for my clarification.
Great post.
[James’ Reply: Of course I mean test execution. How else could one characterize the quality of a product? And yes, of course it may serve the entire purpose of testing a product, with no more formal testing.]