Как стать автором
Обновить

Как работать со сложными пользовательскими историями, которые нельзя разделить

Время на прочтение2 мин
Количество просмотров2.7K
Автор оригинала: Mike Kohn

Большинство пользовательских историй можно разделить. Может быть трудно найти хороший способ разделить некоторые истории, но большинство из них можно разделить. Они известны как составные истории — истории, состоящие из нескольких более мелких историй.

Есть еще один тип истории: сложная история. Сложные истории — это те, которые нельзя разделить. Они по своей природе большие и/или сложные, и в них нет частей, которые можно было бы разделить на отдельные истории. Но даже со сложной историей вы не захотите, чтобы история задерживалась на три, четыре или более спринтов. 

Если вы делаете одну историю более одного спринта, то столкнетесь со следующими не очень хорошими последствиями:

  1. Делаете скорость команды менее предсказуемой от спринта к спринту.

  2. Увеличиваете риск того, что разработчик отклонится от ожиданий пользователей.

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

Используйте точки прогресса

Итак, что же должна делать хорошая Agile-команда?

Когда невозможно найти хорошее, естественное разделение пользовательской истории, вы можете найти точки прогресса.

Точка прогресса — это любой момент во время разработки, когда разработчик чувствует, что что-то было достигнуто.

Ни один разработчик не хочет провести два месяца без удовлетворения от работы, когда единственное, что он может сказать товарищам по команде на всех встречах: «Я продолжаю делать историю 505». Это печально и демотивирует.

Чтобы определить точки прогресса, спросите разработчика, который занимается сложной историей: «Какие важные небольшие достижения ты видишь во время работы над этой историей, когда ты захочешь сказать технически подкованному товарищу по команде: «Чувак, зацени это! У меня есть то-то и то-то для работы!»

Примеры точек прогресса

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

Первая точка прогресса указывает на то, что первая транзакция отправлена ​​(или получена) из другой системы. Никакой проверки или обработки ошибок не выполняется, но первый обмен данными с другой системой будет моментом, когда разработчик может поделиться достижением со вторым технически подкованным товарищем по команде, который понимает важность достижения.

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

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

Использование точек прогресса

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

Теги:
Хабы:
Всего голосов 2: ↑2 и ↓0+2
Комментарии1

Публикации