Моя команда создает веб-приложение со следующей пользовательской историей высокого уровня:
Как пользователь, я хотел бы иметь возможность массово исключать компоненты из определенной страны.
Работа распадается на две отдельные задачи.
Сначала я начал разбивать это на две пользовательские истории. Однако вторая задача не совсем вписывается в типичный формат пользовательской истории. Я начал писать что-то вроде этого:
В качестве системы я буду анализировать данные о странах из фида XYZ.
С одной стороны, эта задача не ориентирована на пользователя. С другой стороны, возможность извлечения данных по компонентам и странам — это четко определенная задача с вертикальными срезами, которую можно проверить независимо.
Какова правильная разбивка пользовательской истории для этого типа сценария? Неуместно ли иметь пользовательскую историю, ориентированную на систему?
Обратите внимание на букву «V» в мнемонике INVEST .
PBI должен приносить пользу заинтересованным сторонам.
Спросите себя: сама по себе возможность анализировать данные о стране из фида XYZ представляет какую-либо ценность для заинтересованных сторон проекта?
Если да: хорошо, разделите его. Если нет: нет, оставьте его как есть (или, возможно, разделите его каким-либо другим способом, который не сделает INVEST недействительным.
Примечание: «Система», вероятно, не является заинтересованной стороной проекта.
Вы путаете пользовательские истории и задачи. Элементы Бэклога Продукта часто начинаются как пользовательские истории в Бэклоге Продукта, но Scrum не требует формата пользовательской истории. Эти Элементы Бэклога Продукта импортируются в Бэклог Спринта во время Планирования Спринта. На этом этапе истории часто дорабатываются, а дополнительные истории и задачи, связанные с запланированной работой, часто генерируются на протяжении всего спринта.
Ключевым моментом, однако, является то, что задачи не обязательно должны быть полноценными пользовательскими историями, даже если ваш Бэклог Продукта использует такой формат. Идите вперед и используйте пользовательские истории, когда это имеет смысл, но детали реализации редко имеют смысл в качестве пользовательской истории, потому что:
Пользовательские истории являются заполнителями для разговоров и, как правило, предоставляют потребителям ценности, краткое описание функций и некоторый контекст для руководства реализацией и последующими обсуждениями. Пользовательские истории — это не спецификации! Поэтому не ограничивайте свой процесс чрезмерно, пытаясь впихнуть детали реализации или спецификации в формат пользовательской истории. Обычно сок не стоит выжимать.
Я согласен с тем, что ежедневная выборка БД может быть задачей, которая является частью запрошенной пользовательской истории.
Но если по какой-либо причине вы не хотите или не можете работать над обеими задачами в одном спринте, может помочь сосредоточиться на ценности (которая будет) получена.
Задача выборки из БД не приносит никакой пользы пользователю, но приносит пользу покупателю за счет снижения стоимости реализации пользовательской истории.
Даниэль
Кинжал Гилберта Аренаса