Ответ
User Story (Пользовательская история) — это краткое, простое описание одной функции программного обеспечения, сформулированное с точки зрения конечного пользователя и описывающее, какую ценность он хочет получить.
Стандартный формат (шаблон Коннора):
Как [<тип пользователя/роль>],
Я хочу [<выполнить некоторое действие>],
Чтобы [<получить определённую пользу/результат>].
Примеры:
- Как зарегистрированный пользователь, Я хочу восстановить пароль по email, Чтобы получить доступ к аккаунту, если я его забыл.
- Как покупатель, Я хочу фильтровать товары по цене, Чтобы быстро найти варианты в рамках моего бюджета.
Ключевые компоненты хорошей User Story (INVEST-критерии):
- Independent (Независимая): Минимизирует зависимости от других историй.
- Negotiable (Обсуждаемая): Детали уточняются в диалоге, а не жёстко зафиксированы.
- Valuable (Ценная): Приносит пользу пользователю или бизнесу.
- Estimable (Оцениваемая): Команда может оценить её сложность.
- Small (Маленькая): Может быть выполнена за один спринт (идеально — за несколько дней).
- Testable (Тестируемая): Имеет чёткие критерии приемки.
Acceptance Criteria (Критерии приемки): Это условия, которые должны быть выполнены, чтобы история считалась завершённой и рабочей. Часто оформляются в виде сценариев.
Пример User Story с критериями приемки в формате Gherkin:
Feature: Восстановление пароля
Как зарегистрированный пользователь,
Я хочу восстановить пароль,
Чтобы вернуть доступ к своему аккаунту.
Scenario: Успешный запрос на восстановление пароля по email
Given Я нахожусь на странице входа в систему
When Я нажимаю ссылку "Забыли пароль?"
And Я ввожу свой зарегистрированный email "user@example.com" в появившуюся форму
And Я нажимаю кнопку "Отправить инструкции"
Then Мне показывается сообщение "Инструкции отправлены на ваш email"
And Письмо со ссылкой для сброса пароля отправляется на адрес "user@example.com"
Scenario: Запрос с незарегистрированным email
Given Я нахожусь на странице восстановления пароля
When Я ввожу email "unknown@example.com"
And Я нажимаю кнопку "Отправить инструкции"
Then Мне показывается сообщение "Пользователь с таким email не найден"
And Письмо не отправляется
User Story — это основной артефакт для планирования в Agile-методологиях (Scrum, Kanban), который связывает техническую реализацию с бизнес-ценностью.