specification byexample agbc

39
Specification by example

Upload: vasyl-netakhata

Post on 19-Jun-2015

540 views

Category:

Technology


1 download

DESCRIPTION

SBE

TRANSCRIPT

Page 1: Specification byexample agbc

Specificationby example

Page 2: Specification byexample agbc

Specification by example

• Абстрактные требования очень абстрактны • Взаимодействие– Бизнес ценности и их донесение– Воркшопы– Новые идеи от участников

• Как это выглядит• Пример спецификации• Как это работает?• Автоматизация тестов -> Живая

спецификация• Плюсы, Итоги.

Page 3: Specification byexample agbc

Диалог

Page 4: Specification byexample agbc

Абстрактные требования. Хороши?

Абстрактные требования редко полны.

Page 5: Specification byexample agbc

Абстрактные требования. Хороши?

Абстрактные требования – хороший источник для

неправильного толкования.

Page 6: Specification byexample agbc

Абстрактные требования. Хороши?

Имея дело с абстрактными требованиями довольно

сложно выявить пробелы

Сложно выявить протеворичивость

Page 7: Specification byexample agbc

Простой пример. Очень.

Предположим мы предлагаем Вам провести….

Выходные с девушкой.

С двумя ЯРКИМИ девушками.

Кто же от этого откажется?

Page 8: Specification byexample agbc

Простой пример. Очень.

Page 9: Specification byexample agbc

Простой пример. Очень.

Ну ладно..….

Видимо параметры должны помочь.

–Рост–Вес–Подтянутая фигура–Цвет волос–Глаза И..….

Page 10: Specification byexample agbc

Простой пример. Очень.

Page 11: Specification byexample agbc

Что-то снова пошло не так?.

Все кажется зыбким и ненадежным?…

Что же может помочь?

ПРИМЕР???

Page 12: Specification byexample agbc

Простой пример. Очень.

Page 13: Specification byexample agbc

Эффективное взаимодействие

…всех, кто вовлечен в процесс

сотрудничество

Page 14: Specification byexample agbc

Проведение воркшопов

Присутствие бизнеса (PO, SME, пользователи)

Присутствие технических специалистов

Page 15: Specification byexample agbc

Задачи бизнеса

Донесение намерений и задач бизнеса до команды

Осознанная реализация

Более Качественное решение

Page 16: Specification byexample agbc

Общая недвузначная терминология

Однозначное употребление терминов всеми сторонами

Page 17: Specification byexample agbc

Активное слушание на воркшопе

Внимательно слушайте все что говорится на воркшопах

Следите за тем, чтобы каждый участник высказался

Page 18: Specification byexample agbc

Совокупность видений при обсуждении

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

Page 19: Specification byexample agbc

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

Page 20: Specification byexample agbc

Новые идеи по архитектуре

Новые идеи от бизнеса

Новые идеи от тестировщиков

Page 21: Specification byexample agbc

Тесты

Требования

могут стать

прорабатывают проверяют

Примеры

Page 22: Specification byexample agbc

Как это выглядит

Page 23: Specification byexample agbc

Как это выглядитРаспределенная команда

Page 24: Specification byexample agbc

Онлайн магазин алкогольной продукции предоставляет сервис доставки для своих пользователей. Доставка для клиентов со статусом Золотой Клиент является бесплатной. В случае заказов на сумму 500 гривен и более бесплатная доставка также имеет место быть. Доставка может быть бесплатной только на территории Украины, в противном случае магазин прибегает к услугам внешних компаний, которые оплачиваются по специальным тарифам. В магазине периодически проводятся акции. К покупкам, подпадающим под некоторые из таких акций, дополнительно прилагается бесплатная доставка.

Пример. Магазин алкогольных напитков

Page 25: Specification byexample agbc

Клиент из Украины, без статуса "Золотой Клиент" совершает покупку на сумму менее 500грн. Бесплатная доставка не предлагается.

Клиент из Украины, без статуса "Золотой Клиент" совершает покупку на сумму менее 500грн. Бесплатная доставка не предлагается.Клиент не из Украины, без статуса "Золотой Клиент" совершает покупку на сумму

менее 500грн. Бесплатная доставка не предлагается.

Клиент не из Украины, без статуса "Золотой Клиент" совершает покупку на сумму менее 500грн. Бесплатная доставка не предлагается.Клиент из Украины без статуса "Золотой Клиент" совершает покупку на сумму

более 500грн. Бесплатная доставка предусмотрена.

Клиент из Украины без статуса "Золотой Клиент" совершает покупку на сумму более 500грн. Бесплатная доставка предусмотрена.Клиент не из Украины без статуса "Золотой Клиент" совершает покупку на сумму

более 500грн. Бесплатная доставка не предоставляется.

Клиент не из Украины без статуса "Золотой Клиент" совершает покупку на сумму более 500грн. Бесплатная доставка не предоставляется.Клиент из Украины, владеющий статусом "Золотой Клиент", совершает покупку

на любую сумму. Бесплатная доставка представляется.

Клиент из Украины, владеющий статусом "Золотой Клиент", совершает покупку на любую сумму. Бесплатная доставка представляется.Клиент не из Украины, владеющий статусом "Золотой Клиент", совершает

покупку на сумму более 500 грн. Бесплатная доставка предоставляется.

Клиент не из Украины, владеющий статусом "Золотой Клиент", совершает покупку на сумму более 500 грн. Бесплатная доставка предоставляется.Количество ранее совершенных покупок играет роль!Количество ранее совершенных покупок играет роль!

Пример. Магазин алкогольных напитков

Имя Клиента

Страна Клиента

Золотой Клиент

Сумма Заказа

Бесплатная Доставка

Артур Украина нет 350 нетАндрей Россия нет 400 нетЮрий Украина нет 1000 даПетро Грузия нет 1230 нетЕлена Украина да 300 даВасилий Молдова да 600 нет

Бесплатная доставка. Спецификация

Page 26: Specification byexample agbc

Пример. Магазин алкогольных напитков

Имя Клиента

Страна Клиента

Золотой Клиент

Сумма Заказа

Количество Заказов

Бесплатная Доставка

Артур Украина нет 350 4 нетАндрей Россия нет 400 4 нетЮрий Украина нет 1000 4 даПетро Грузия нет 1230 4 нетЕлена Украина да 300 4 даВасилий Молдова да 600 4 нетАлексей Украина нет 150 7 даДэвид Англия нет 375 6 нетФилиппо Италия да 630 12 нет

Клиент из Украины, без статуса "Золотой Клиент", совершает покупку на сумму менее 500грн, но при этом количество предыдущих его заказов больше 5.

Бесплатная доставка предоставляется.

Клиент из Украины, без статуса "Золотой Клиент", совершает покупку на сумму менее 500грн, но при этом количество предыдущих его заказов больше 5.

Бесплатная доставка предоставляется.

Клиент не из Украины, без статуса "Золотой Клиент", совершает покупку на сумму менее 500грн, но при этом количество предыдущих его заказов больше 5.

Бесплатная доставка не предоставляется.

Клиент не из Украины, без статуса "Золотой Клиент", совершает покупку на сумму менее 500грн, но при этом количество предыдущих его заказов больше 5.

Бесплатная доставка не предоставляется.

Клиент не из Украины, имеющий статус "Золотой Клиент", совершает покупку на сумму более 500грн и при этом количество предыдущих его заказов больше 5.

Бесплатная доставка не предоставляется.

Клиент не из Украины, имеющий статус "Золотой Клиент", совершает покупку на сумму более 500грн и при этом количество предыдущих его заказов больше 5.

Бесплатная доставка не предоставляется.Вводится новая концепция «Специального Предложения»!Вводится новая концепция «Специального Предложения»!

Бесплатная доставка. Спецификация

Page 27: Specification byexample agbc

Пример. Магазин алкогольных напитков

Специальное предложение. СпецификацияДата Покупки Подарочный Пакет Новый Продукт Спец Предложение

16.04.2011 нет нет да30.04.2011 нет нет да01.05.2011 нет нет нет01.05.2011 да нет да01.05.2011 нет да да16.04.2011 да да да

Покупка любого товара в магазине совершенная до 1 мая 2011 года является специальным предложением.

Покупка любого товара в магазине совершенная до 1 мая 2011 года является специальным предложением.

Покупка товара, который не является ни подарочным пакетом , ни новым поступлением в магазин, совершенная после 1 мая 2011 года не является

специальным предложением.

Покупка товара, который не является ни подарочным пакетом , ни новым поступлением в магазин, совершенная после 1 мая 2011 года не является

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

предложением.

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

предложением.

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

предложением.

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

Page 28: Specification byexample agbc

Пример. Магазин алкогольных напитков

Бесплатная доставка. Спецификация

Имя КлиентаСтрана

КлиентаЗолотой Клиент Сумма Заказа

Количество Заказов

Специальное Предложение

Бесплатная Доставка

Артур Украина нет 350 4 нет нетАндрей Россия нет 400 4 нет нетЮрий Украина нет 1000 4 нет даПетро Грузия нет 1230 4 нет нетЕлена Украина да 300 4 нет даВасилий Молдова да 600 4 нет нетАлексей Украина нет 150 7 нет даДэвид Англия нет 375 6 нет нетФилиппо Италия да 630 12 нет нетКонстантин Украина нет 350 2 да даМурали Индия да 970 9 да нет

Клиент из Украины, без статуса "Золотой Клиент", совершает покупку на сумму менее 500грн, при этом количество предыдущих его заказов меньше 5, но покупка подпадает под критерии специального предложения. Бесплатная

доставка предоставляется.

Клиент из Украины, без статуса "Золотой Клиент", совершает покупку на сумму менее 500грн, при этом количество предыдущих его заказов меньше 5, но покупка подпадает под критерии специального предложения. Бесплатная

доставка предоставляется.

Клиент не из Украины, со статусом "Золотой Клиент", совершает покупку на сумму более 500грн, количество предыдущих его заказов больше 5 и покупка подпадает под критерии специального предложения. Бесплатная доставка не

предоставляется.

Клиент не из Украины, со статусом "Золотой Клиент", совершает покупку на сумму более 500грн, количество предыдущих его заказов больше 5 и покупка подпадает под критерии специального предложения. Бесплатная доставка не

предоставляется.

Page 29: Specification byexample agbc

• Мгновенно указывают на устаревший и/или сломанный код

Автоматизация приёмочных тестов

• Сохраняют время затраченное на ручное тестирование

• Автоматизированные и тем не менее читабельные

• Используются, чтобы предотвращать дефекты, не выявлять их

Page 30: Specification byexample agbc

Исполняемая спецификация

Page 31: Specification byexample agbc

Тестовая таблица

Доменный код

АдаптерКак это работает

Page 32: Specification byexample agbc

• Традиционные спецификации устаревают со стартом разработки

Живая спецификация

• Исполняемый код – единственное чему можно доверять, но не подходит для коммуникации

• Исполняемые спецификации соединены с кодом и в тоже время являются существенным и важным бизнес ресурсом

• Исполняемые спецификации используют для обсуждения будущих изменений и текущих проблем при разработке

Page 33: Specification byexample agbc

Плюсы для аналитиков

• Легко отслеживать прогресс разработки

• Легко отслеживать конфликты в бизнес правилах при новых запросах от клиента

• Разработчики действительно читают, «правильно» понимают и не пропускают куски спецификации

Page 34: Specification byexample agbc

Плюсы для тестировщиков

• Больше времени на эксперименты и неожиданные сценарии

• Проверка бизнес правил нажатием кнопки

• Качественный продукт со старта

Page 35: Specification byexample agbc

Плюсы для разработчиков

• Четкие и однозначные требования

• Автоматизированные тесты фокусируют и направляют разработку

• Упрощается передача и принятие кода

Page 36: Specification byexample agbc

• Обсуждение спецификации со всеми участниками помогает построить правильное, нужное бизнесу решение.

Итоги подведем…

• Понимание командой задач бизнеса делает возможным оптимальное, осознанное решение.

• Спецификация на языке понятном всем участникам процесса - светлая сторона силы

• Исполняемые живые спецификации - надежный мост между бизнесом и кодом

Page 37: Specification byexample agbc

Профайл

• Василий Нетахата, бизнес-аналитик, luxoft

[email protected]

• Саша Кихтенко, SCRUM-master, luxoft

[email protected]

Page 38: Specification byexample agbc

Источники

“Agile Software Requirements” Dean Leffingwell

http://gojko.net/

“Bridging the Communication Gap” Gojko Adzic

Page 39: Specification byexample agbc

Q & A

Давайте обсудим