SlideShare a Scribd company logo
Compilable specifications by Dmytro Mindra
Компилируемые спецификации
Дмитрий Миндра
Дмитрий Миндра
Developer Tools SSP, Microsoft Ukraine
Почти сделано
Хорошо, что не все в мире похоже на
разработку ПО
Люди видят окружающий мир по-
разному.
Взаимопонимание
?!!!?!?!?!?!?!
Разработчик
QA
Заказчик
Требования
То, что мы не понимаем, ненадежно.
Сложность подрывает понимание.
Чем понятнее и проще требования, тем надежнее
функциональность.
Пользовательские истории
Содержат только самую необходимую информацию.
Являются предпосылкой для дальнейшего
обсуждения.
Требования становятся понятнее
Пользовательские истории
Как ... , я хочу ... чтобы ...
As a … , I want … so …
Пользовательские истории
Для того, чтобы ... , Как ..., Я хочу ...
In order to …, As a … , I want ...
Попробуем ?
Пользовательская история к системе заказа столиков
в кафе.
Для того, чтобы _____________________ ,
Как (в роли кого) ______________________
,
Я хочу
___________________________________ .
Попробуем еще?
Для того, чтобы _____________________ ,
Как
_____________________________________ ,
Я хочу
___________________________________ .
Что такое BDD?
Небольшие и очень четкие частички поведения,
выраженные в формате пользовательских историй.
Примеры, Примеры, Примеры
Язык, понятный всем членам команды.
Что такое BDD?
Для того, чтобы ... , Как ..., Я хочу ...
In order to …, As a … , I want ...
Структура описания в BDD
Context Event Response
Ваше состояние
Что вы делаете
Какой это дает результат
Структура описания в BDD
GIVEN WHEN THEN
Ваше состояние
Что вы делаете
Какой это дает результат
Это называется Gherkin
На что это похоже ?
Это набор небольших историй, использующих
определенную грамматическую структуру.
Поиск пробелов в понимании и их заполнение.
Это похоже на запись беседы.
Все подкреплено примерами.
Преимущества ?
Мы говорим о поведении системы, не затра��ивая
ее архитектуры.
Мы приводим примеры.
Мы получаем приемочные критерии.
Переходим к практике!
РазработчикQA
Инвестор
Мне нужен интернет магазин книг
про Гарри Поттера!
Ты кто такой? Давай техзадание!
Given
______________________________________ ,
When
_____________________________________ ,
Then
_______________________________________
.
In order to
_________________________________ ,
As a
_______________________________________
__ ,
I want
_____________________________________ .
Фича
Сченарий
U01: Поиск
Для того, чтобы книгу(и) купить
Как потенциальный покупатель,
Я дожен сначала ее найти!
Фича ;)
DEMO
Демонстрация MSpec
SpecFlow
BDD инсрумент для .NET
Интегрируется с Visual Studio
Поддерживает Gherkin
DEMO
Демонстрация SpecFlow
DEMO
Демонстрация FitNesse
Спасибо !
Контакты
Дмитрий Миндра
Microsoft Ukraine
v-dmytrm@microsoft.com & @dmytromindra
© 2013 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or may be registered trademarks and/or trademarks in the U.S. and/or other countries.
The information herein is for informational purposes only and represents the current view of Microsoft Corporation as of the date of this presentation. Because Microsoft must respond to changing market conditions, it should not be interpreted to be a commitment on the part of
Microsoft, and Microsoft cannot guarantee the accuracy of any information provided after the date of this presentation. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.

More Related Content

Compilable specifications by Dmytro Mindra