Seeing The Big Picture

Tips From A Seasoned QA Engineer

Cognizant Softvision QA Engineer, Andrei Hancu has participated in many self-development workshops, meetups and professional activities during his career. Here, he shares some of what he’s learned along the way, including concepts which have been major influences on him as a software tester and how those ideas might be integrated into the software quality assurance field.

Always start with the end!

At first, this might seem counterintuitive, but the more we think about it, the more it makes sense.

Let’s say a new project is about to start. We know who will be part of the team, we know what the budget is, we have stories in the backlog, pretty much everything is set up – the sprint starts now.

As an interviewer, I’ve asked this question many times: “Having all the preconditions mentioned above, what is the first thing that you, as a tester, would do?” The majority of people respond that they would either start writing test cases, explore the application (in case we have something to test) or something along those lines.

There were few people who started asking questions. “Why do we do this, and why do we do that? What is the purpose of the application? Who will use it and for what? Given the following prerequisites, what can I do to add value to the stakeholders? What will it look like when it’s finished?”

Usually people start asking questions only after they see inconsistencies or missing information in the specs, or when they see that things are not according to their expectations. It is like finding a bug in STAGE (which is good) instead of finding it in DEV (which is better). Asking these questions, especially in the beginning phases of the project, can lead to a lot of time saved later on.

Starting with the end is a concept that answers the “why?” question that encompasses our core values and principles. It gives us the big picture and helps us think outside the box, bringing the value our customers need.

Cucumbers get more pickled than brine gets cucumbered

You can make pickles out of cucumbers, but you cannot make cucumbers out of pickles. If we shift this metaphor to a team which develops software, we interpret this to mean that a new person who joins the team will adopt the team’s habits and values, detrimental to their own.

It’s the same thing as when entering a room where somebody smokes. At first, the smoke smell is very strong, but after a while, we get used to it, until we almost don’t notice it anymore. We need to leave the room (change the environment) and then come back in order to reset our senses.

So, why would this matter? Why is it important to “cucumber” the pickle jar? Put simply, the reason you are part of that team is that you have a set of skills, knowledge and experience. There is no other person on the team who has the exact set of knowledge as you, or who brings the same value that you do. If you are not able to contribute your specific skills, then you would not bring too much value into the team. If you constantly do what others say instead of doing what your experience and knowledge has taught you, then you will make very little impact.

It is very important to come up with our own ideas, habits and skills in order to make a difference. Quality is part of every aspect of the software development lifecycle. Share your thoughts and share your ideas!

Yes, and…

“Yes, and…” is part of a game that is played during improvisation theater courses. The game is very simple. It consists of a dialogue between two people and has one rule: each of them must reply to the other using some key words, so that the conversation actually makes sense.

In the first part of the game, each participant must answer with “No, but…” to the other person’s affirmation. In the second part of the game, the rule is to use “Yes, but…” as an answer. In the third part of the game the rule is to answer with “Yes, and…”

So, why is this useful?

As you may have guessed, the most diplomatic, constructive and beneficial way of responding to somebody is by using “Yes, and…” People are social beings who need approval and acceptance, and to have their ideas confirmed. A relationship between two people needs time to be built and is based on respect and mutual trust. One of the most important factors that contribute to building this relationship is the “yes” factor.

What’s the difference between “Yes, but…” and “Yes, and…”? Consider the following:

Imagine a conversation between you and somebody else – your colleague, your lead or manager, your client, your partner, your parents or children. You propose something, you need something, or you want something from them…and you ask for it. 

How do you feel when they will say: “Yes, but….”?

Take a minute and imagine this conversation. Stop for a moment, don’t read further, and literally take a minute to think about it.

Now repeat the exercise, but imagine that you are on the other side of the conversation, and you reply with “Yes, but…” How do you think they will feel in regards to your answer?

But what about if we use “Yes, and…”? How does that conversation play out and do you find it evokes different emotions? 

The things that you measure are the things that you improve on

Have you set goals for yourself? For example: 

  • I would like to read more
  • I would like to spend more time outside, or socializing, or with my family
  • I would like to do more of this and less of that

Have you attended meetings, or retrospectives in which the “To do” list was full of suggestions? For instance: 

  • We need to be more proactive and ask more questions 
  • We need to communicate better
  • We need to estimate better

We all have values and things that we say are important to us and that we want to improve upon, but we don’t measure them. We lose faith and focus when the results fail to show up due to the lack of feedback. 

Numbers and snapshots of past or current states give us an idea of where we are and what we need to do in order to reach our goals. They offer us a way to see our progress (or regress, for that matter).

Measuring is feedback on where you are, not who you are. Measuring helps us focus on the things that matter and ignore the things that don’t.

Take a few moments to answer the following questions, from a QA perspective: 

  • How do you know if you’re doing your job right?
  • How do you measure it?  

Key Takeaways

Today, living in the 4.0 Industrial Revolution era, more and more jobs tend to be automated, or at least partly automated. This includes testing, as we all know. Yet there is something that can never be automated. And that is creativity. Creativity is a trait that is embedded within us. It depends only on us to think and have ideas, but mostly to implement or make use of them.

Testing should not be a list of tasks that we check or mark as done, like stories in the backlog. Testing is rather an attitude, a state of mind. Curiosity, creativity, the desire to explore should be the main characteristics that drive a software tester engineer. 

And that is why, in order to constantly be able to reinvent ourselves no matter the context, my mantra and message to you is “breathe, play and daydream!”

Sources & Inspiration:

“Train the trainers“ course

Beware the Pickle” course. Ard Kramer and Beren van Daele. Ministry of Testing.

”Focus: The Ultimate Guide on How to Improve Focus and Concentration.” James Clear

“Test Strategy.” James Bach Testing Camp meetup