Quality Control (QA) — это «контроль качества», а точнее, это процесс, который
отвечает за соблюдение ожидаемого качества продукции, путем тестирования,
выявления и устранения его неисправностей.
Quality Control, что это?
Quality Control идет очень плотно с другим процессом в тестировании – «Quality
Assuranse(QA)». Очень часто эти процессы принимают за один и тот же, хотя по
факту они отличаются и обозначают разные мероприятия. QC и QA направлены на
общее действие — улучшить качество программного продукта, но применяются на
разных этапах продукта и ориентированы на разные цели. Поэтому, чтобы точно
понять, что это такое «Quality Control», нужно разобраться с обоими понятиями.
Quality Control и Quality Assurance
Итак, что такое Quality Control мы определили — это процесс при котором
обеспечивается соответствие программного продукта ранее установленным
требованиям к его качеству в определенный момент времени.
Quality Assurance — это это процесс, который описывает все требования в к
программному продукту, чтобы его состояние было максимально близким к
идеальному. Помимо самих требовании, это процесс также описывает инструменты,
для достижения указанных требований:
- процедуры;
- методы;
- стандарты;
- подходы;
- и др.
Получается, что процесс QA по иерархии стоит «выше» процесса QC, является
более «широким» и «включает» Quality Control в свое описание. QA старается
предотвратить дефекты ПО в процессе его разработки и тестирования, а Quality
Control предусматривает устранение недоработок и ошибок уже в готовой
программе.
Чем отличаются Quality Control и Quality Assurance?
Терминологию этих процессов мы определили. Давайте подробнее остановимся на
их различиях.
- Различия по цели. Qality Assurance преследует цель – улучшить процессы
разработки и тестирования, чтобы не было дефектов. Quality Control
преследует более простую — выявить и устранить недостаток в рабочей
программе. - Различие в подходе. QA внедряет собственную систему управления
качеством для анализа всех действий, чтобы убедиться, что все работает так
как надо. QC выявляет и устраняет конкретную проблему, которая влияет на
конечное качество продукта. - Разные акценты. Quality Assurance акцентирует свое внимание на
предотвращении появления багов в процессе разработки и тестирования.
Quality Control акцентирует внимание на тестирование уже готовой
программы, чтобы выявить и устранить ее дефекты и «подогнать» к
требованиям QA. - Разная направленность. QA направлен на процесс разработки продукта. QS
направлен на уже разработанный продукт. - Разные методы. Методы работы Quality Assurance являются
профилактическими, а методы работы Quality Control – конкретно-
техническими. - Разное распределение ответственности. В QA ответственность за должное
качество продукта лежит абсолютно на всех участниках разработки
программы. В QC ответственность лежит на конкретной команде или
разработчике, которые ищут дефекты в программе и устраняют их. - Различная последовательность. QA — это процесс, который обеспечивает
качество до наступления контроля качества. QC — это процесс, который
начинает применяться после окончания обеспечения качества. То есть
сначала идет процесс QA, а после него включается процесс QC.
Quality Control и Quality Assurance на практике
Когда вы идете в обычный магазин, чтобы выбрать фрукты, вы же выбираете только
самое лучшее? Вы заходите, первое что вас привлечет — это внешний вид магазина
и полки с фруктами: все чисто, красиво расставлено, все блестит и пахнет, ну и т. д.
Потом вы берете фрукт в руку, «ощупываете» и рассматриваете его на наличие
червоточин, вмятин, испорченности и т.д Если все «Ок!», тогда вы кладете фрукт в
корзину и идете к кассе. К сожалению, попробовать фрукт «на вкус», чтобы
убедиться в его качестве окончательно, вы сможете только дома, поэтому доля риска
еще присутствует. Но при этом, если бы в момент, когда вы взяли фрукт в руку, вы бы
увидели червя или небольшую гниль, то есть большая вероятность, что вы бы такой
фрукт не купили.
Так работает и в интернет-торговле. Вы заходите в интернет-магазин, первое что вас
привлекает — это его внешний дизайн. Если все «Ок!», тогда вы ищете в этом
магазине нужный продукт, читаете его описание, отзывы и т. д. Если и тут все
хорошо, то есть шанс, что вы купите продукт именно в этом магазине. Но если представить, что внешний вид интернет-магазина вам понравился, но в процессе его
серфинга вы замечаете мелкие неполадки:
- отсутствие кнопки покупки;
- нет кнопки «Подняться наверх»;
- постоянно выскакивает какое-то назойливое сообщение с какими-то предложениями, а само сообщение невозможно просто закрыть;
- сложная форма заказа, которая постоянно сообщает о какой-то ошибке;
- не работают фильтры сортировки товара по нужным вам параметрам;
- и др.
Вроде небольшие недоработки, но они создают негативное отношение к этому
интернет-магазину. Каждый такой обнаруженный вами недостаток, снижает
вероятность, что вы в этом интернет-магазине что-то купите. В итоге настает момент,
когда вы просто закрываете вкладку с этим магазином и ищете другой.
Вот все эти «мелкие недостатки» — это как раз не доработанные процессы Quality
Control и Quality Assurance и соответственно это то, что отпугивает потенциальных
клиентов и снижает общую конверсию сайта.
Возможно вам будет интересно почитать статью “Функция Map в JavaScript. Описание и сфера применения”
Заключение
Два процесса: Quality Control и Quality Assurance, которые идут очень рядом друг с
другом — это то, что сделает ваш программный продукт близким к идеальному.
Поэтому пренебрегать этими процессами не стоит. Конкретные инструменты для
обеспечения и контроля программного продукта будут зависеть от самого продукта,
сложности его разработки, команды и т. д. Об инструмента QA и QC, мы обязательно
еще напишем. Самое главное, что мы ответили на ваш вопрос: «Что это такое Quality
Control?»