Archive

NoTesting

Testbash Dublin and Organisational Psychotherapy

As I mentioned in my previous post, I’m just back from presenting an interactive session on Organisational Psychotherapy at Testbash Dublin. Some folks seemed confused as to the relevance of Organisational Psychotherapy to testers and the world of testing, so I’m happy to explain the connection as I see it. (And please note that many of my previous posts on Organisational Psychotherapy may also help to illuminate this connection.)

I’ll start by riffing on something Rob Meaney said during his presentation:

“Significant quality improvements [aren’t] driven by testing. They [are] driven by building relationships and influencing the right people at the right time.” ~ @RobMeaney #TestBash

Quality (and other) improvements come from improved relationships. This has been a theme on this blog for some years now. For example see: The Power of Humane Relationships.

I asked a key (for me) question during my session (several times):

“If we accept that (as per the Marshall Model) it’s the collective mindset of the organisation that determines its relative effectiveness, how do we propose to support the organisation if and when it choses to do something about its mindset?”

Unsurprisingly perhaps, I heard no answers, excepting my own proposal for a means to that end: Organisational Psychotherapy.

I wonder how many folks involved with testing ask themselves and their peers the question “How can our organisation become more effective at testing?”. Or, using the #NoTesting frame, “How can our organisation become more effective at delivering quality products and services?”

Fellowship

Organisational Psychotherapy is not just about improving product quality, however. Through improved relationships, and a shift in how the organisation relates to its people (i.e. from Theory-X to Theory-Y), the quality of life at work also improves. Put another way, we all have more fun, more job satisfaction, and get to realise more of our potential at work. Further, for all the folks that matter, their several needs get better met. And, as a bonus for the organisation itself, it gets to see its people more productive and engaged. What’s not to like?

Incidentally

I’ve also written elsewhere about using the Antimatter Principle in practical ways during software development. For example, during development we eschew requirements gathering in favour of incrementally elaborating hypotheses about the needs of all the folks that matter, and then conducting experiments to explore those needs. I can envisage teams that still need testers adopting a needs-focused approach to driving testing. For example, putting into place various means by which to answer the question “how well does our product meet the needs of the people that matter to us?”.

Practical Applications

On a related note, some folks asked me about practical applications of Organisational Psychotherapy in their day-to-day work as testers. Here’s just a few applications which immediately come to mind:

  • Improving communication with the people that matter (i.e. developers, fellow testers, management, stakeholders, customers, etc.). I find NVC (nonviolent communication) skills and practice particularly useful in this context.
  • Clarifying what works and thus what to do more of (Cf Solutions Focus). This can improve team retrospectives.
  • Helping the people that matter (including ourselves) feel better about what we’re doing (Cf. Positive Psychology).
  • Understanding each other’s strengths, with a view to having the right people in the right seats on the bus (Cf. StrengthsFinder).
  • Eliciting requirements (if you still do that) (Cf Clean Language).
  • Building a community (such as a Testing CoP or a multi-skilled self-organising product team) (Cf Satir Family Therapy).
  • Improved cooperation with higher-ups (empathy, Transactional Analysis, etc.).
  • Dealing with blockers to changing/improving the way the work works.

Invitation

I’d love to hear if this post has helped put my recent Testbash session in context.

– Bob

Testbash Dublin

I’m just back from presenting an interactive session at Testbash Dublin. I enjoyed conversations on the topic of the session – Organisational Psychotherapy – as well as conversations around e.g. #NoTesting. Indeed, I noted a common theme running through many of the sessions from the more seasoned testers presenting: a grumbling low-key disaffection with the notion of testing as a path to quality.

No Testing

A number of folks engaged me in trying to better understand what I might mean by #NoTesting. Such conversations generally start out with “What do you mean by ‘testing’?”. My time in Dublin has allowed me to see through my discomfort in avoiding this question (yes, I generally choose to avoid it). I’m loath to get into semantic arguments from the get-go. I find they rarely lead to productive mutual exploration of such topics.

The bottom-line, is: It doesn’t matter one iota what I mean by “testing”. Whatever YOU mean by “testing”, that’s what I’m talking about when I mention #NoTesting. It’s an invitation for YOU to pause awhile to consider how life would be different if you stopped doing “testing” (whatever YOU choose to understand by that term) and did something else to address the same ends.

Ends Over Means

There’s an idea from therapy which might help you understand this perspective. In eg Nonviolent Communication (and some other therapies), human motivation is assumed to stem from attempts to get our needs met. That is, our behaviours and actions result from the strategies (means) we choose in order to meet our needs (ends). Any particular strategy affords us a limited palette of behaviours and actions. Aside: Often, we have little or no conscious awareness of either our ends or our chosen means.

“Testing” (whatever YOU choose to understand by that term) is a strategy you (or someone else) has chosen – almost always, implicitly –  for getting your or their needs met. And other folks’ needs, too, in the general case.

There are always other strategies (means, options) for meeting folks’ needs. Yet rarely do these other strategies receive any consideration. Maybe some of these other options offer a way to better meet folks’ needs. How would we ever discover that, without considering them, becoming aware of them, exploring them?

So that’s what I’m talking about with #NoTesting (amongst a raft of #No hashtags) – an invitation and reminder to actively consider whether your default means (strategy) are best serving your ends (needs), whether your first and automatic choice of strategy is the most effective way to attend to your – and other folks’ – needs.

– Bob

No Hashtags

[Tl;Dr: #No… hashtags are aspirational, not didactic.]

I seem to have been labouring under the misapprehension that most folks in the Twitter software and product development communities have come to understand the mode of use of the various #No… hashtags we see regularly these days. Particularly with the widespread exposure of the mother of them all: #NoEstimates.

(Note: I use the #NoTesting hashtag in a couple of the examples, below, mainly because recent discussions thereon have suggested to me a need for this post.

Invitational

For me, #No… hashtags are a short invitation to interested folks to think again about what, often, are near-autonomic responses. For example, I regard each occurrence of the #NoEstimates hashtag as an invitation to ponder whether, in each case, estimates are giving us value and meeting folks’ needs (in a relatively effective way). An invitation to checkpoint ourselves, and to discuss whether we are just us going-through-the motions without thinking too much about the role of estimates – and estimating – in any particular situation.

Aspirational

Also, I see #No… hashtags as being intended as aspirational: Articulating or labelling a future state where things could be different. Aspiring to change.

For example, I use #NoTesting to advertise my aspirations for a world of development where testing is no longer the chosen path to quality, replaced by other means for more economically delivering products, etc., with agreed levels of quality. So, in that case, #NoTesting really does advertise my aspiration for an end to testing – which I see as hugely expensive and wasteful compared to other, less well-known means – but NOT at the expense of product quality. It also implies – easy to miss, I guess – a responsible, calm, controlled transition from todays’ approaches to that aspirational future state.

“Ask not ‘how are we going to test this?'”
“Ask rather ‘how are we going to ensure this goes out with the agreed levels of quality?'”
“And when you’ve got a handle on that, ask then ‘how are we going to ensure that everything we do henceforth goes out at the agreed levels of quality?'”

Confrontational

And yes, too, #No… hashtags are confrontational. They invite us to challenge ourselves and our entrenched beliefs. To consider change, and its implications. And that’s often uncomfortable, at the very least. Particularly when the topic challenges folks’ self-image, or seems to threaten their accumulated wisdom, reputation and experience, or their livelihoods. I hope we can all see these things in the spirit of mutual exploration, rather than as an opportunity for reiterating entrenched positions and protecting the status quo.

“[#No… Hashtags are] the social media equivalent of poking people with a stick.”

Metaphorical

When I use #No… hashtags, I’m being metaphorical rather than literal. Some folks may not understand this and get upset, by taking them literally. For my part, I believe that’s on them.

For example, with the #NoTesting hashtag, I have had some folks assume that I’m advocating abandoning any concern for the quality of e.g. a product under development. This is not my position. Although denying it seems only to inflame the situation once folks have got their teeth clamped on that particular bone. I guess their assumptions stem from not having knowledge of other means to quality.

In using the #NoTesting hashtag, I’m basically saying “under some circumstances, maybe there are other, more effective means to meet folks needs re: product quality than the default strategy most use today (i.e. testing)”. “How about we talk about those various circumstances, and means?” In this way, #No… hashtags are a metaphor for “would you be willing to think again, and maybe join the search for more effective means, and the contexts in which they might bring benefits?”

Summary

Would you be willing to join me in embracing the #No… hashtag modality, and take each occurrence as an opportunity for a productive and relationship-building mutual exploration of a topic?

– Bob

Further Reading

The Germ Theory of Management ~ Myron Tribus

The Structure of Scientific Revolutions ~ Thomas S. Kuhn

 

More NoTesting

My recent post on No Testing met my needs in that it helped start, and sustain, some interesting face to face conversations at Agile Testing Days 2014 in Potsdam, last week.

Of course, face to face, one can explore a subject and clarify confusions rather more easily than via online channels.

I Can’t Believe It’s Not Testing

Some folks have expressed some incredulity that there might exist strategies – other than “testing” – by which software teams might attend to folks’ needs. These needs including: a quality product, confidence in that quality, and so on. Many of the questions about my post seem to have stemmed from reading it through the lens of “there must be tests, and testing, therefore he must mean…”

So, for clarity, my original post suggests that, yes, we don’t necessarily need testing. Not that testing could be done by others, such as developers. Or at other times, such as before code is written, or even as it is being written. Rather, I suggest that folks’ needs can – in some cases – be met by e.g. more capable developers, more humane relationships,  an Agile Path to Quality, and letting the team make the difference.

I guess this position is a little closer no “No testing” than some have guessed.

What Happens To The Testers?

Listening at Agile Testing Days, I heard a lot of folks – the majority, testers – expressing frustration, disappointment, etc. about their situations. Specifically, how they felt they could be contributing so much more to their teams and products, if only the opportunity was there.

It strikes me that there are so many “testers” willing and able to do so much more than just “testing”, yet find themselves pigeon-holed into a narrow definition of their role. A number of the conference presentations spoke to this theme, including my own and that of Antony Marcano (links to videos soon).

So, for clarity, I’d suggest that many testers would be fine in a No Testing shop or team, as it affords them opportunities for:

  • more autonomy in attending to folks’ need
  • more scope for mastering software development
  • participating more fully in a broader range of team activities
  • addressing the core purpose of their organisations, teams and products.

– Bob

No Testing

Testing. Checking. Inspection. Exploration. Learning. Everybody has a different understanding of what testing is. And is not. (Hint: AFAIC, it’s NOT “QA”. And it’s NOT “TDD”).

I’m not going to upset people by offering my own definition. I make no claims to be an expert on testing.

When I’m a customer, I know I don’t want to pay extra just for a product that works as advertised. By extension, I’d not want to pay for testing. I want a product that “just works”. And if asked to pay more, I’d have to enquire skeptically “why can’t you people build it right in the first place?”.

Some years ago now, David Anderson wrote a blog post asserting that “All testing is waste”. I concur. But is it necessary or unnecessary waste (Type I or Type 2 Muda?). And does that categorisation depend on the capabilities of the team(s) – the developers – building the software? If the developers can’t deliver software with the intended levels of defects (which could be non-zero, btw) then maybe testing is a necessary waste, to compensate for that inability. And maybe it’s cheaper and more humane to employ less capable developers, bolstered by testers, than to have capable developers who can meet intended defect levels reliably.

So, do we have to test, despite the customer being unkeen to pay for it? Despite it adding little or no value from the customer’s point of view? Or can we find other, more economic and humane ways to meet the needs testing currently addresses?

Needs

“Testing” is one strategy for getting folks’ needs met. Some of their needs, at least. We might imagine there could be other strategies for getting those same needs met.

What needs does testing address? And who has these needs?

  • Testers need to continue earning a living in their chosen profession, to feel belonging in a community, to earn the respect of their peers for a job well done, to continue their self-development and learning, to add value and make a difference.
  • Customers need stuff that works (that meets their needs), for a price they’re willing to pay.
  • Companies making stuff need to safeguard their reputations and revenues.
  • Managers generally need to appear capable of delivering new products which meet the company’s and customers’ needs, whilst also controlling margins (costs vs returns).
  • And of course every individual may have their own particular personal needs, too.

Strategies

My question is: “Is testing the best strategy for meeting all the above needs?”. It may be the best known. The most widespread. The default. But is it the most economic? The most humane? Indeed, what are the dimensions of “best” here? Or even of “reasonably effective”?

“No Testing” attempts to flag up these questions. No soapbox. Just open enquiry.

– Bob