Какво е стори
Накратко: Сторито казва кой иска нещо, какво иска и защо, в едно изречение. То не е спецификация: подробностите идват в разговора, а потвърждението казва как ще разберем, че е готово. Задачата за програмиста и слоят не са сторита, защото никой не може да ги опита сам.
Проблем
Искането в един ред
В списъка със задачи на екипа има ред: „Промо кодове“. Програмистът прави поле за код, което вади 10 % от цялата поръчка. Тестерът проверява, че 10 % се вадят. Всичко минава.
На пускането маркетингът пита защо кодът важи и за намалените продукти. Счетоводството пита къде вижда колко отстъпка е дадена през месеца. Никой не е сгрешил в това, което е направил. Само че редът „Промо кодове“ не казваше нито за кого е, нито защо.
Идеята
Кой, какво, защо
Потребителското стори (user story) казва една нужда с едно изречение и с три части:
Като [роля] искам [цел], за да [полза].
Като редовен клиент искам да въведа промо код в количката, за да платя по-малко за поръчката.
- Ролята е човекът, който има нуждата. Не „потребителят“ изобщо, а клиент, служител в склада, счетоводител. Това са заинтересованите страни от предишния модул.
- Целта е какво иска да направи, с неговите думи, без бутони и таблици.
- Ползата е защо. Тя е най-ценната част, защото срещу нея се валидира решението: ако полето за кода работи, а клиентът пак не плаща по-малко, сторито не е изпълнено.
Сторито е малко изискване, записано така, че да започне разговор. На работа ще го чуеш и като „стори“, и като „юзър стори“. В курса казваме стори.
По-точно, за любопитните
Шаблонът „As a …, I want …, so that …“ се свързва с екип от британската фирма Connextra около 2001 г. и става известен с книгата на Майк Кон „User Stories Applied“ (2004). ISTQB CTFL v4.0.1 (раздел 4.5, подходите, базирани на сътрудничество) дава същия шаблон: роля, цел, бизнес стойност за ролята.
Шаблонът не е задължителен. Някои екипи пишат „За да …, като …, искам …“, за да сложат ползата първа. Важното е трите части да ги има.
Пробвай
Стори или не?
Идеята
Трите C
Едно изречение не може да носи всичко за промо кодовете. И не трябва. Рон Джефрис, един от създателите на Extreme Programming, описва сторито с три думи, които на английски започват с C. Наричат ги трите C (the three Cs):
- Карта (Card). Сторито е толкова кратко, че се побира на малка карта. Картата не е изискването, а напомняне, че трябва да се поговори.
- Разговор (Conversation). Подробностите се изясняват в разговор между хората, които знаят: бизнеса, QA и програмиста. Там излизат въпросите „а намалените продукти?“ и „а ако кодът се ползва два пъти?“.
- Потвърждение (Confirmation). Как ще разберем, че сторито е готово? С конкретни правила и примери, по които може да се провери. Те се пишат преди работата.
В историята с промо кодовете имаше карта. Нямаше разговор, затова нямаше и потвърждение. Затова „готово“ значеше „програмистът спря“.
По-точно, за любопитните
Джефрис описва трите C в статия от 2001 г. ISTQB CTFL v4.0.1 ги изрежда в раздела за съвместното писане на сторита и свързва потвърждението с критериите за приемане. Критериите са темата на урока „Критерии за приемане“ в този модул.
Идеята
Какво сторито не е
Три неща се бъркат със стори най-често:
- Спецификация. Сторито не изрежда всичко. Ако картата стане страница с всички случаи, разговорът няма да се случи, а написаното пак ще е непълно. Подробностите се записват след разговора, като правила и примери.
- Задача за програмиста. „Добави поле за код на страницата за плащане“ казва какво да се направи, но не за кого и защо. Задачите са добри, но идват след сторито, когато екипът реши как да го направи.
- Слой на системата. „Бекендът на промо кодовете“ или „екранът на количката“ са части от решението. Никой не може да ги опита сам и да каже „да, това исках“.
И още едно: „Като система искам…“ не е стори. Системата няма нужди. Зад всяко „като система“ стои човек, когото още не сме намерили.
Пробвай
Кое „за да“ е полза?
Във всеки въпрос избери края на сторито, който казва истинската полза.
Идеята
Защо ползата е важна
Ползата прави две неща.
Първо, по нея се валидира. „За да реша дали да добавя още нещо до 50,00 €“ казва, че не стига доставката да се показва след плащането. Трябва да се вижда в количката, докато клиентът още избира.
Второ, тя отваря по-добри решения. Счетоводителката иска бутон за Excel. Ползата е „за да сверявам с банката“. Може би по-доброто решение е готов отчет, който пристига сам. Това е същият навик от урока за извличането: нуждата зад поисканото решение.
Ако не можеш да напишеш ползата, това е знак. Или не знаеш защо се прави сторито, или то не трябва. И в двата случая следващата стъпка е въпрос, не работа.
Упражнение
От искането към стори
1. Кое стори казва нуждата? Три искания от заинтересованите страни, всяко с три опита да се запише.
Тест
Провери се
Свързани уроци
Раздел „Свързани уроци“- Нужно отпреди: Добре дошъл · Кой има думата · Как се извличат изискванията · Видове изисквания
- Продължава в: Доброто стори: INVEST · Разбиване на голямо стори · Критерии за приемане · Example Mapping: правила, примери, въпроси
- Задачи по темата: Сторита и критерии за приемане