Other Posts

Asking Better Questions for 4 Different Purposes

coverimage
Photo by Jonathan Simcoe

“You should not ask questions without knowledge.” – W. Edwards Deming

A good tester asks good questions. Asking questions is a must-have skill for a software tester. Therefore, as a software tester, I see asking questions as a privilege, which is allowed under any circumstances. However, asking questions is not always easy. We all know sometimes a bad question may cause some communication troubles:

  • An unnecessary question makes developers annoyed.
  • A wrong question makes POs confused
  • An absurd question makes stakeholders scared.

Understanding the purposes of questions may help to ask them effectively. I’d like to share some thoughts on how to ask better questions for 4 different purposes.

I ask myself questions before asking people questions

Before asking questions, I consider asking myself questions first to figure out 2 important things:

  1. The background of the current situation - questions to figure out “what to question”:
    • Do I understand the current situation?
    • Is there anything unclear for me or for others?
    • Is my question important to make the current situation clear for me or for others?
  2. The target - questions to figure out “question to who”:
    • Do I find the correct person/group to address my questions?
    • Do I reduce the number of unnecessary persons?
    • Is the target person/group available at the moment?

If the answers are all “yeah” for the questions above, it’s good to go ahead!

I ask questions to collect information

It applies to the situation that I’m the one who wants to know the answer. Another person may give me the information. Usually, open questions are preferable in this case.

The background:

  • Current situation: Bob and Stuart were paring on some tasks. But these tasks are marked as “blocked” on our scum board.
  • Unclear thing for me: These tasks are blocked for which reason?
  • Purpose of the question: I need to know what I can help.

The target:

  • Correct person: Bob and Stuart
  • Unnecessary person: Bob or Stuart, no need both of them
  • Available person: Bob. He is going to have a coffee, without his headphone.

So it comes to my question to Bob: “I saw that some tasks of this story are currently blocked. I want to know if I can support you on these tasks. Maybe you know what is the blocker?”

I ask questions to confirm a response

It applies to the situation that I already knew the answer, but some wordings or terms would confuse people. Usually, closed questions are preferable in this case.

The background:

  • Current situation: App has a feature toggle which is disabling the new feature. Now we plan to release the new feature to customers. Bob, PO and I are discussing to turn feature toggle OFF.
  • Unclear thing for people: Bob might think that turning feature toggle OFF means still disabling the new feature.
  • Purpose of the question: It confirms that everyone is clear to let customers see the new feature.

The target:

  • Correct person: Bob and PO
  • Unnecessary person: None
  • Available person: Bob and PO

So it comes to my question at the end of discussion: “As we discussed, we are going to remove the feature toggle now and release the new feature. Does it means that our customers will see this new feature in the next release?”

I ask questions to make a suggestion

It applies to the situation that I probably know the correct answer, but others may or may not think about it yet. As it’s a suggestion and I’m not the person who will proceed working on it, I will pay attention to leave it as open as possible for the further discussion.

The background:

  • Current situation: Bob, Designer, PO and I are planning to have new designs of component A and component B in this release. Due to the schedule, they are not possible to be completed together in the same release.
  • Unclear thing for others: Component B is dependent on component A, but A is independent on B.
  • Purpose of the question: It provides a solution.

The target:

  • Correct person: Bob, Stuart, Designer and PO
  • Unnecessary person: None
  • Available person: Bob, Stuart, Designer and PO

So it comes to my question during the discussion: “As we all know, it’s impossible to finish new designs of both component A and component B. Since the new design of B depends on A but A doesn’t depends on B. How about we focus on finishing component A in this release first and then start to work on B in the next release?”

I ask questions to probe the thinking

It applies to the situation that no one has an idea for what is happening. And the root cause is unknown. Usually, 5-whys is useful to determine the root cause.

The background:

  • Current situation: Recently many customers send us reports and logs because they cannot log in the app anymore. After an investigation, Bob and Stuart cannot find any useful information to go further.
  • Unclear thing for people: The root cause of users cannot log in is unknown.
  • Purpose of the question: It probes thinking to find out root cause.

The target:

  • Correct person: Bob and Stuart
  • Unnecessary person: None
  • Available person: Bob and Stuart

So it comes to my question to start the discussion: “After we read all users’ reports and logs, what is the common thing they all have? Same language, same location, same OS, same device or…”

Then, we take a careful look at all reports and logs. We find that all customers have the devices from the same manufacturer and they have the same OS.

“Why the issue happens only on the devices from this manufacturer, with this specific OS?”

Then, we search for the news of changes in the new OS provided by this manufacturer. We find that this manufacturer made some changes on handling log-in events. Apparently, some other apps have the similar log-in issue on those devices.

“Since the OS changes impact on our app and other apps, what’s the common thing in our app and in other impacted apps have?”

Each question brings us to a deeper investigation until we finally determine the root cause.


The ultimate goal of asking questions is to eliminate ambiguities. Every question has to serve its purpose: to collect information, to confirm a response, to make a suggestion and to probe the thinking. Understanding which purpose your question is serving will help you to ask better questions.

Do you have any questions?

question