вторник, 18 декабря 2007 г.

Разница Между QA, QC & Testing (начало пути)

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


Рассмотрим следующую схему, где структурно показано место тестирования (Testing), контроля качества (QC) и обеспечении качества (QA) в общем процессе Обеспечения Качества:




Разница видна невооруженным взглядом. Постараюсь разъяснить ее подробнее:
Testing (тестирование) - это самый низкий уровень - прохождение тест кейсов и локализация дефектов… В принципе на это способны люди и без специального образования…
QC - следующий уровень - контроль качества продукта - анализ результатов тестирования и качества “билдов”, в процессе разработки.
QA - решает более глобальные задачи. Анализируя работу тестировщиков и QC, в случае возникновения проблем, вовремя находит пути ее решения и не дает ей развиться и повлиять на качество продукта.

В принципе все эти 3 роли можно объединить в одну - это не страшно для небольших проектов, но когда, либо кол-во маленьких проектов растет или мы имеем очень большой проект, то я бы предпочел выделить все 3 роли (тестеры, инженеры по контролю качества и обеспечению качества)…

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


Глава 1: Зачем нужен контролер?
У сотрудника по работе возник вопрос:
ЗАЧЕМ НУЖЕН КОНТРОЛЛЁР?

Наш ответ Чемберлену:
Может я конечно и передергиваю, но для всего должны быть специально обученные люди: тестировать должен тестер, контролировать должен контролер, а обеспечивать качество должен какой-нить, скажем, управленец.

Вот вам простейший пример:
есть в какой-нить конторе 3 команды тестирования. В каждой есть тестеры и лиды, и ими руководит QA менеджер. В этой структуре сразу выделяются 3 роли:
  1. тестер - тестер
  2. лид - QC
  3. менеджер - QA

А теперь допустим, что мы убрали лида, и что у нас таких команд было не 3, а допустим 10. Получаем, что 1 менеджер управляет и контролирует 10 проектов и 30 человек. А если каждая команда ведет не 1, а несколько проектов?
Согласитесь - сложно…

Вот поэтому я считаю, что QC никак нельзя исключать из этой цепочки.

Глава 2. Что делает QA команда?
На днях кастомер спросил:
What is the responsibility of the QA group?

Наш ответ Чемберлену:
The main responsibility of QA team is to ensure that the released product satisfies the quality criteria described in test plan. To achieve this goal QA team performs the following types of activities:

  1. Quality Assurance
  2. Quality Control
  3. Testing

Quality Assurance
It is not enough just to test application to release good quality product. It is extremely important to work by strictly organized processes. The main responsibility of QA is to ensure that all processes and procedures are being performed and followed in the correct way.

Quality Control
Each build passes BVT (Build Verification Tests) to ensure that build is valid for testing:

  • Core functionality is working and testable
  • New features are implemented correctly
  • Released build has better quality than the previous one
  • ...

Testing
Test team performes different types of testing which are fully described in test plan


Глава 3. Окончательный анализ
И вот, наконец, нашлось время и мечта была реализована. Я приблизился на шаг ближе к истине. Теперь с гарантией в 90% могу сказать, что понятия QA, QC & Testing определены. Читайте следующий пост Обеспечение Качества, Контроль Качества. Тестирование

Отправить комментарий

Условия копирования публикаций:

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