Quality is very hard to define since it will vary from person to person. But at BBH we define it as meeting the needs and expectations of the customers with respect to functionality, design, and reliability.
What is high quality then?
Everyone wants a high-quality product but what it is and how it is achieved is a long story. A product might work exactly as the requirements say but still won’t be recognized as “High-quality” by the users. This is because a product is so much more than a set of requirements it has to work and fill a need in the hands of the customer and that is the key focus every QA should have.
There is a big difference between QA and Testing (or QC). The best way to summarize the difference is that QA is about making sure that the product meets stakeholders’ quality expectations and prevents defects before they are created. While testing is mainly about detecting och reporting defects.
A QA has a very broad role since every perspective has to be accounted for. First, a QA has to see the product from the company’s point of view and make sure it lives up to the expectations the company has of the product. But then also the expectation the customer has of the product (does it look good? Is it easy to use? Do customers get frustrated somewhere?).
What QA is not
QA is often defined as the last line of defense between the company and the customer but we can never give a 100% stamp of approval. Since no piece of software will ever be perfect our stamp of approval should not be seen as a guarantee that the product is perfect. See our stamp of approval more as an assurance that the product will work good but there will always be something we can do better.