Quality Control (QA) — это «контроль качества», а точнее, это процесс, который отвечает за соблюдение ожидаемого качества продукции путем тестирования, выявления и устранения его неисправностей.
Quality Control — что это?
Quality Control идет очень плотно с другим процессом в тестировании — Quality Assurance (QA). Очень часто эти процессы принимают за один и тот же, хотя по факту они отличаются и обозначают разные мероприятия. QC и QA направлены на общее действие — улучшить качество программного продукта, но применяются на разных этапах продукта и ориентированы на разные цели. Поэтому, чтобы точно понять, что это такое — Quality Control, нужно разобраться с обоими понятиями.
Quality Control и Quality Assurance
Итак, что такое Quality Control мы определили — это процесс, при котором обеспечивается соответствие программного продукта ранее установленным требованиям к его качеству в определенный момент времени.
Quality Assurance — это процесс, который описывает все требования к программному продукту, чтобы его состояние было максимально близким к идеальному. Помимо самих требовании, этот процесс также описывает инструменты для достижения указанных требований:
процедуры;
методы;
стандарты;
подходы;
и др.
Получается, что процесс QA по иерархии стоит «выше» процесса QC, является более «широким» и «включает» Quality Control в свое описание. QA старается предотвратить дефекты ПО в процессе его разработки и тестирования, а Quality Control предусматривает устранение недоработок и ошибок уже в готовой программе.
Чем отличаются Quality Control и Quality Assurance?
Терминологию этих процессов мы определили. Давайте подробнее остановимся на их различиях.
Различия по цели. Quality 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, и, соответственно, это то, что отпугивает потенциальных клиентов и снижает общую конверсию сайта.
Заключение
Два процесса: Quality Control и Quality Assurance, которые идут очень рядом друг с другом, — это то, что сделает ваш программный продукт близким к идеальному. Поэтому пренебрегать этими процессами не стоит. Конкретные инструменты для обеспечения и контроля программного продукта будут зависеть от самого продукта, сложности его разработки, команды и т. д. Об инструмента QA и QC мы обязательно еще напишем. Самое главное, что мы ответили на ваш вопрос: «Что это такое — Quality Control?».

Другое