Статьи партнеров: Разница между QA и контролем качества QC

26.05.2016

 

Люди часто используют QA и QC, чтобы описать одни и те же процессы, так что не удивительно, что мы до сих пор путаем эти понятия. Разница между гарантией качества и контролем качества не является очевидной, и на практике они очень похожи. Иногда, даже в тестовых планах, QC называют QA Engineering. Тем не менее, теоретически, инженер QC проверяет процесс разработки продукта, в то время как основной целью контроля качества является обеспечение выполнения всех процедур, которые могут улучшить качество программного обеспечения в целом. Из-за их сходства, эти понятия стали синонимами.

 

Источник: http://www.archer-soft.com/en/blog/difference-between-quality-assurance-and-quality-control

 

Различия в понимании между этими двумя понятиями можно описать следующим образом. Контроль качества является текущим выполнением одних и тех же тестов для каждого элемента (или подгруппы элементов, таких как 1 10/100/1000), который сходит с конвейера. Ключевой задачей этих испытаний заключается в проверке правомерности тестируемого компонента и его соответствия общепринятым нормам. В этом случае можно было бы сказать, что эти правила представляют собой набор ограничений, предоставленных клиентом (или кем-то еще), которые должны строго соблюдаться, независимо от нашего собственного мнения.


Другими словами, если мы рассмотрим производство электрической лампочки, мы ожидаем, что получим по крайней мере половину партии хорошего качества. Эти ожидания достигаются за счет строгого контроля качества. Но, в то же время, есть и другие люди в промышленности лампочки, которые концентрируются на совершенно разных задачах:

  • Как мы можем увеличить количество исправных ламп в партии?

  • Как мы можем свести к минимуму количество проверок во время разработки лампы?

  • Как мы можем убедиться, что нет неисправных лампочек на складах?

  • Как мы можем сделать выполнять более точные скрининги спецификаций продукции?

Это именно тот тип проблем, на которых сосредотачиваются инженеры QA.

В отличие от тестирования QA, длина процесса QC пропорционально объему проекта. Если вам нужно проверить 100 лампочек, вам нужно иметь определенное количество тестировщиков. Если вам нужно проверить 1000 лампочек, будьте готовы нанять больше тестировщиков. В то же время, никто не может гарантировать, что лампочка номер 1001 будет в порядке, так что кому-то нужно её тоже проверить.


С другой стороны, для тестирования QA не имеет никакого значения, как были произведены другие лампочки. Гораздо более важно установить критерии качества для всего процесса разработки лампочки. Для того, чтобы разница была еще более очевидной, мы сделали это краткое описание.

Давайте проведем различия между QA и QC задачами, которые каждый из специалистов выполняет. Мы также постараемся отметить преимущества и недостатки каждого процесса.


Преимущества обеспечения качества (QA)

 

Целью QA является, в первую очередь, убедиться, что разработка продукта осуществляется в соответствии со всеми указанными стандартами качества. От идеи и общего плана до сборки конечного продукта QA инженер фокусируется на процессе разработки программного обеспечения, улучшает его, а также предотвращает дефекты и проблемы.

Управление QA означает:

  • Проверка технических характеристик и требований к программному обеспечению

  • Оценка рисков

  • Развитие идей, что позволит повысить качество продукции

  • Планирование тестирования

  • Анализ результатов испытаний


Одним из основных преимуществ QA является то, что вы точно знаете, на каком этапе и в какой момент инженеры QC должны начать свою работу. Конечно, это требует cоздания тестового плана, тестовой документации и тестовой среды.


Специалист QA несет ответственность за:

  • Анализ и уточнение требований у клиента или у бизнес-аналитиков

  • Планирование процессов тестирования

  • Написание тестовых кейсов (сценарии для тестирования)

  • Функциональное тестирование

  • Выявление проблемных областей

  • Обсуждение изменений и различные исправления разработчиками

  • Отслеживание жизненного цикла каждой ошибки

  • Повторное тестирование фиксированных дефектов

  • Анализ тестовых процедур

  • Оптимизация процесса тестирования

  • Анализ процессов в команде

  • Совершенствование процессов

  • Управление документацией тестирования


Хороший специалист QA понимает общую логику продукта и имеет полное знание проекта. QA, возможно, придется ответить на вопросы разработчиков, ответы на которые можно дать, только зная конкретные аспекты проекта и задачи.


Преимущества контроля качества (QC)

Следует отметить, что QC является частью QA. Инженер QC анализирует результаты испытаний и несет ответственность за выявление и устранение дефектов в проекте. Другими словами, они отвечают за результаты того, что разработчики сделали. QC просто проверяет текущий уровень качества тестируемого объекта с помощью таких критериев, как:

  • Нагрузочное тестирование фронт-энда

  • Соответствие требованиям

  • Соответствие проекта указанному качеству

 

Перед запуском QC, вы должны определить стандарты качества для конечного продукта. Далее, нам необходимо определить объем процесса тестирования. Например, в пищевой промышленности, это может быть несколько единиц из партии, которые будут приняты для тестирования. Следующим шагом является анализ статистики в реальной жизни. Например, в отрасли мобильной связи, то это процент единиц, которые ломаются за определенный промежуток времени. Только после этого кто-то может решить, какие дальнейшие действия следует предпринять. Если же речь идет о продукте, который сломался, он либо должен быть отремонтирован, или заменены. Если речь идет о ИТ-индустрии, мы должны сохранить результат разработки проекта, пока все дефекты не будут устранены, и конечный продукт не будет удовлетворять потребности клиента.

 

Если есть большой процент ошибок, вам нужно принять решение, возможно, изменить план разработки. После этого, вам необходимо уточнить план с самого начала.

В конечном счете, QC представляет собой непрерывный процесс, направленный на устранение дефектов и обеспечение быстрого реагирования на возникающие проблемы.


Итог


Оба понятия тесно связаны между собой и дополняют друг друга. Разница становится очевидной, когда вы начинаете реализовывать эти функции: QA на стадии, когда продукт еще не был реализован, поэтому сам процесс связан с аналитикой; QC приходит позже, когда у нас есть что-то, что можно проверить.


Трудно определить плюсы и минусы контроля качества и обеспечения качества, так как QA и QC настолько похожи.


Если речь идет о ИТ-индустрии, то наличие QA и QC играет ключевую роль. Почему? Разработчики программного обеспечения (SE) и QA/QC инженеры думаю по-разному. Программист (SE) ищет самое простое решение для достижения поставленной цели, а затем решает другую задау. Но QA и QC инженеры имеют дело с конкретными ситуациями, которые не были приняты во внимание в деталях, а также проверяют, как каждый компонент работает вместе, когда все элементы собраны вместе как единое целое.


Опыт показывает, что существует довольно мало шансов, что инженер-программист сделает ошибку в реализации компонента. Системотехники уверены в том, что все, что они делают, всегда работает всего лишь за некоторыми исключениями.


Тестировщик QC уверен, что все, что не учел программист, не работает.

Нам не нужно проверить, насколько хорошо работает программа. Нам нужно проверить, как программа выходит из строя.


Если мы сравним этапы разработки и тестирования с лечением, то QA будет связано с профилактикой, а QC - с диагностикой.

 

Это общее сравнение QA и QC. Конечно, существуют значительные различия между обеспечением качества и контроля качества. Соответствие стандартам качества всегда была важной частью разработки продукта. Не имеет значения, применимо ли это к лампочке, системе здравоохранения или программному обеспечению самолетов. В конечном счете, много процессов зависит от качества конечного продукта или проекта.


Вот почему мы не акцентируем работу по разработке продукта, который работает, но разрабатываем продукт, который удовлетворяет всем требованиям клиента. Поэтому при разработке нового продукта в нашей компании, мы обращаем особое внимание на процессы обеспечения качества и контроля качества. Мы знаем, что высокие стандарты качества являются залогом успеха конечного продукта. Любой человек может предоставить  ИТ-решения. Но лишь немногие из них могут предоставлять качественные ИТ-решения. У нас есть многолетний опыт и команда профессионалов, которая позволила нам занять ведущую роль на рынке. Если у вас есть какие-либо вопросы о вашем конкретном случае, новые идеи для разработки или проекты, по которым вы хотели бы сотрудничать, пишите или звоните нам.


Эту страницу просмотрели: 404 уникальных посетителей