Блог Scrum.ru

Swarming: one-piece flow

✥ ✥ ✥
Если работать над большим количеством задач одновременно, это может значительно снизить эффективность работы сотрудников, производительность команды и благополучие всего предприятия. Это может навредить производительности и в отдельных случаях свести ее к нулю. Если каждый будет работать только над собственной задачей, они вряд ли смогут помочь друг другу и в долгосрочной перспективе научиться чему-нибудь у коллег.
Личные предпочтения сотрудника и препятствия в рабочей среде часто ведут к разрозненности усилий. Если команда одновременно работает над несколькими элементами, это ведет к чрезмерному количеству незавершенной работы, низкой эффективности и соответствующим задержкам.
WIP (количество незавершенной работы) или незавершенное производство — это частично завершенные задачи, ожидающие доработки и последующей продажи, а также ценность этих элементов. Эти элементы либо только что разработаны, либо ожидают доработки в очереди или во временном хранилище. Термин используется на производстве и в управлении поставками.
Оптимальное управление производством направлено на минимизацию незавершенной работы. Незавершенная работа требует дополнительного хранилища, представляет собой связанный капитал, недоступный для инвестиций, и несет в себе риск, что срок хранения продуктов уменьшится. Если на производственном этапе образовалась очередь, значит, этому этапу не грозит нехватка задач с предыдущих этапов, но также это может указывать на недостаток ресурсов для обработки результатов от предыдущих этапов.
Предположим, команда пытается увеличить выработку путем параллельной работы, когда каждый сотрудник работает над одним элементом Бэклога Продукта (PBI). Работая в одиночку, члены Команды разработки с большей вероятностью сосредоточатся на разработке элемента, а не на его тестировании, в частности, потому что специалистов, обладающих компетенциями и желанием проводить тестирование, намного меньше, чем специалистов для творческих задач проектирования и разработки. Если в ходе Спринта возникает задержка нескольких элементов, возрастает риск того, что к концу Спринта PBI не придут к статусу «Готово». Что еще хуже, некоторые разработчики из Кремниевой долины и Европы, работающие над сложным программным обеспечением, обнаружили, что если не выявить и не исправить ошибку в ходе Спринта, один час тестирования кода может превратиться в 24 часа тестирования три недели спустя. Если команда откладывает тестирование, а не применяет Сворминг, то элемент, который можно было бы поставить через месяц, будет поставлен через два года.
Обобщая проблему, Джерри Вайнберг демонстрирует, как многозадачность мешает выполнению задач:
Что еще хуже, недавнее исследование мозговой деятельности показало, что многозадачность делает человека глупее и медленнее, увеличивает стресс и ускоряет процессы старения.
Одновременная работа над несколькими вещами создает иллюзию того, что дела идут быстрее, и играет на стремлении руководства повысить эффективность работы отдельного сотрудника. Однако это увеличивает количество дефектов, которые потом команда должна устранить и протестировать, повышает затраты на разработку и задерживает релиз продукта.
Команда может разделить работу по подгруппам, но каждая подгруппа будет работать независимо только в той мере, в какой элементы продукта не зависят друг от друга. Элементы обычно составляют сложную взаимосвязанную систему, и эти зависимости могут мешать прогрессу и вызывать задержки, хотя при структурировании элементов работы редко возникают циклическиезависимости. Члены Команды разработки часто хотят работать независимо, чтобы не мешать друг другу писать код, а это признак дисфункциональной команды со слабыми инженерными практиками и слабым прогрессом. Компания Google решила эту проблему, введя ежедневные встречи и практику Сворминга, чтобы приводить задачи к статусу «Готово».
Поэтому:
Сосредоточьте максимум усилий команды на одном элементе в Бэклоге Продукта и завершите всю известную работу по возможности быстрее. Кто берет элемент, тот становится Капитаном команды. Все должны по мере сил помогать Капитану и никто не должен ему мешать. Как только Капитан завершит элемент и доведет его до статуса «Готово», берется следующий элемент из Бэклога и появляется следующий Капитан.
В 1947 году мы расположили станки параллельными линиями или под прямым углом (L-образно), чтобы один рабочий обслуживал три-четыре станка. Однако, даже несмотря на то, что их рабочий день не увеличился, мы столкнулись с сильным сопротивлением рабочих. Им не нравилось, что новая система организации труда требует от них владения несколькими квалификациями: лучше схема «один оператор — один станок», чем «один оператор — несколько станков с разными функциями». Тайичи Оно, «Производственная система Тойоты!, 1988, глава 1. — Рисунок из книги Джеффри Лайкер, Дао Toyota, 2004, глава 8, рис. 8-4.
Такой подход позволяет максимизировать производительность и поставлять бизнес-ценность благодаря совместной работе команды. Для этого необходима смена мировоззрения, чтобы сосредоточиться на потоке производства и Сворминге элементов Бэклога, а не на эффективности отдельных задач. Индивидуальная эффективность не оптимизирует производство, но незадействованные производственные мощности могут ускорить процесс.
Как ни парадоксально это звучит, но хотя Сворминг означает, что команда сосредотачивается на одном PBI, это также подразумевает быстрое чередование нескольких функций по разработке элемента. Команда может несколько минут заниматься внедрением, затем быстро провести тестирование, дополнительный анализ и последующие доработки элемента, пока PBI не придет к статусу «Готово». Единовременное выполнение только одного этапа разработки — это еще один способ избежать командной работы, а Сворминг работает лучше всего тогда, когда все члены команды постоянно используют все свои компетенции.
Это фрактальная модель, которая применяется на уровне предприятия, на уровне портфеля, на уровне команды и на индивидуальном уровне; см. Кови.
✥ ✥ ✥
Можно поощрять Сворминг в команде, когда команда будет воспринимать на себя как единое целое, а не как отдельных сотрудников. Ограничьте или отмените награды за выдающиеся личные достижения. Изживайте «культуру героя», устранив переработки, дополнительную плату за переработки и трудовую этику, в которой ценится тяжелая работа. Если команда будет совместно работать над одним PBI, это позволит членам команды овладеть новыми умениями и приведет к увеличению числа специалистов широкого профиля. Это также мотивирует команду достигать отличных результатов в ходе каждого Спринта с четко поставленной Целью Спринта.
Отображение PBI с наивысшим приоритетом на Скрам-доске будет способствовать самоорганизации как отдельных сотрудников, так и команд, и максимальной продуктивности во время Спринта. Датская компания Systematic A/S продемонстрировала, как внедрение этой модели удвоило продуктивность каждой команды в компании. Citrix Online внедрила эту модель на уровне предприятия и сократила цикл выпуска ПО с 42 месяцев до менее 10 месяцев, благодаря чему их продукты заняли значительную долю рынка.
Внедрение этой модели позволяет организовать непрерывный поток единичных изделий (One-piece continuous flow). Тойота продемонстрировала, что это оптимизирует производственные мощности:
В идеале, поток единичных изделий означает, что детали перемещаются от одного этапа обработки непосредственно к следующему этапу, а затем к клиенту, и между этими этапами нет времени ожидания. Долгие годы мы называли это «конвейерным производством». Теперь Тойота называет это «потоком единичных изделий», возможно, потому что многие производители указывают на движущийся конвейер, на котором детали в очереди перемещаются между этапами обработки, и ошибочно утверждают: «У нас непрерывное производство, потому что все движется, ничего не стоит». Вероятность такого неправильного понимания снижается, если использовать фразу «поток единичных изделий».
Работа только над одним элементом Бэклога Продукта устраняет необходимость в координации незавершенных элементов. Вместо этого команда может в первую очередь работать над наименее зависимым элементом.
Команда непрерывно корректирует свою тактику в Рабочем плане, структурированном разработчиками. Члены команды объединяются и регулируют направление работы в ходе Ежедневного Скрама (Daily Scrum). Однако все корректировки происходят в рамках Цели Спринта, которая сама по себе является объединяющим моментом, который может направить поток команды. Марк Гиллетт, опытный исполнительный директор и технологический инвестор, отмечает: «Команды, которые ведут себя так, как будто есть ряд задач (и, возможно, их передач) для отдельных сотрудников, будут создавать меньшую ценность, чем те, кто понимает необходимость сотрудничества и сотрудничает, чтобы привести PBI к статусу “Готово”». Команда с тесной коллаборацией создает общее видение того, что представляет собой продукт, и способна гордиться продуктом и своими достижениями; см. Гордость за продукт (Product Pride).
Члены Скрам-сообщества также много лет говорят о Сворминге. См., например, работу Дэна Росторна (Dan Rawsthorne).
Инженерные практики Scrum Илья