Exploratory Testing and the Planning Myth

[article]
Summary:

There is a notion that exploratory testing is devoid of and incompatible with planning. Supporters and skeptics alike tend to have concerns that exploratory testing might not work in their organizations because of this perceived lack of planning. Is exploratory testing necessarily unplanned? Let's take a look at the nature of plans and how exploratory practices fit into the big picture.

My last column ("What Is Exploratory Testing?") provoked some interesting reactions. One came from Yogita Sahoo, who agreed that ET can be useful, then asked, "But can we get others to agree on such an unplanned process?" Ms. Sahoo's question raises some very important issues, such as:  

  • What is "planning"?
  • Is exploratory testing necessarily unplanned?
  • Why might we need to do things that aren't rigorously planned?
  • How do we coordinate and support each other, if not with a plan?

Here's my short answer: Exploratory testing (ET), as I practice it, usually proceeds according to a conscious plan. But not a rigorous plan. Rigor requires certainty and implies completeness, but I perform exploratory testing precisely because there's so much I don't know about the product and I know my testing can never be complete. Exploratory testers coordinate with each other and gain support in the same way executives run large companies: by talking with each other and building credibility over time. It's not rocket science, except that rocket scientists and all scientists also use exploratory tactics in their work.

Exploratory testing may well be planned…

 The American Heritage Dictionary offers us four definitions of
"plan":

  1. A scheme, program, or method worked out beforehand for the accomplishment
    of an objective; e.g., a plan of attack .
  2. A proposed or tentative project or course of action; e.g., had no plans for the evening .
  3. A systematic arrangement of important parts; an outline or a sketch; e.g., the plan of a story .
  4. A drawing or diagram made to scale showing the structure or arrangement of something; e.g., the ventilation plans show two intake vents.

Notice that a plan can be a plan without necessarily being a specific, rigorous, complete, or recorded plan. Thus, one answer to Ms. Sahoo's question might be that good exploratory testing is a planned activity, even though it's not scripted in detail . I find it useful to define a test plan as "the set of ideas that guide the test process." This definition is consistent with at least the first two American Heritage definitions. In order to guide testing, the test plan must exist before the testing, but how long before? What if it comes into existence only moments before the testing? No problem. Nothing in the notion of planning prohibits simultaneous planning and execution. In football, when quarterbacks find that their receivers are too well covered, they may quickly make a new plan to run with the ball. An instant later, they execute the new plan. Thinking fast is no crime against plankind.

…but learning comes before the plan…

Still, I may be missing Ms. Sahoo's point. Another meaning of the planning question could be "How can we get others to agree on a process with such an open-ended and unpredictable plan?" To address that issue, it helps to invoke the most rigorous, repeatable activity you can imagine. Perhaps playing a flawless piano concerto. Now ask yourself, is there a plan in that activity? I would have to say yes. Now ask yourself, what happened before that plan existed? I would have to say some kind of rigorous composing and practicing process. Now, was that prior process guided by the same rigorous sort of plan? I suspect not. If we keep peeling back the layers of how things originated, we soon get to processes that obviously were not rigorously planned. There was a time before the choice was made to play that piece, or even learn the piano. Were those choices made according to formula, or were they subject to exploratory processes? For that matter the

About the author

James Bach's picture James Bach

<strong>James Bach</strong> is the founder of Satisfice, Inc., a test training and consulting company. James is coauthor (with Cem Kaner and Bret Pettichord) of <a href="http://stickyminds.com/books.asp?ObjectId=488&amp;Function=DETAILBROWSE&... target="_blank"><em>Lessons Learned in Software Testing</em></a>. He has written many StickyMinds.com columns and spoken at Software Quality Engineering conferences. He can be reached at <a href="mailto:james@satisfice.com">james@satisfice.com</a>.

StickyMinds is one of the growing communities of the TechWell network.

Featuring fresh, insightful stories, TechWell.com is the place to go for what is happening in software development and delivery.  Join the conversation now!

Upcoming Events

Nov 09
Nov 09
Apr 13
May 03