Почему Agile популярен?

09ff5923ebb3b1f654180a0f82263899

В последнее время быстрыми темпами набирает популярность Agile, Scrum, Kanban, SAFe, LeSS и прочие гибкие «звери», о которых раньше, по крайней мере я, только слышал, и то в ключе «какой-то там». Сегодня попробую разобраться, почему же это становится настолько популярным, а кто-то говорит, что это вовсе становится мейнстримом. При этом я постараюсь обойти принципы Agile-манифеста и представить своё видение, почему именно они (это ведь и есть Agile, верно?) возымели такой успех.

Рост объёма информации и скорости роста технологий

Окружающий мир развился и продолжает развиваться непрерывно, на текущий момент уже в геометрической прогрессии. Если 1000 лет назад для изобретения новой технологии могли потребоваться десятки, а то и сотни лет, а чаще всего сроки были несоизмеримо больше человеческой жизни, то сегодня такие сроки по-прежнему несоизмеримо, но уже меньше по отношению к человеческой жизни.

Будущее уже наступило

Всё чаще и чаще мы слышим «Будущее уже наступило». Такая формулировка отсылает нас к срокам появления этого будущего: 5000 лет назад человек говорил «Будущее наступило» в момент изобретения колеса. Сегодня же мы это говорим относительно LLM (читай ИИ), развития различных космических миссий, медицинских прорывов и прочего-прочего. И если 5000 лет назад человеку было достаточно научиться пользоваться телегой с колёсами, то есть освоить новую технологию, и сделать это в течение 2–3 лет, а потом применять всю жизнь, то сегодня новую технологию может вытеснить другая в рамках декады, а то и раньше. Например MiniDisc был изобретён в 1992 году и вытеснен MP3-плеерами уже к середине нулевых, или смартфоны BlackBerry, имеющие клавиатуру, но быстро утративших актуальность после изобретения тачскринов. Примеров можно нагуглить массу.

Технологии порождают цепочку:

  1. Неопределённость: пользователи, а уж тем более создатели BlackBerry на старте могли ли подумать, что их продукт канет в лету, потому что появится настолько мощный аналог? Вряд ли. Тем не менее, это уже часть истории, которая учит нас, что нельзя не учитывать, вероятность вытеснения любой технологии. Кто-то уже играет в игры с чипом в голове.

  2. Необходимость сосредоточиться на технологиях и их применении: часто, особенно в IT, мы видим в списке требований к сотрудникам способность к быстрому обучению. И это связано не только с необходимостью быстро включиться в работу компании и освоить какие-либо локальные инструменты и процессы, но и с ростом технологий

  3. Информация: об использовании и применении всех вышеперечисленных инструментов, о том, как их улучшить и, конечно-же, как создавать свои на фоне возникающих новых, как грибы технологиях — мы ведь не только ими пользуемся, но и создаём, верно? Значит мы ещё должны и генерировать такую информацию сами.

Несмотря на любовь людей к стабильности, мы сами создаём этот мир, рождая противоречие: мало кто любит изменения, но все их создают друг для друга.

Необходимость создавать будущее

Как мы выяснили, технологии прорываются вперёд всё быстрей и быстрей. Есть теория технологической сингулярности. Человек, живший 5000 лет назад, увидев темпы жизни сегодня, сказал бы, что она уже наступила. Тем не менее, для нас это всё ещё теория. Мы же сегодня продолжаем гнать развитие всего семимильными шагами, а для бизнеса это значит, что нужны люди, которые могут держать этот темп, где-то увеличивать его, подстраиваться под новые реалии практически ежедневно, создавать новшества. И каким образом не сорваться в этой гонке обычному человеку? Особенно сильным может оказаться эффект неопределённости: в один момент владелец поймёт, что создаваемый сейчас продукт уже не являются будущим, а скорей прошлым. Это будет означать необходимость внесения изменений в стратегию, необходимость смены курса, порой на 180 градусов, отказ от старого и движению к новому. На текущий момент такой уровень гибкости, пожалуй, можно увидеть на примере Google или другие гиганты, и их способность «выкинуть» ненужное безо всяких сожалений. Но многие всё ещё не готовы к такому повороту событий.

Гонка за успехом

Бизнес хочет развиваться и быть эффективным. В определении термина «Бизнес» есть слово «Доход», а значит бизнесу выгодно получать больше с меньшими усилиями, и чем быстрее, тем лучше. Если нет дохода — это не бизнес. А доход приносит продукт или услуга, которые постоянно сменяют друг друга, тем самым создавае условие для любого предприятия: либо ты растёшь, либо это перестаёт быть бизнесом.

Как Agile помогает в такой ситуации?

Люди, которые участвуют во всём этом, а что же они? Они должны как-то управлять этой адской колесницей, которая мчит вперёд и вперёд, даже не думая останавливаться. И все мы прекрасно знаем, что такое выгорание и как больно выпадать на такой скорости из этого процесса. В какой-то момент человек или бизнес, любой участник, может и вовсе не успеть вернуться в прежний темп и проиграть гонку окончательно.

В этот момент и возникает вся «магия» и притягательность Agile-методологий:

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

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

Сотрудничество с заказчиком важнее согласования условий контракта: в ходе сотрудничества возникает возможность понять своего заказчика и предложить лучшее решение для его проблемы или запроса. Важно проявлять экспертизу в этом вопросе как исполнитель и уделять должное внимание этой экспертизе как заказчик. Это и есть сотрудничество

Готовность к изменениям важнее следования первоначальному плану: планы меняются. Мир меняется. Это данность, с которой нужно считаться и которую нельзя игнорировать. Возможно, некоторые изменения и не повлияют на общий план, но изменения вносить необходимо.

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

© Habrahabr.ru