Спецификация на примерах или как научить людей...
description
Transcript of Спецификация на примерах или как научить людей...
Спецификация на примерах или как научить людей общаться Ребров Андрей
История об одной команде
Тестировщик
Аналитик
Разработчик
Их ждала работа
Много работы
А тут еще и заказчик негодует
И что с ними
стало?
На практике• 15000 требований•Постоянные переделки• Рассогласование требований, тестирования и разработки
Делаем первые шаги в правильном направлении
Story Mapping
• Формируем бэклог релиза
• Определяем объем задач
• Определяем архитектурные изменения
Начало
Препланирование
• 2 раза в неделю• Участвует вся команда• Длительность 1 час• Что не успели, то не
успели
Промежуточные итоги
• Стало меньше багов• Стало меньше
переделок• Демо стало проходить
успешно
Но!
Три источника правды• Требования• Тест-кейсы• Код
SPEC BY EXAMPLE
Используем Impact mapping
Зачем•Проверяем на соответствие бизнес целям релиза•Ищем альтернативные пути решения• Четко формулируем пользовательские истории
Например
Импорт данных в CRM через шину
Продажа услуг через CRM
Продажник
Повышение эффективности отдела продаж
Импорт данных в CRM из XML
Парная работа тестировщика и аналитика
Что они делают
• Подготовка 1 - 2 примеров с точки зрения пользователя
• Представление данных в виде таблицы
• Описание всей терминологии
НапримерРегион Существ
ует категория
Данные услуги
Услуга Адрес
Юрлицо
Поволжье Да ID1АдресРога и копыта
ID1 Адрес
Рога и копыта
Поволжье Нет ID1АдресРога и копыта
ID2 Адрес
Рога и копыта
Меняем препланирования
Новый формат• Тестировщик и
аналитик объясняют примеры
• Проводим Diverse & Merge
Diverse & Merge• Разбиваем команду на группы• Хотя бы 1 группа без
тестировщика и аналитика, которые прорабатывали требования
• Даем 15-20 минут на проработку своих примеров
• По окончании сводим все таблицы в одну
Что на выходеРегион Существ
ует категория
Найдена услуга
Данные услуги
Услуга
Адрес
Адрес доставки
Юрлицо
Поволжье Да Да ID1АдресРога и копыта
ID1 Адрес
Адрес
Рога и копыта
Поволжье Нет Да ID1АдресРога и копыта
ID2 Адрес
Адрес
Рога и копыта
Уменьшаем размеры
Что делаемУменьшаем количество строк/столбцов в таблице•Вводим параметрические обозначения•Сливаем схожие сценарии в один•Убираем лишние данные•Выделяем новые пользовательские истории
Как былоРегион Существ
ует категория
Найдена услуга
Данные услуги
Услуга
Адрес
Адрес доставки
Юрлицо
Поволжье Да Да ID1АдресРога и копыта
ID1 Адрес
Рога и копыта
Поволжье Нет Да ID1АдресРога и копыта
ID2 Адрес
Рога и копыта
Как сталоСуществует категория
Найдена услуга
Данные услуги
Услуга Данные услуги
Да Да Услуга Обновляем
Копируем
Нет Да Услуга Создаем Копируем
Требования =
Тест-кейсы
Время автоматизации
Behavior Driven Development (BDD)
• Разбиваем пользовательскую историю на шаги• Каждый шаг имеет трансляцию в код• Входные данные – таблицы с предыдущего этапа
Пример
Подведем итоги
Что сделали• Impact mapping• Совместная работа QA
+ BA• Diverse & Merge• Оптимизация данных• BDD
Чего добились• Однозначная трассировка
требований в код• Однозначное понимание
требований всей командой• Упрощение оценки требований• Экономия времени тестировщиков• Стало проще готовить и проводить
демо
Приглашаю на тренингиПостроение культуры DevOps Москва, 12 – 13 июня
Тестирование в AgileМосква, 8 – 10 июля