Scrum - это методология управления проектами, как бы вы «продали» ее разработчикам в команде, которая достаточно довольна текущей ситуацией?
Мне кажется, легко объяснить нашему менеджеру по продукту, как Scrum позволит ему получать регулярные выпуски, изменять требования и заставлять команду сосредоточиться на приоритетных историях. Мне было легко объяснить, что TDD или Continuous Integration приносят в повседневную жизнь разработчика.
Но как убедить разработчиков принять Scrum? Как Scrum сделает их жизнь проще?
Разбиение большой цели («сделай программное обеспечение готовым») на более мелкие кусочки - истории - и принятие решения о том, что из них делать в текущем спринте, повышает производительность и снижает стресс. Когда вы точно знаете, что должны делать сейчас , вам не о чем беспокоиться, и вы можете сосредоточиться на выполнении небольшого кусочка, вместо того, чтобы чувствовать себя подавленным большим целым.
источник
Stack Ranks / Backlog не позволяет маршам смерти быть маршами смерти
Как разработчик, «деструктивный паттерн», который я больше всего вижу в разработке программного обеспечения, - это когда некоторый «внешний контроллер» (например, управление проектами, исполнительное руководство) очень взволнован тем фактом, что «любимая функция» не сможет его реализовать ». календарная дата 'и приказывает марш смерти.
Scrum, поскольку он занимает «важные функции» высоко в списке невыполненных работ, помогает разработчикам активно управлять этим напряжением двумя способами. Во-первых, вы можете ранжировать «любимую функцию» высоко в заделе, чтобы он / она, скорее всего, был счастлив. Во-вторых, он дает очень наглядный и конкретный ответ на вопрос «поскольку мы переместили« мигающие виджеты »на 1-е место, весьма вероятно, что в этом спринте мы не собираемся« подпрыгивать на кроликах », так как теперь это 7-е место. вам комфортно с этим компромиссом?
Я также обнаружил, что при коротких спринтах «внешние контроллеры» меньше расстраиваются из-за того, что откладывают работу. Если «мигающие виджеты» не превращаются в «этап 1», а «этап 2» не заканчивается до 9 месяцев спустя, спонсор «мигающие виджеты» очень расстраивается. Но если «мигающие виджеты» занимают в стеке 7 вместо 1, потому что на самом деле есть еще 6 важных вещей, которые должны быть выполнены в первую очередь, это означает, что мы, вероятно, доберемся до него в спринте + 1 или в худшем случае в спринте + 2, что означает он будет отображаться через 12 или 18 недель (с использованием 6-недельного спринта). По моему опыту, ожидание 3 месяца «приемлемо» для нетерпеливых - кроме того, в модели «водопад» с 3-месячными вехами,
Наконец, если мы приближаемся к концу спринта, и все заняло больше времени, чем ожидалось, очень приятно иметь возможность перенести пункты 5-6-7 в отставание к следующему спринту и убедиться, что мы выполнили 1-2-3 -4 с высоким качеством и без 70 часов недели. В конце концов, мы обязательно доберемся до 5-6-7 следующего спринта. Опять же, учитывая более короткие сроки, связанные с переносом, «внешние контролеры», как правило, чувствуют себя более комфортно и не настаивают на том, чтобы мы проскользнули веху на две недели и каждый вечер заказывали обеды, «чтобы просто пройти через это».
источник
Люди в команде Scrum сами решают многие вещи: что будет сделано во время следующего спринта, как мы разбиваем эту историю на задачи, кто над чем работает и т. Д. Это дает им силы, и это почти полная противоположность микро -управление.
источник
Тот факт, что требования будут изменены, учитывается с самого начала. Разработчикам не нужно создавать подробные спецификации с точными оценками, а затем потратить недели на разработку функции, только чтобы понять, что клиент передумает, как только увидит результат ...
источник
Для меня, вы получаете самостоятельное назначение задач из невыполненных работ - это самая большая точка продажи с точки зрения разработчика. Кроме того, близость с клиентом / владельцем продукта помогает понять более широкую схему вещей.
источник
Пара вещей:
Опираясь на точку зрения Ксавьера о том, что требования меняются с самого начала, возникает менее политическая атмосфера, когда все с самого начала принимают, что некоторые вещи не будут соответствовать ожиданиям клиента. Быстрая доставка и проверка будут означать, что стоимость неправильной коммуникации низкая, и вместо того, чтобы играть в игру с обвинениями, разработчики могут просто изменить ситуацию так, чтобы они работали так, как ожидает клиент.
Очки истории! Какой разработчик не любит получать очки за работу !!?! Серьезно, это лучше, чем получать значки в SC2 или Stack Overflow.
источник
Есть несколько вещей, которые мне как разработчику нравятся в Scrum.
Разработчики, как правило, получают больше информации заранее. Владелец продукта должен объяснить всю работу, которая будет сделана во время следующего спринта, достаточно подробно, чтобы дать хорошие оценки.
Оценка во времени означает, что эти оценки достаточно точны. Каждый обычно имеет достаточно хорошее представление о том, что будет завершено в спринте. Это дает программистам и менеджерам проектов инструменты для противодействия необоснованным требованиям.
Приятно отступать каждые три-четыре недели и делать вдох и, по крайней мере, менять темп.
Самоорганизующиеся команды, кажется, дают немного больше разнообразия в работе.
По крайней мере, теоретически, во время спринта меньше перерывов и «чрезвычайных ситуаций».
Ежедневные встречи заставляют программистов произносить несколько слов каждый день.
Проще заметить прогресс, так как истории явно заканчиваются и рассматриваются в конце каждого спринта.
Графики сгорания - довольно эффективное и легкое средство отслеживания прогресса.
источник
Преимущество для разработчика - ранняя обратная связь (от клиента, тестировщика, владельца продукта и т. Д.).
Также как разработчик, я всегда заинтересован в том, чтобы делать все шаг за шагом, не отвлекаясь. Scrum обеспечивает это.
PS: схватка - это не методология, это основа.
источник