4

Working on my thesis, I can see the following phrases all over (books, ISO 9000, CMMI):

Quality control is defined as the operational techniques and activities that are used to fulfill requirements for quality. Examples include testing, inspections and reviews.

I know problem is in my understand, because even in PRINCE2 you can read that those activites (Quality Control) are used to satisfy quality requirements and it lists testing and inspections as examples.

But I still struggle to see how these reactive activities can fulfill quality requirements - these can be truly fulfilled only by proper design and development. I feel they mean fulfillment in terms of checking and confirming but I cannot understand it fully. Otherwise, how could you fulfill quality requirements in a product by testing, if the product is defective?

1

How you know that design and development was proper? You inspect the development process, review the code, and run test. :-)

  • Yes, exactly - but this way I am evaluating the quality requirements, not fulfilling them, aren't I? – Meriolo Jun 16 '16 at 15:29
  • I think it does. How do YOU know that design and development was done proper way? Just curious. – Peter M. Jun 16 '16 at 18:40
1

You are right: quality control will help detect problems but will not prevent them from happening.

I may help to think about a bigger context. Let's assume organizations create things in order to solve problems. There are other reasons to create things, e.g. to create wealth or to create jobs, but for the sake of argument, assume they're primarily interested in solving problems.

There are many activities that go into solving a problem. You need to identify the problem of course, and you need to envision how that problem might be solved. Then you need to go through a process to translate that vision into a thing: requirements-gathering, design, coding, etc.

All of those activities are flawed. Sometimes the problem isn't a real problem. Sometimes the vision for how to solve it is the wrong vision. Sometimes the requirements are wrong, or the design does not meet the requirements, or the code does not match the design, and so on. These activities not flawed because someone isn't doing a proper job; they are flawed because people make mistakes.

On top of that, circumstances change. Today's problem may not be a problem six months from now. Or a solution that makes sense today may be obsolete or wrong next week.

How do you deal with people who make mistakes? You might try using different people, people who never make mistakes. Those people are really hard to find and keep. Alternatively, you can try to design a process that requires people to check each other's work. Individuals will make mistakes, but others will catch them, or at least some of them. This isn't just about testing code; it's also about validating that the problem is real, checking whether the envisioned solution is practical and useful, and so on.

Sadly, even a process designed to detect problems is imperfect, so we build a meta-process on top of that. The meta-process looks like this:

  1. Try a process
  2. Pay attention to the outcome, and be honest about what you see.
  3. Use what you learned from the outcome to adjust the process.
  4. Go to step 1.

Ultimately, quality is not about doing things "the right way". It is about setting up a feedback loop that encourages gradual improvement.

  • Thanks. But basically that is the point of my question - why all standards, books and quality models say that QC is used to fulfill quality requirements and give testing as an example? The only fulfillment I can think of is the confirmation - by QC I can confirm requirements were fulfilled. But then I find the definition very confusing – Meriolo Jun 16 '16 at 15:28
  • I suggest reading the standards, books, and quality models with a healthy degree of skepticism. The authors want to deliver an optimistic message. Their messages may be useful, but they are not perfect. – user246 Jun 16 '16 at 15:33
  • I know, but the question still stands - how come all these authore see testing and inspections as means to "fulfill quality requirements"? I simply cannot see it there - to me the definiion would need to be"to confirm fulfillment of quality requirements". – Meriolo Jun 16 '16 at 16:35
  • Write the author. No one else can tell you why an author chose those particular words. – user246 Jun 16 '16 at 16:51
  • Well the thing is, basically all authors /at least 10 and more when I do a qucik scan on google books/ use this definition and explain that it means to confirm quality requirements as it was obvious..so I look for a problem with my understanding – Meriolo Jun 16 '16 at 17:53
1

"how can testing and inspections fulfill quality requirements?"

Having worked in Quality for a while I can recall my first impressions about what I thought it was (things working near perfectly or flawlessly).

What I have found is that the current of state of play regarding web application quality is:

Does it work? Yes vs. No

Simply put, if you perform the intended action do you get the expected result. Most of the time in web development it either works or doesn't, not 'mostly with a minor issue". Some common examples I meet in my daily work:

  • The user is either created or you get an error message and they are not created
  • The button is either clickable not clickable
  • The text shown is either correct or incorrect

This is as opposed to more minor issues such as:

  • readability of font
  • contrast of color
  • size of screen

Although the latter are certainly very valid quality issues, in most of the development that I see, the former are the quality issues being resolved in the industry in 2016.

0

It seems as though "Fulfill requirements for quality" is what you are stumbling on.

When ISO 9001 states that "The organization shall determine requirements specified by the customer...", that is a quality requirement.

When ISO 9001 states that "Verification shall be performed in accordance with planned arrangements...", that is a quality requirement.

You are confusing "quality requirements", requirements that come from a standard, such as ISO 9001, with "product requirements", requirements that the product need to comply with.

Quality control can fulfill some quality requirements from ISO 9001 such as "verification shall be performed..." You can review static documents as a method of verifying a document. Therefore you meet the quality requirement of verification by doing static review, which is a method of quality control.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.