Very often we use terms "quality", "good", " excellence", etc. Do we really understand the meanings of those words? Do they mean only that something should work without a glitch?
Let's look at the definitions of those words by merrian-webster dictionary.
"Quality" - superiority of kind; degree or grade of excellence;
"Good" - adequate, satisfactory;
"Excellence" - the quality of being excellent; an excellent or valuable quality.
So excellence equals outstanding quality or remarkably good. This is clear. But quality and good for who: for me, for you, for some third person? The definitions mention "adequate" or "valuable quality" that means that the thing under question should be USEFUL. But it also DEPENDS on end user - one program that fulfills my needs is useful for me, but for my collegue that has other needs the same program is useless and have no quality from his/her point of view. Everyone need something else. That means that any product receives the characteristic of quality and good products in the context of the end user.
There are many classifications of quality. For example Isabel Evans at her Achieving Software Quality through Teamwork classifies the quality as user-based; value-based; manufacturing; product-based; and transcendent. Depending on these views, we choose what is more important for us regarding software development.
Thats why it is quite strange when I hear that someone says that this or that methodology in software testing is to die. Recently more and more people are saying that world change so rapidly that there is just no time for testing, we need to be extrodually flexible to keep path with customer changing needs. We cannot say they they are wrong, they are also right but up to one point - IT DEPENDS. And mostly it depends on the industry the software is to be used and the cost (in lives, in money, in credibility) of it fault in production.