TechAIDBlogSoftware testingStop being Objective when it comes to Quality
By Alex Dillon 03/31/2020 0

Stop being Objective when it comes to Quality

In general, we tend to be subjective about quality because we tend to think that what we perceive to be of quality, is what others perceive as well. At times, we may say – “this food sucks” or “this event sucks” or this code sucks” or “this product sucks” or maybe even, “this article is great” – when we make these type of statements, we are really referencing the quality of that thing we are observing, and although something may appear to be of high quality for you, it could appear the opposite for another.


We have to remember that a software product exists solely to provide a solution to a human problem. That means that when we are talking about the quality of a software product, we need to continually consider people’s emotions, experiences, knowledge, goals, moods, curiosity, and intuition. Many have tried to define quality as something objective, but have missed the mark in understanding quality because they have attempted to omit or quantify the human factor.


With that said, I want to make a couple of bold statements that may get me in trouble.

    • Quality is not objective, there I said it!
    • Quality is not defined only by what I perceive individually.
    • Quality cannot be measured in its totality.
    • What was once considered of high quality, may not be the same today.


Ok, if you are still reading, then let’s move on to discuss these statements in more detail.


These statements may seem scary to some, but that is just because people are afraid of what they cannot control, define, or measure. And quality in its totality cannot be quantified. We may measure indicators, but that’s about it. Still, some have tried to box quality into one definition, and I want to look a bit at these definitions further to see if they are up to the task of containing “quality” in its totality.

    • ISO 8402-1994
      The totality of features and characteristics of a product or service that bears its ability to satisfy stated or implied needs.
    • ISO 9000-2015
      The degree to which a set of inherent characteristics fulfills requirements
    • ISO 25010-2011
      The degree to which a software product satisfies stated and implied needs when used under specified conditions
    • IEEE
      1. The degree to which a system, component, or process meets specified requirements.
      2. The degree to which a system, component, or process meets customer or user needs or expectations.
    • ISTQB
      The degree of conformance to explicit or implicit requirements and expectations.
    • SCRUM
      The ability of the completed product or deliverables to meet the Acceptance Criteria and achieve the business value expected by the customer.


In their least common denominator, all of these definitions have one thing in common; they all attempt to define quality as features or characteristics that meet certain requirements. And unfortunately, most businesses have taken this to mean a detailed list of features that they anticipate the user needs. 


But we must ask ourselves – are we, humans, satisfied by only having a particular functional need met? Let’s consider our energy supply – food!. Would you be satisfied with a piece of a flavorless, colorless, hunk of protein as your food? Or would you be satisfied eating the same thing every single day? I mean, let’s be honest – you’d get your energy needs taken care of, right? But what about your emotional need that is tied to food? Did you know that scientifically speaking, your
food experience is linked to all your five senses? Even if something is great for you today, it may not be tomorrow. Maybe when you were 20, you could afford to eat junk food all the time, but maybe in your 50s that’s no longer true; or perhaps what you thought tasted good before, no longer does, because you’ve learned new flavors, or maybe you don’t feel like eating the same thing you ate yesterday. Perhaps your beliefs have changed; what you chose to eat yesterday, you may no longer accept as part of your diet. You see, people’s contexts are constantly ever-changing. 


As a Christian, I believe that no one understands quality better than God because no one understands us better; He made us! He could have made food to be bland, or characterless, but He didn’t. He could have even made just one type of food available for us to eat. Why didn’t He? Well, because He takes care of not only our physical needs but also our emotional needs. And you want to hear something interesting? Not only are our emotional needs ever-changing, but we don’t all have the same emotional needs. Understanding this is the path to helping us perceive quality within the context of what we are trying to accomplish.  


Our emotions are affected by:

  • What we know
  • What we experience
  • and our intentions


… and so too is what is perceived as quality. 


What is perceived as quality changes constantly, and we
want to take on this journey of improving quality, understanding the variability of what others see as “quality.”


Let’s take a moment and consider what I find to be the closest thing to an accurate attempt at
defining quality from a class in Rapid Software Testing by James Bach and Michael Bolton, which is an expanding of what Jerry Wienberg described as “quality.”

“Quality is value to some person, at some time, who matters.”


Now let’s look into what this means. 

“Value”

It represents all that a person is willing to do or to pay to have done. What someone is willing to do or pay for changes constantly, depending on their context. And that context is affected by what they experience, what they know, and what intentions or goals they may have. 

“Some person”

If we don’t understand who this “some person” is, then we will never start on the right road in our journey to improve quality because we won’t know where to go. We may be heading away from those whose opinion matters to us. Sure we want to understand what is of value, but of value to who? This “who” could represent our superior, our coworker, programmers, and yes, even the end-user.

“At some time”

This piece of the equation takes into consideration a critical aspect that was never taken into account before, and that is that emotions change, people change, context change, and if we fail to identify this, then we may miss the mark. We have to reevaluate what is of value to our target continually.

“Who matters”

This final piece should raise a question for us – who does matter? Sure we want to understand what is of value to some person, but not just any. We want to know within the context of what we are trying to accomplish who are those that matter. We can never meet everyone’s requirements, nor can we provide value to all. So if we want to deliver a quality product, then we want to know who are those that matter so we could put our focus on them and get started on that journey called quality.


Finally, why does it matter to understand what quality is? To answer that, I want to point to one of the top concerns for executives, according to the World Quality Report 2019, which is to have QA contribute to the business growth and business outcome. If we don’t understand what is quality within our context, we fail to do precisely this. Good quality tends to precede business growth, despite what some may say. Why do I know that? Because if a business is not providing, or stops providing value from the solutions they offer, they don’t last for long. 


I will leave you with a quote from a book by Ronald Cummings-John, and Owais Peer, titled “
Leading Quality.

“Leaders who embrace this idea – that companies live and die by quality as perceived by their customers – and make it their mantra will adapt and grow with them. Those who focus on functionality and internal definitions of quality …won’t.”


This article was written by Alex Dillon
CEO of TechAID
Twitter: @masterpiece91

GO BACK TO Software testing

Leave a Reply

Your email address will not be published. Required fields are marked *

OTHER POSTS YOU MIGHT LIKE

What is Context-Driven Testing?

By Alex Dillon 03/18/2019 1

Have you ever wondered what context-driven testing is? What projects could be fulfilled with this methodology? When must you use it? I want to answer all these questions in this blog article. Let’s start it! What is context-driven testing? It is a methodology based on…

Our Software Testing Philosophy I

By Alex Dillon 11/07/2018 1

Quality – Impact – Purpose It is vital for us to be a transparent company with our clients, that is why this article talks about our philosophy behind our software testing service, which inspires us and at the same time allows us to integrate with…