Quality, Quality Engineering, Quality Control and Quality Assurance – Part 2

The following is a guest post by Peter Leeson. Peter Leeson is an international speaker and consultant in process and quality improvement, as well as a CMMI specialist and quality manager for White Clarke Group (UK) and the author of “Orchestrated Knowledge“. You can follow Peter on Twitter (@PeterLeeson), Facebook and LinkedIn.

Editor’s Note: This article is part 2 of a 2 part series. You may also want to read the first post in this series: here.

Producing Quality

Producing Quality means that you are performing engineering practices in a manner that is consistent with the role of an engineer. This means a useful combination of analysis, planning, monitoring and controls.

The first question an engineer should be asking is related to the level of Quality expected. If I am building a bridge, I need to understand whether it is destined for an occasional pedestrian or a major city’s rush hour traffic – everything will change based on that simple metric; if I am building a train, I need to understand whether it is going to run in -40C in Siberia or in +40C in Saudi Arabia. If I am building software, I need to understand the type of person who will be using it, the expected throughput, the environment in which it will run, the degree of portability and maintainability that is required, the potential consequences of a failure. In addition to that, I need to understand the resources I will have to develop the product: the tools at my disposal, the competencies of the team members, the level of motivation, the relative importance of budget, schedule and Quality and more.

If we are going to produce Quality, it is not enough for the product “to do what it says”. We need to make sure it is adapted to expectations.

Quality engineering should always take into consideration the qualities of the product – these are measurable, demonstrable attributes of the product, such as portability, reliability, flexibility, maintainability and many others depending on the type of product being developed. These are qualities which can be discussed with the client, built into the product, measured and proven to satisfy requirements and potentially expectations, they should be considered in the engineering phases: designed, developed, embedded into the product, tested and demonstrated.

Producing Quality

All people make mistakes, that is a fact of life. The purpose of quality practices, such as quality control and quality assurance is to see if the mistakes can be removed early in the lifecycle and lessons learnt before the mistake becomes a defect and requires increasesd resources to correct the situation. I am using different words here to clearly separate the lifecycle of an error from when it is under the full control of the author to when it used for a subsequent phase: “mistakes” are made but can be easily corrected; “defects” are mistakes that have been handed over to someone else for processing (e.g. coding errors found in testing, or requirements errors found in design).

Engineering quality involves planning, designing and building specific functions and attributes. This starts at the beginning of the process, when a plan needs to be set up defining what activities will be performed and how these support the focus on quality by the team. This is developed by the person responsible for coordinating the work (project manager, team leader, scrum master, programme director…) in collaboration with a person having the role of “quality assurance”.

Quality assurance will continue to support the project manager by ensuring that activities are not forgotten or missed, and, should it be necessary to deviate from the plan, lessons are learnt by the organization. The role of Quality Assurance is to proactively assure that people know what they are supposed to be doing and are doing it correctly to produce the desired level of quality; this is very different from quality control which reactively controls the quality of the products which have already been produced.

While the qualities are a major component of the Quality of the product, they are not everything.

Quality Conclusions

If we are going to produce Quality, in addition to the standard engineering practices, we need some level of control that people know what they are doing and have the means to do it correctly. The final Quality involves the perception the user has of the product; that involves a number of characteristics which are not covered in the engineering values, including the environment in which the product will be used, as well as the items such as sensory perception, experience, emotions, ethics, language and culture of the users.

These aspects are rarely understood or managed efficiently as engineers believe that most people think as they do, and yet they are frequently more important than the actual intrinsic engineering quality of the product. This understanding places additional emphasis on the need to truly understand the expectations of the users, beyond their requirements.

Engineers, and particularly software engineers, are frequently higher than average on the autistic spectrum. This means that they have problems understanding that not everyone thinks in the same manner as they do and are baffled by statements such as “I don’t like it”, while they are busy explaining that the user interface is 87% more user-friendly than the previous system.

Focusing on Quality means understanding more than the minimum technical aspects of a product, it means understanding the context in which this is going to be used. If you run an airline, this can be relatively easy, because the users are all in a confined space which you can furnish and decorate; when creating a software product, which will be used in a number of different places, or in offices you have never visited, the problem is much more complex and needs more than engineering to be understood and managed. If you cannot afford to invest into the necessary sociological and environmental studies to manage that, you need to be absolutely sure that every other aspect of your product is technically of the highest standard.

Remember that your unhappy clients will be more than happy to share their complaints with the rest of the world.

Editor’s Note: This article is part 2 of a 2 part series. You may also want to read the first post in this series: here.