Последовательность Фибоначчи - это ряд чисел, которые экспоненциально увеличиваются, поскольку каждое число является суммой двух предыдущих чисел: 0, 1, 2, 3, 5, 8, 13, 21 и так далее.
Эта последовательность была изобретена в средние века итальянским математиком Леонардо Боначчи, известным как "Фибоначчи". Он включил ее в свою книгу "Liber Abaci", что означает “книга о вычислениях”. Только в 19 веке его последовательность была вновь открыта, получила название "последовательность Фибоначчи" и стала широко использоваться в математике и биологии.
Команды Agile часто используют последовательность Фибоначчи для оценки "размера" задач и user stories в предстоящем спринте. Такая оценка может быть выполнена во времени или в сторипойнтах - измерении, уникальном для Agile, основанном на предполагаемой сложности задачи, объеме работы и риске или неопределенности.
Большинство разработчиков используют последовательность Фибоначчи до числа 89, однако команды иногда не понимают точно, почему, как и когда использовать эти числа. Недостаток знаний приводит к значительным расхождениям в оценках и недопониманию между членами команды, скрам-мастерами и владельцами продукта.
Последовательность Фибоначчи используется при оценке Agile, которая может составлять часть планирования спринта или процесса грумминга бэклога. На совещании по оценке задач, команды оценивают необходимые усилия для выбранных задач в бэклоге продукта. Оценка позволяет командам оценить, сколько задач они могут взять в работу в предстоящем спринте.
В теории команды могут собраться вокруг стола, просмотреть бэклог продукта и назвать или записать число из последовательности Фибоначчи, которое отражает их оценку для обсуждаемой задачи. Однако, на практике такой подход неудобен, поскольку требует ручной проверки использованных чисел, их суммирования и расчета среднего значения.
Вместо этого большинство команд Agile предпочитают сочетать последовательность Фибоначчи с методом оценки, называемым "покер планированием".
При покер планировании каждому члену команды выдается специальная колода карт, соответствующая последовательности Фибоначчи. Когда задача подлежит оценке, каждый участник индивидуально выбирает карту, которая наилучшим образом отражает его оценку этого элемента. Затем все одновременно открывают свои карты и обсуждают свои оценки до достижения консенсуса.
Использование последовательности Фибоначчи в Agile оценке помогает избежать траты времени на мелкие разногласия и сосредоточиться на оценке более крупных и сложных задач. Это лучше всего объяснить на примере, сравнивая простую оценку по времени с оценкой по Фибоначчи.
Предположим, что ваша команда Scrum должна оценить усилия, необходимые для выполнения большой задачи в списке продуктовых задач, такой как добавление новой функции в ваше приложение. Предположим, что вы оцениваете ваши задачи на шкале от 1 до 50. Когда вы обсуждаете задачу из бэклога с командой, один выбирает 31, другой - 36, а третий - 38. Когда разрыв между каждой оценкой составляет одно целое число, сложно уверенно оценивать. Кажется, что оценки должны быть очень точными.
При использовании чисел Фибоначчи такое не произойдет, потому что последовательность заставляет вас выбирать числа с большим расстоянием между ними. В этом примере все, скорее всего, выбрали бы число 34 в последовательности Фибоначчи, так как альтернативными вариантами были бы 21 или 55.
Теперь вы можете обеспокоиться тем, что это приводит к менее точным оценкам для более крупных задач. И вы будете правы, но вам не нужно беспокоиться, потому что в один спринт вы не сможете вместить много крупных задач. Обычно высокая оценка означает, что вам нужно разделить задачу на более мелкие.
Кроме того, цель оценки в Agile не заключается в создании точного плана работ по каждому часу. Цель состоит в том, чтобы у команды было разумное представление о том, сколько задач из продуктового бэклога они должны планировать выполнить в ближайшем спринте.
Для небольших задач, где риски ниже, последовательность Фибоначчи предлагает нюансы и определенность. Это имеет смысл, потому что небольшие задачи, как правило, более управляемы, и им легче назначить более точную оценку.
Стандартная последовательность Фибоначчи не всегда подходит для каждой ситуации или команды. Рассмотрите возможность использования модифицированных версий Фибоначчи или альтернативных шкал оценки задач, если вы только начинаете использовать оценку задач в Agile или если вам нужен другой подход для меньших и больших задач.
Существует множество различных способов выполнения процесса оценки с помощью стоимостной оценки.
Вот обзор распространенных альтернативных шкал оценки задач:
Единственное число, которое может состязаться по популярности с последовательностью Фибоначчи, - это число пи (π = 3,14159). Но и у Фибоначчи впечатляющие достижения. Оно упоминается в романе "Код да Винчи", телесериалах "Цифры" и "Мыслить как преступник". Американская рок-группа Tool создала песню, используя код Фибоначчи, и у самой последовательности даже есть свой собственный день, День Фибоначчи - 23 ноября.
К счастью, последовательность Фибоначчи знаменита не только своей популярностью. Она приносит реальную пользу уже сотни лет и, вероятно, будет продолжать делать это в течение многих лет как внутри сообщества Agile, так и за его пределами.