Saturday, November 21, 2009

What makes up the Session-Based Test Management

Session-Based Test Management is an approach to managing exploratory testing introduced by Jonathan and James Bach. I read the articles on the topic long time ago, remembered the bits and pieces I found useful at that point, and started practicing.

After some years, I'm at a point where I reflect my personal style of managing exploratory testing with the original session-based test management.

On 12.9.2009 I made a summary of the differences and posted it on the bach-sbtm@yahoogroups.com to get a few replies. Unfortunately, right after posting I got busy with new work and did not follow through the discussions I started.

I identified these potential differences while comparing to the original article:
- Charter list comes from the testers that add stuff based on what they've learned while doing testing. I could add stuff as test manager, but I'd usually choose not to, but encourage the tester in that area in realizing the need of adding the charter.
- I use charters in a time-boxed, instead of estimate fashion. If the time-box is 90 minutes, the testing is interrupted at 90 minutes and the results and level of testing done are addressed
- When a session is over, there's three choices related to the charter that was worked on: claim it done, prioritize rest of it lower and go back later (if ever), or prioritize the rest of it high and continue on the next session.
- I tend to report bugs off session or in their own sessions due to time-boxing. Bug reporting I'd actually not time-box, but it's a task that takes as long as it does until complete.
- I monitor rough metrics with the setup / test / bug division, but typically more like asking once a day or twice a week than having anyone write a session sheet
- The most essential metric for me is velocity (progress in charters) compared to planned capacity (people and schedule) and work remaining. If "testing" portion in metrics is small, the charters tend to remain on the list.
- I tend to make sure people get feedback from things they've missed by encouraging overlapping work in some extent
- I separate debriefing (sharing info with team) from coaching. Coaching I'd do with individuals based on what I notice in debriefings. Main purpose of debriefing for me is to share ideas of how far are we and what we need to do next with other people in the same sandbox/area.
- As a "tool" for the tester, I suggest a piece of paper split in four areas (mission/sandbox, current charter, details, new charters) and a pile of post-it notes to keep track of what was supposed to be done and avoiding the accidental wondering off to wrong things. Intentional change of charter is allowed by the tester deciding she cancels the current session and starts a new one.
- My preferred session length is unit of half-a-days work, or a bit that can fit into half-a-day uninterrupted.

I also wrote then: "Based on the article, I got the impression that the core of the SBTM-approach is the tool-supported session sheet. I've just chosen to live with the interpretation that the core of SBTM is the session – splitting testing time into smaller chunks." -- what is the core? When is the approach to managing exploratory testing no longer session-based test management?

I will post my update on what I think after reviewing the thread of replies I should have looked at already in September.