Как овладеть небесами при помощи Agile?
Создание современных оборонных систем - одно из самых дорогих и самых сложных примеров разработки, проектирования и производства во всем мире. Совокупная стоимость всех военных закупок измеряется триллионами долларов и на протяжении десятилетий эти суммы продолжают расти. При разработке военных проектов рост расходов в сравнении с первоначальными оценками чаще всего вырастает более, чем на 60%. В результате, многие компании находятся в поиске новых подходов к работе, которые позволят контролировать расходы и при этом поставлять продукцию более высокого качества. Однажды один из производителей оборонных систем решил, что причина роста расходов не только в том, что именно он производит, но и в том, как организована разработка и производство сами по себе.

Saab AB — шведская авиастроительная и аэрокосмическая компания. Основана в 1937 году как Svenska Aeroplan Aktiebolaget. С 1947 по 1990 годы в её состав входил автопроизводитель Saab Automobile. Компания главным образом специализируется на разработке и производстве истребителей.
Так оборонные предприятия Saab начали применять процессы Agile для решения проблем в разработке как программных, так и аппаратных средств для производства нового боевого истребителя JAS 39E Saab Gripen.
Например, Saab Aeronautics уже несколько лет применяют различные подходы Agile к разработке, поставляя результаты быстрее, чем раньше, с более высоким качеством и значительно более низкой стоимостью, чем решения конкурентов.

Результаты Saab Agile
Для того, чтобы понять, как именно Saab переломили кривую постоянного роста расходов, которая уже стала отраслевым стандартом в оборонке, нужно вспомнить на пре-реквизиты Agile-подходов. При запуске программы разработки истребителей Gripen E с самого начала был заложен подход модульной архитектуры, как в части программного обеспечения, так и аппаратной составляющей, и это предоставило возможность применения гибких подходов к работе в будущем. Модульность же архитектуры позволяет создать модульную организационную структуру и подход к управлению. И, как мы помним, закон Конвея доказывает, что организационная структура неизменно влияет на структуры разрабатываемого продукта («Организации, проектирующие системы, ограничены дизайном, который копирует структуру коммуникаций в этой организации», Мелвин Конвей, 1967 г.). В Saab продукт полностью соответствует организации. Каждая команда отвечает за один или несколько модулей конечного продукта – истребителя. Такой подход позволяет вырастить внутри компании важнейшие качества, о которых шла речь ранее – ясность и приверженность.

Благодаря модульному проектированию и тому факту, что тестирование самолетов – весьма дорогостоящий и длительный по времени процесс, Saab сфокусировались на построении симуляторов, которые по праву можно назвать произведениями искусства. Эти симуляторы позволяли выстроить действительно короткие циклы обратной связи. Команды могли в любой момент проверить свое решение на действующих симуляторах.

В дополнение к виртуальным симуляторам, в Saab были и свои пилоты-испытатели, которые работали на той же производственной площадке в городке Линкопинге на юге Швеции, в которой находились все команды программы Gripen E. Это позволило выстроить постоянное взаимодействие команд разработки и пилотов, которые предоставляли обратную связь каждый спринт. Но это ни в коем случае не отменяло проверку гипотез с пилотами от клиентов Saab.

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

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

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

Благодаря практикам Agile в Saab смогли эффективно управлять неопределенностью и изменчивостью, и достигать результата более коротким и выгодным путем. Результат – производство истребителей с меньшей стоимостью, более высокой скоростью производства и более высоким уровнем качества.



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

В то время как предшественники Test-Driven Development (тестоориентированная разработка) и связанные с ней практики Agile, такие как кроссфункциональные команды, расположенные вместе на одной локации и объединенные одной общей целью с гибко изменяемыми приоритетами, использовались в разработке истребителей еще с 1960 года, современные практики Agile, такие как Scrum, его роли и диаграмма сгорания работ при разработке сложных систем были использованы впервые в SAAB Aeronautics.

Agile и Saab
Saab начал впервые использовать практики Agile в 2007 году, в процессе обновления предыдущего поколения истребителей Gripen. Сначала небольшие независимые внутренние команды разработчиков программного обеспечения для истребителя начали применять Scrum, выступая в роли тестового полигона для Agile. Строгий фреймворк Scrum стал основной адаптированного подхода Saab Agile и по мере своего распространения, он эволюционировал путем непрерывных последовательных улучшений. Основы Scrum все еще на месте, но отдельные элементы эволюционировали для того, чтобы предоставить командам возможность свободно интерпретировать и подгонять фреймворк к своим рабочим процессам.

В новейшей программе разработки истребителя Gripen E, практики Agile внедрены на каждый уровень управления и каждую функцию: разработка программного обеспечения, проектирование фюзеляжа и конструирование аппаратной части истребителя. Подход Saab Agile включает различные практики из фреймворков Lean, Scrum, Kanban, XP и других. При этом строгое исполнение практик не является обязательным. Отдельные команды и группы обладают определенной автономией при выборе практик для их зоны деятельности. Также разные команды имеют разную степень Agile-зрелости. Поэтому автономность команд является критически важным элементом подхода SAAB Agile, важно предоставлять командам свободу постоянно и инкрементально улучшать свои практики работы.

В Saab хорошо усвоили урок – приверженность и прозрачность в работе ведут к продуктивности и эффективности. Приверженность необходимы на личностном и командном уровне, приверженность проекту, процессу и друг к другу. Стоит помнить, что многие исследования показывают, что ключевые двигатели мотивации – это автономность, мастерство и приверженность цели. В Saab все принятие решений спущено вниз, на уровень команд, - настолько, насколько это возможно. Команды сильны как в процессе работы, так и в технических аспектах. Они – самоорганизованы, где это возможно реализовать, и адаптируют фреймворк работы локально у себя. Все принятие технических вопросов делегировано на уровень команд. В Saab реализована минимальная организационная иерархия и стремление постоянного увеличения уровня прозрачности деятельности каждого.

Ясное понимание цели – также критичный элемент трансформации видения проекта в конкретное действие. Каждая команда всегда должна понимать, что от них ожидается. Не «требуется», потому что такой подход сведет на нет креативную основу решения задач, приветствуемую в Saab, а именно «ожидается». Команды имеют полную ясность относительно истинных целей, но при этом имеют определенную степень свободы создавать свои собственные инновационные решения по достижению этих целей.

В компании, ориентированной на разработку продуктов для клиентов с применением подхода Agile, такая ясность и понимание приходят от обратной связи от клиентов, которая поступает на регулярной основе при поставке нового инкремента/релиза. Программа разработки истребителей Gripen E не имела такой широкий поток обратной связи от клиентов, так как клиентов у такого продукта не так много. Но обратная связь – крайне важна, поэтому заменителем клиентов выступали владельцы продуктов. Владельцы продуктов были ответственны за определение ценности в каждой отдельной новой функциональности и за работу со всеми заинтересованными сторонами проекта на различных уровнях менеджмента компании с целью постоянной приоритизации задач, выполняемых командой.

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

Управление неопределенностью

Разработка истребителя Gripen E – очень сложный проект с высокой степенью неопределенности, в составе которого трудится более 1000 инженеров, сгруппированных в более, чем 100 команд. Практики Scrum и Agile отлично подходят для такого проекта и дают большой набор инструментов для того, чтобы этой неопределенностью управлять. Полная прозрачность работы, присущая Scrum, позволяет выявлять появляющиеся расхождения быстро и на регулярно основе.

В Saab, все Agile-команды имеют общую ритмику работы. У всех команд длина спринта равна трем неделям и все они начинают и заканчивают спринты в один и то же день. Также в Saab отмечают несомненную пользу в синхронизациях за рамками одного спринта и для этих целей был разработан итерационный метод работы в квартальных циклах, называемый Инкременты.

Общий мастер-план проекта разбит на итерации. На самом верхнем уровне итерацией считается «Шаг разработки», полностью понятная и определенная функциональная цель для большого релиза, который обычно выпускается к определенному тестированию самолета. «Шаг разработки» синхронизирует задачи по нескольким дисциплинам одновременно: разработка корпуса самолета, установка аппаратной части, разработка всех систем, поддерживающие системы и так далее. Также он определяет, что важнее всего все команды должны достичь к последующему периоду тестовых полетов. «Шаг разработки» разделен на несколько Инкрементов, с входящими в них небольшими и более управляемыми функциональными и продуктовыми поставками. Один Инкремент разрабатывается в один квартал, который далее бьется на четыре 3-недельных Спринта.

Цели Инкрементов устанавливаются на каждый квартал. Эти цели ставятся по подходу «сверху-вниз и снизу-наверх». Функциональные цели декомпозированы до уровня каждой команды и перед тем, как подписаться под эти цели, команды прорабатывают все цели, составляют наброски планов на спринты и проверяют, достижимы ли поставленные цели или нет. В Saab действует структурированная система встреч, которые позволяют определить кросс-зависимости на командном уровне и подсветить их для всего проекта в целом. Эти встречи повторяются каждый трехнедельный спринт. В этот небольшой трехнедельный временной интервал все цели и зависимости обретают более детальный и проработанный вид.

Каждый Инкремент завершается детально определенной поставкой продукта, которая нужна для того, чтобы проверить продукт в реальной среде и подтвердить, что все идет по плану. Эти крупные релизы также тянут за собой ежеквартальные процессные улучшения. Но каждую неделю в течение всего квартала работы над Инкрементом выпускаются небольшие релизы для получения постоянной обратной связи от интеграций со смежными командами. Большинство проблем, которые возникают в разработке любого крупного продукта происходят именно на стадии интеграции. Тестируя интеграции в циклах, которые короче одного спринта, Saab имеет возможность выявления этих проблем на ранней стадии и успевает быстро совершить корректирующие действия.

Приоритизация

Такие регулярные циклы как Инкремент/квартал и 3-недельные спринты задают хороший темп всему производству. Определить, что должно быть сделано в конкретный ближайший временной интервал гораздо легче при использовании подходов Agile. И тут появляется еще одна критическая часть – приоритизация бэклога продукта просто потому, что объем задач на команду обычно больше командной пропускной способности. Приоритизация вносит некоторую ясность в то, за какую работу браться дальше и что считать наиболее ценными задачами для команды. Без выстроенной системы приоритизации возникают все проклятия крупных проектов: мультизадачность, незавершенная работа и никому не нужный стресс в команде. Командная эффективность и продуктивность сильно падают, равно как и снижается уровень приверженности проекту и команде.

В программе разработки истребителя Gripen E в качестве двигателя приоритизации на командном уровне отлично подходил Scrum. С одним отклонением от канона – на одного владельца продукта приходилась не одна Scrum-команда, а 4-8. Получалось что-то похожее на известный фреймворк масштабированного Scrum – LeSS (Large Scaled Scrum). Владельцы продуктов определяли приоритетные задачи в бэклоге продукта – отранжированном списке задач, которые необходимо сделать. При этом важно отметить, что это не подход к планированию «сверху-вниз», так как экспертиза и знания команды, а также ранее извлеченные уроки обязательно принимались к рассмотрению при приоритизации задач. Задачи, включенные в бэклог, дополнялись рисками, по которым было необходимо принять решения и процессные улучшения, которые нужно было произвести.

Амбициозной задачей владельцев продуктов было взятие на себя роли своеобразного интерфейса между топ-менеджментом и своими командами. Огромный пласт координационной работы было необходимо организовать в рамках всего проекта. Особенно, учитывая то, что к моменту командного планирования на будущий спринт в начале каждого из спринтов, бэклог должен был быть сформирован, все задачи, приоритеты и взаимозависимости со всеми проработаны и бэклог готов к немедленной работе над ним в команде. Команда должна четко понимать, что должно войти в поставку на конец спринта и должна начинать спринт с уверенностью. Владелец продукта всегда ответственен за поддержание ясности для своих команд в части того, какие есть пожелания у внутренних клиентов, но при этом он обязан пресекать «организационный шум», чтобы быть уверенным, что команда никем не введена в заблуждение и четко понимает, что должно быть сделано.

Стратегическое планирование

В Saab, в отличии от большинства примеров использования Agile, ключевым элементом успеха является строгое и четкое стратегическое планирование. Стратегический план, по сути, является живым ограничением для работы. Такое планирование заставляет команды постоянно визуализировать свои дорожные карты развития и демонстрировать, как они встраиваются в общий план. Такая визуализация – важный инструмент для коммуникации между владельцами продуктов. Однако, при этом стратегический план должен оставаться живым документом, чтобы иметь возможность вносить изменения, основанные на полученной обратной связи.

В реальности стратегическое планирование – это одна из самых ярких областей, где встречаются практики Agile и традиционное проектное управление. И важно не путать необходимость существования стратегического плана с микро-менеджментом и попытками детального составления диаграммы Гантта со всеми задачами на несколько лет вперед. Уровень детализации стратегического плана всегда зависит от временной перспективы. Текущий «Шаг разработки» всегда будет содержать больше деталей, чем будущие «Шаги».

Путем постоянного обучения и практики постоянно взаимодействующих друг с другом команд, будущие ключевые вехи становятся все более детализированы со временем и менее изменчивыми, особенно перед тем, как команды достигают соответствующие этим вехам «Шаг разработки». «Шаги разработки», как вы помните, делятся на квартальные Инкременты, а те, в свою очередь, на трехнедельные Спринты. За годы практики такого подхода в Saab выявили, что общее количество вех в проекте получается больше, чем при традиционном проектном управлении. И когда команды подходят вплотную к важной вехе, они аккуратно декомпозируют ее выполнение на управляемые, выполняемые и четкие элементы работы.

Непрерывные улучшения

Кайдзен, японская система непрерывного улучшения процессов, многие годы является краеугольным камнем бережливого производства (Lean). Saab стремится выстроить такой же постоянный и устойчивый системный подход к улучшениям, применяемый в разработке и конструкторском деле. К счастью, основой для постоянных улучшений является одна из ключевых практик Scrum – Ретроспективы.

Ретроспектива, проводящаяся в конце каждого спринта, предоставляет команде набор процессных улучшений, которые команда должна применить в своем грядущем спринте. На протяжении нескольких лет Saab экспериментировала с проведением ретроспектив для того, чтобы ретроспективы проходили не только на уровне команд. Так появилась межкомандная Ретроспектива Ретроспектив. Это масштабированная на более высокий уровень версия обычной ретроспективы, которая соединяет воедино обратную связь от команд, общие проблемы и их системные решения, а также проблемы лидерства и управления, которые возникали за прошедший спринт.

Оперативная обратная связь по процессу не менее важна, чем обратная связь по самому продукту. Многие команды и группы команд в Saab использовали отдельные канбан-доски для работы над препятствиями и улучшениями для того, чтобы сократить время получения обратной связи еще больше.
Made on
Tilda