Effective software testing is more than just an art or science. The successful tester must call on a range of disciplines to develop quality products. This success becomes amplified when all team members wear different hats and assume various responsibilities – at least according to Edward de Bono, author of the 1985 classic, Six Thinking Hats.
Although writing primarily for the business community, de Bono’s philosophy applies equally well to the software testing world. In order to develop the best possible products, QA teams should adopt 6 complementary cognitive styles throughout the development process.
In previous articles, we’ve covered 5 of these thinking Hats, including:
- Managerial Blue – determining goals and direction.
- Informational White – assessing tools and information.
- Emotional Red – analyzing gut feelings about the project.
- Discerning Black – applying analytical pessimism to find problems.
- Optimistic Yellow – using optimism to find harmony and hidden value.
This article explores Creative Green – the Hat that allows team members to uncover new opportunities and develop innovative ideas.
Green Hat Thinking Defined
In other words, what is possible – and how precisely do you get there?
An outsider might have a hard time reconciling how creativity meshes with software testing. After all, ours is a highly analytical field that requires critical thinking and logic.
But remember that software testing is an art – and it is largely Green Hat thinking that makes it so.
- The very act of finding problems requires an outside-the-box perspective that defies common sense. One must approach each task with a child’s mind that is open to new possibilities – both obvious and counterintuitive.
- The act of resolving problems requires even greater flexibility since, by its very nature, software testing is all about exploring new ground. We often find ourselves answering questions that have never been asked.
This explains why we (at Testuff) are such strong advocates of continuous training. The goal of courses, conferences, and self-study isn’t to make you more analytical. Rather, the goal is to expose your mind to new ways of doing things:
- Mastering a single methodology will make you a formidable expert to be sure.
- Dabbling in countless methodologies helps you create connections beyond reach of the most experienced veterans.
And this applies to more than just methodologies.
Green Hat thinking demands that you constantly try new automation approaches, new tools, new tests, and even new ways of outsourcing. And not just as a theoretical exercise to hone your skills – but actually in situ with the current project at hand.
Let’s explore how this works.
Green Hat Software Testing in Practice
As said, the Green Hat is all about exploring new directions, and reviewing new ideas. It starts with a general concept of a possible change and develops into an experiment, trying this new concept in practice.
The range is wide – anything goes. From considering continuous integration (if not used) to adding external resources to the testing process and experimenting with new and not-common methodologies.
True Green thinking goes much further than just adopting unusual methodologies. A few examples might be:
- Raising Ideas for change / improvement of the testing methodology
- Raising Ideas of how to change testers involvement in the development process (and vice versa, developers in the testing process)
- New ideas for how to shorten the testing process
- Integrating new tools, just developed lately
- Integrating new technologies in the automation testing
These are of course just examples. The real ideas, relevant for you, will come up in your group, by the one wearing the Green Hat.
What Green Hat Software Testing Cannot Do
Green cognitive thinking isn’t a cure-all for all of your testing woes – and you shouldn’t expect to find hidden nuggets all of the time.
What you will find, however, are ideas and approaches that you never would’ve tried otherwise. Wearing the Green Hat divorces you from “groupthink” and pushes you out of the traditional comfort zone.
But every now and then, you will discover something new. And with that insight, you can begin pulling the thread and develop innovative solutions to problems you never knew existed. You can make improvements that you never thought could be made.
Compounded Benefits of Green Hat Testing
As you can see, the advantages of Green Hat testing are tremendous. With the current project, you can find and debug all kinds of errors that might otherwise remain hidden.
But this approach also has the potential to reduce development times – both for today’s project and for tomorrow’s.
You might accidentally invent a new methodology that can be applied to future builds. Or you could uncover a faster way to suss out bugs or a cheaper method for fixing errors.
In isolation, Green Hat testing isn’t very useful. There is little value in pushing improvements if the entire platform exists on shaky ground. But when successfully combined with the other 5 hats in de Bono’s framework, this cognitive thinking style can make the competition turn Green with envy.