12
«Аджализация» тестирования. Интеграция разработчиков и тестировщиков. Сложности и возможные пути их решения. Agile Gathering 5, Киев, 28 июня 2008 Алексей Кривицкий [email protected] www.SCRUMguides.com

QA in Agile

Embed Size (px)

DESCRIPTION

«Аджализация» тестирования. Интеграция разработчиков и тестировщиков. Сложности и возможные пути их решения.

Citation preview

Page 1: QA in Agile

«Аджализация» тестирования.

Интеграция разработчиков и тестировщиков.

Сложности и возможные пути их решения.

Agile Gathering 5, Киев, 28 июня 2008

Алексей Кривицкий[email protected]

Page 2: QA in Agile

Аджализация тестирования ©SCRUMguides 2

Опрос

• Сколько в зале тех, кто причисляет себя к тестировщикам?

• Как оно, быть тестировщиком? :)

Page 3: QA in Agile

Аджализация тестирования ©SCRUMguides 3

Проблемные зоны

• Воспитание и культура

• Проектная среда

• Локальные оптимизации и ассинхронность

Page 4: QA in Agile

Аджализация тестирования ©SCRUMguides 4

Проблемы воспитания и культуры

• Недостаточное уважение работы тестировщиков

• Непонимание отличий ролей Quality Control и Quality Assurance

• Акцент на тяжеловестных инструментах

• Разработчики защищают свой код

Page 5: QA in Agile

Аджализация тестирования ©SCRUMguides 5

Проблемы проектной среды

• Тестировщики доступны part-time

• Руководство не верит, что разработчики могут сами разработать качественный код

• Разработчики и тестировщики отделены друг от друга

• Внедрение Agile обходит стороной тестировщиков

• Работа поощряется по дисциплинам

Page 6: QA in Agile

Аджализация тестирования ©SCRUMguides 6

Локальные оптимизации и асинхронность

• Планирование проводится раздельно

• Разработчики пишут код, не зависимо от того, смогут ли его потестировать

• Тестировщики перегружены

Page 7: QA in Agile

Аджализация тестирования ©SCRUMguides 7

Культура

• Выработка командной концепции «we are all on this»:– Общие stand-ups;– Визуализация всего процесса разработки, в том

числе его «узкий мест»;– Работа в «mini-teams» - тестировщик, заказчик,

группа разработчиков, объединённых на время реализации фичи;

– Коллективное составление acceptance tests (wikis);– Парное тестирование; – Совместные демонстрации версий продукта.

• Коллективные обсуждения и улучшения процесса. Ретроспективы.

Page 8: QA in Agile

Аджализация тестирования ©SCRUMguides 8

Проектная среда

• Мощная концепция Скрама про кросс-функциональные команды:– Внедрите тестировщиков в команду разработчиков;– Располагайтесь в одной комнате с разработчиками. – Achtung! Подчинение тестировщиков менеджеру отдела QA может

вредить пользе дела.

• Внедряя Agile внимательно слушайте ваших тестировщиков! – Тестировщики думают про конечный результат. Разработчики же –

про решения.

• Разработчкики и тестировщики должны работать по одним исходным артефактам (источникам данных):– Если разработчики работают по беклогу с историями, а

тестировщики – по начальному документу требований, то как ложатся тест-кейсы на истории?

– Планируйте релизы и итерации вместе.

Page 9: QA in Agile

Аджализация тестирования ©SCRUMguides 9

Локальные оптимизации

Советы можно черпать из Lean Thinking.

• Для избежания неверной оптимизации системы, снимайте метрики на один уровень выше. Т.е. не по отделам, а по всей чепочке передачи работ:– Количество найденных дефектов за ед. времени;– Время реализации функционала без тестирования;– Время от запуска в разработку функционала до его приёмки;– Время от внесения дефекта до его детектирования и починки;– Техника Lean «Value streams».

• Постройте среду, где отдел тестирования ответственен за бездефектный код (качество), а не количество найденных дефектов:– Quality Assurance vs. Quality Control

Page 10: QA in Agile

Аджализация тестирования ©SCRUMguides 10

Очереди

Советы можно черпать из «Теории Ограничений» (Theory of Constraints, TOC).

Если тестирование –узкое место процесса:

• Убедитесь, что тестировщики работают на тем, над чем только они могут работать;

• Контролируйте размер очереди для тестирования – не допускайте простоев, но и не перегружайте её;

• Подчините все проектные процессы и решения тестировщикам.

• Внедряйте практики, повышающие эффективность тестирования (за счёт времени разработчиков)

Page 11: QA in Agile

Аджализация тестирования ©SCRUMguides 11

Уважайте тестировщиков

• Платите им адекватные зарплаты.

• Покупайте им необходимые инструменты автоматизации.

• Любите их :)

• Сегодня каждый должен обнять как минимум двух тестировщиков.

Page 12: QA in Agile

Аджализация тестирования ©SCRUMguides 12

Вопросы?

• Предлагаю обсудить на open space…