Test Strategy Mnemonics

Based on some current work, I’m going to need to extend my test strategy mnemonic to include ‘Accountabilities’.   That gives me a ton of options, such as ‘Gated Script Rats’, ‘Script a test drag’, ‘Attracts Red Pigs’ or ‘Egad! Script tarts’.

I’ll update once I’ve decided, but feel free to offer your favourites from the Anagram server, here and here.

Thinking about Test Strategy – A mnemonic device

I’ve recently been on the move a little, and have had a lot of chances to work on test strategy. I generally have historical documents to work from, but decided I should try to come up with a mnemonic device to ensure that I have all of the critical conversations that I need.

One of the most influential things for this was the RUP development case that Michael Ruschena presented when I worked with him at ANZ. This documented the team approach we had agreed upon to deliver a solution to the customer’s needs when working on our first agile project. This was one of the first times I was really conscious of “software development as applied problem solving”, prior to encountering Gerry Weinberg’s work. Paul Szymkowiak also commented that my test strategy reproduces a lot of what would be in the RUP vision artefact. I realised that in many cases, that’s true. Before deciding on the testing mission, what I’m frequently trying to facilitate is consensus on the project or business goals.

So that’s how this helps me. I hope it might help you. To that end, I present the first public version of my test strategy mnemonic – “GRATEDD SCRIPTS”.

  • Goals – What are the critical goals of the product? What are the things that absolutely must work?
  • Risks – What things are we hoping to avoid? What bad things might happen? What are we doing to address these?
  • Approach – How are we going to test this? How we will work together? Who will do what?  Accountabilities may also be considered here.
  • Tradeoffs – What tradeoffs we are prepared to make in order to deliver the desired business outcomes?
  • Environments – What environments do we have or need? What testing will we do in those environments?
  • Dependencies – Is anyone ‘outside’ the project depending on us? Are we depending on anyone? Are there external gates or constrained resources?
  • Data – Where will data come from? Are there any special needs?
  • Stakeholders – Who has a stake in the software/product/test effort? What are their goals? Who is accountable for what?
  • Coverage models – What models will we use to know that we are testing the things we care about? What models will drive test design and test coverage discussions?
  • Resources – Who is available to help with testing? What other resources might we need? What’s the budget?
  • Information needs – What information needs to come out of the testing process? What decisions does it need to support? What are we trying to learn?
  • Prioritisation – What is most important? How will we resolve competing interests, tasks or tests?
  • Tooling – Will any special tools be required? Will support be needed to develop these?
  • Schedule – What are the important dates and timings?Some of the items overlap, but that’s OK for my brain. Different prompts cause me to consider things in a different light.Ben Kelly proposed ‘Budget’ as a separate item. For myself, I cover this in Resources, but if you work in an environment where you are more hands-on with budgets than I typically am, you might find the mnemonic “B-GRADED SCRIPTTS” to help you with a more explicit ‘B for Budget’ reminder.

    So next time you are thinking about what your test effort should look like, try to work through the above points and see if there is anything you’re missing. Try to come up with your own mnemonic devices too to help you remember things that are important.

Planning to make use of learning – Incremental vs Iterative

During coffee with Agile-coach and all-round excellent guy Shane Clauson, in sympathy with yet another of my what’s-wrong-with-agile rants, he pointed me to this blog post from Jeff Patton:

Don’t know what I want, but I know how to get it

While my opinions diverge on some of what he says must be true, I think the important message that he (and others – Check Alistair Cockburn’s writing on this) make is that it pays to plan to iterate. That is, if you’re on an agile project and you don’t see anyone planning to rework things in response to feedback from using the product, you’re probably in for some disappointment.

I think we frequently fail to give our customers an appropriate expectation when it comes to (agile) software development. Having them read this isn’t a bad start, but you’ll want to figure out how to make this message your own.

The Egg testing challenge, context and mission

Matt Heusser is describing his challenge to test various inanimate objects – An egg, a stapler, a salt shaker and a knife. Read it here, but be sure to come back for the rest of the problem.

I’d now like you to spend a few minutes thinking about how you might go about testing an egg.

Now I’d like you to read this and this. (Oh, read this if you can’t read Chinese. Oops). Now ask yourself if there’s anything you’d like to change about your egg-testing strategy. Or another question you think might be worth asking before you start testing the egg.

The questions that leap out at me are -

- Who am I testing this for?
- What is the purpose of the egg?

When testing, we often assume the answer to these questions without checking what our mission really is. This can lead to unwelcome surprises at the pointy end of the project.

Now you can read this and start thinking about your egg testing strategy again! Happy testing…

About me

I'm Jared Quinert, a testing consultant located in Melbourne, Australia. With over fifteen years of experience, I specialise in agile testing, context-driven testing and intelligent toolsmithing with a focus on business outcomes over process. As one of the most experienced agile testers in Australia, I've been diving in hands-on since 2003 to discover how to build successful whole-team approaches to software development.

Contact Me