Apr 20, 2012 10:23
Полтора года назад мы начали полномасштабный и бесповоротный переход на Agile в одной из продуктовых команд, в которой я играл роль владельца продукта (product owner). Основной причиной перехода стала осознанная невозможность своевременной адаптации планов разработки под все более быстро изменяющиеся требования наших внутренних и внешних заказчиков. Основным из главных вызовов этого перехода стала сама команда, которая состояла из опытных людей, которые построили свои успешные карьеры в программной инженерии на проектах с традиционными подходами к разработке. За прошедшие полтора года произошло многое. Были взлеты и успехи, были падения и разочарование от несбывшихся ожиданий. О некоторых подробностях переходного периода я рассказывал год назад на AgileDays2011 ("В чем счастье заказчика? Готовые фичи вместо Гант-чарта!"):
Но вот прошло полтора года. Около года назад начали реально работать ретроспективы. И это дало мне надежду после полугодия наших практически безрезультатных попыток измениться. Вот уже более 9 месяцев мы живем с полноценным Continuous Integration, и его появление стало для меня тем переломным моментом, когда я окончательно поверил, что мы наконец-то справились сами с собой, и теперь нас ждет достаточно прогнозируемое и многообещающее будущее.
Прошло время пробовать более интересные и более сложные вещи. И об одном из таких интересных экспериментах я будет дальнейший рассказ.
Суть эксперимента - выделение резерва времени из рабочей загрузки команды (team work capacity) на выполнение задач, которые могут уже в ходе спринта выбрать сами сотрудники. Оказалось, что некоторые члены команды испытывают существенный дискомфорт из-за того, что связанные с их ключевыми компетенциями мелкие и не очень заметные на масштабе проекта задачи во время планирования спринта постоянно проигрывают по приоритетам другим более крупным задачам с более понятной бизнес-значимостью. И тут можно много троллить и кидать камни в чужой огород: дескать, это проблема этих специалистов, потому что они не смогли донести до команды и product owner-а важности этих пусть и мелких задач, или что это проблема product owner, который не смог разглядеть важность этих задач и помочь специалисту их пролоббировать на планировании, или того, что эти задачи не внесены правильно в technical debt бэклог и пр. и пр.
Но факт остается фактом - некоторые сотрудники испытывают огромный моральный дискомфорт из-за того, что у них накопилось огромное количество мелких задач, которые они давно хотели бы сделать, но которые постоянно откладываются на "потом." И это психологическая проблема, которую нужно как-то быстро решить, пусть и не совсем "по книжному". И вот что мы предложили в качестве процессного эксперимента.
Мы выделяем несколько фич-заглушек с пустым на момент планирования спринта скоупом, но с конкретной оценкой сложности/трудозатрат, и включаем эти "фичи" в скоуп спринта. Обычно это 1-3 фичи небольшого размера (менее 5% velocity команды).
Результат эксперимента показал феноменальный результат. Испытывавшие ранее дискомфорт специалисты с такими фичами смогли почувствовать себя менеджерами. Хотя бы для самих себя. Они получили самостоятельность. Они теперь сами спокойно выбирают те задачи, которые считают нужными сделать в рамках объема этих фич-заглушек исходя из своего внутреннего понимания бизнес-значимости и приоритетности. И сотрудникам теперь не нужно тратить много времени на объяснение команде сути этих мелких задач и убеждение всех в высокой бизнес-значимости этих работ. Задачи такие маленькие, что раньше 90% времени уходило на бесконечные объяснения и приоретизацию и планирование, и только 10% тратилось на дело. И то, только если эти задачи все-таки принимались в скоуп спринта.
А теперь все эти потери ликвидированы. Сотрудник самостоятельно делает выбор, чувствует себя ответственным, у него появляется время реально сделать за спринт достаточно много мелких задач из накопившихся "висяков". Фактически, у каждого сотрудника теперь есть возможность вести свой собственный бэклог технических задолжностей, и иметь гарантированный слот времени на выполнение нескольких высокоприоритетных задач из своего персонального бэклога в течение спринта. И осознания этого факта дает ощущения сильного удовлетворения и радости от хорошо сделанной работы.
agile,
agiledays