Разработка современного программного обеспечения требует специального проектного управления. Существует масса методологий, помогающих организовать процесс работы.
В целом можно сказать, что написать [почти] любой код не сложно. Сложно понять, какой код нужно написать, и грамотно организовать этот процесс.
Считается, что есть два основных подхода — Ватерфол (Водопад) или каскадная модель, предполагающая жесткое и поэтапное решение проблемы. Почитать о нём можно здесь - Каскадная модель
И Аджайл, подразумевающий гибкий и постоянно меняющийся процесс разработки. Примерно на 60% аджайл в нашей стране — это Скрам-методология. (Почитать о ней можно, например здесь - Scrum,
Спойлер — в чистом виде ни та, ни другая методология в разработке сложных IT-систем не работает. Но… Скрам-методология не просто не работает, она еще и крайне деструктивна.
И прежде чем рассмотреть, почему она деструктивна, давайте посмотрим, какие есть IT-проекты.
Пять основных типов проектов
1. Простые проекты, с простыми задачами и почти полностью понятными требованиями.
Все настолько легко, что грамотная команда может реализовать такой проект с любой методологией или вообще без всякой методологии. Но, конечно, наиболее эффективно будет работать по ватерфолу.
2. Очень сложные проекты, с огромным количеством интеграций, большим количеством зависимостей, сложным функционалом, но более-менее качественно, полно и понятно описанными бизнес- и функциональными требованиями.
Это не значит, что каждая запятая должна быть досконально разобрана, обсуждена, согласована и описана. Достаточно, если есть эксперты, понимающие общую структуру проекта, архитектуру проекта, все крупные функциональные блоки, приоритизацию работ и доскональное понимание ближайшего плана работ на пару ходов вперед.
Достаточно редкий, к сожалению, тип проектов. Так как чем проект больше и сложнее, тем он больше содержит неопределенности. Но если такой проект находится, то он может быть реализован только по ватерфолу. Причем чем проект больше, тем больше он должен отходить от простого, линейного ватерфола и сдвигаться к гибридной итерационной форме ватерфола.
3. Простые проекты, с очень примитивными задачами, но… бизнес (здесь и далее под словом «бизнес» понимается коллектив бизнес-заказчиков для задачи) не понимает, что он хочет, а если ему кажется, что он понимает, то он не способен это адекватно изложить в требованиях, и их «требования» могут произвольно меняться несколько раз в ходе реализации проекта или даже одной задачи.
Примерно каждый первый (наверно) отдел маркетинга в крупных корпорациях состоит из сборища безголовых куриц, которые носятся по офису с криками «Хочу дождя», при этом вообще не понимая, что они на самом деле хотят. К сожалению, имел опыт работы с таким проектом. Это реальный трешь…
Я читал (и склонен с этим согласиться), что скрам был изначально придуман именно для решения проблемы по развитию корпоративных сайтов в ситуации, когда «творческие» личности постоянно вносят изменения в свои требования и их приоритизацию.
Без малейших сомнений, данный вид проектов имеет право на существование (Как говорится: «Иного бизнеса у меня для вас нет».) и может реализовываться только по Скрам-методологии. Только по более приземленной версии, крайне далекой от той, что расписывают инфоцыгане в скрам-гайдах. И нужно сказать, что это крайне депрессивный тип работы, заниматься которым могут только люди, которым абсолютно наплевать на свою работу и результаты. Сказали «Красим в синий цвет» — Покрасим. Сказали «Нет. Срочно перекрашиваем в зеленый». Пофиг, красим в зеленый. «Нет... давайте обратно в синий». Пофиг. Красим обратно в синий. Уважающий себя разработчик в таком режиме работать, конечно же, откажется.
4. Простые проекты, с очень простыми задачами, но… постоянно объективно изменяющимися требованиями к проекту.
Разница с третьим видом в том, что здесь изменения требований происходят не потому, что девочка-маркетолог не способна понять, чего она сегодня хочет, а по внешним независимым, объективным причинам. Рынок меняется, регуляторы чудачат, партнеры по интеграции все время меняют функционал и так далее. На самом деле, так как каждая задача по отдельности понятна и достаточно проста, то все это легко реализуется в рамках итерационного ватерфол-подхода. Но если будет вменяемая команда, привыкшая работать по скраму, — это тоже вполне допустимо. И в данном случае смена требований не является депрессивной. Возможность быстро отреагировать на объективное изменение требований — это предмет гордости для такой команды.
5. Очень сложные проекты, с огромным количеством интеграций, большим количеством зависимостей, сложным функционалом, но при этом основные бизнес-заказчики не понимают, что они должны требовать, чего от них добиваются топ-менеджеры, зачем весь этот цирк, и в целом нет людей (в компании или во вселенной), кто бы адекватно понимал, как весь процесс работает, что нужно автоматизировать и что нужно изменить.
Зачастую это усугубляется тем, что основная бизнес-идея, заложенная в проект, изначально является бредовой и нереализуемой.
Вишенкой на торте выступают инвесторы или топ-менеджеры, бегающие вокруг процесса с криками: «Давайте скорее дайте нам MVP (продукт с минимальной ценностью), чтобы опередить конкурентов, а уж потом будем думать».
Такой проект в принципе вообще не должен быть реализован, потому что, как известно, попытка автоматизации хаоса не приводит к автоматизированному порядку. В случае успеха она приводит к автоматизированному хаосу. Правильным действием в данном случае является привлечение команды бизнес-аналитиков-экспертов, которые попробуют понять цели, стоящие перед компанией, насколько они вменяемы и достижимы. И в случае их адекватности могут попробовать свести проект пятого типа к проекту второго типа. После чего проект может быть реализован по гибридной ватерфол-методологии.
К огромному сожалению, именно в проектах пятого типа проявляется огромный реальный вред от карго-культа наших топ-менеджеров. Ведь найти аналитиков экспертного уровня — крайне сложно. Можно нарваться на команду полупрофессионалов, которые будут красиво петь на презентациях, но после полугода-года работы дадут результат крайне низкого качества. Или как вариант, они окажутся реально экспертами и попробуют объяснить, что идеи, предложенные генеральным директором (девочкой, назначенной по причине того, что она любовница основного акционера), являются запредельно бредовыми. Это прям вообще недопустимый вариант работы экспертов.
И поэтому, когда инфоцыгане (Аджайл-коучи, то есть) рассказывают о том, что проблемы IT-департамента связаны исключительно с тем, что они не используют волшебную Скрам-методологию, — то им очень хочется верить.
И действительно существует четыре причины, почему топ-менеджеры обожают скрам.
Первая причина: Как раз потому, что менеджеры знают, что их бизнес — это сборище куриц. (Ну, с точки зрения IT-проекта, во всяком случае. Исключения бывают, и вполне можно встретить бизнес-менеджеров, которые прекрасно понимают, что и как нужно сделать (Настя — Привет!), но… это скорее исключения), и топ-менеджеры уже имеют печальный опыт попытки сделать какой-либо продукт с этим бизнесом как с заказчиком.
Но Топ-менеджеры знают, что других бизнес-сотрудников у него нет и не будет. Да — эти девушки и парни, возможно, не гении, у них, скорее всего, отсутствуют навыки критического и аналитического мышления, но в условиях узкой специализации каждый из них удовлетворительно, а иногда и блестяще справляется со своей основной работой. И поэтому существует вторая причина любви к скраму…
Вторая причина: Это как раз чистый и незамутненный карго-культ. Это когда топ-менеджеры проводят «Дейли-скрам-митинг» на 150 человек на два часа (коллега мне рассказывала о такой реальной ситуации), когда менеджер с умным видом спрашивает: «А вы точно на дейли-митинге задаете «Три Главных Вопроса»?». А почему вы называете «Демонстрация для бизнеса»? Обязательно нужно называть «Скрам Спринт Ревью».
То есть люди искренне верят, что если из фанеры и бамбука сделать самолет, то он принесет новую хорошо работающую CRM. Главное, чтобы он был сильно-сильно похож на самолет.
И как же не верить, когда вполне профессиональные инфоцыгане объясняют, что решением проблемы является современная, прогрессивная, западная («Западная» — понимать надо) методика, которая в разы лучше «совкового» ватерфола и позволяет успешно решить проблемы «слабой зрелости бизнес-заказчиков» (так вышеозначенная проблема с курицами называется на языке инфоцыган).
И это дает нам третью причину для любви.
Третья причина: Топ-менеджеры обожают успешный успех. И они обожают быть вовлеченными в процесс создания успешного успеха.
Что такое разработка по ватерфолу с точки зрения топ-менеджера? Как правило, это выглядит как череда сплошных проблем и неудач… Почему? А все очень просто… В любой компании проекты конкурируют между собой. Ну просто потому, что количество потенциальных проектов бесконечно (нет пределов совершенству), а количество ресурсов всегда конечно. И как следствие, люди, заинтересованные в инициации и успехе проекта, склонны на этапе планирования занижать трудоемкость, сложность и сроки проекта. Или по-другому, через фильтр проектных комитетов склонны проходить проекты, которые выглядят более простыми, чем они есть на самом деле. Это объективный процесс. В нем бывают исключения, но в целом средний запущенный ватерфол-проект всегда недооценен по сложности.
И поэтому проект через некоторое время будет вынесен на рассмотрение топ-менеджеров с каким-то набором оправданий и просьбой увеличить бюджет, ресурсы и сроки проекта. На самом деле, объективно это нормально. Мы можем установить срок проекта в три месяца, затем дважды сдвинуть его на месяц, и за пять месяцев завершить проект быстрее и с лучшим качеством, чем если бы изначально поставили срок в шесть месяцев. Команды в таком режиме работают более собранно и производительно, но…, как я уже сказал, для менеджеров это выглядит как плохая работа и постоянные провалы. И что самое для него неприятное, даже если он сам понимает, что ничего страшного в таком подходе нет, у него есть вышестоящие начальники, которым он вынужден докладывать о переносе сроков проекта, и он крайне не любит выглядеть бледно и оправдываться за свой «плохой контроль» ситуации.
В сравнении с этим — скрам дает топ-менеджерам иллюзию быстрой и успешной работы. Скрам-команда берет краткосрочные обязательства, которые заведомо более-менее реализуемы. При этом команда не имеет никаких мотиваций работать качественно, потому что некачественная работа сегодня станет проблемой относительно далекого будущего (год-два-три вперед), и, скорее всего, конкретные разработчики уже и не будут работать в этой компании. Но зато команда имеет массу причин и мотиваций работать быстро и демонстрировать качественную работу. Демонстрация качества и скорости достигается за счет своевременного формального выполнения требований о приемке задачи (Definition of Done). Чистый постмодерн — «Не быть, а казаться».
И только цифровой бог знает, сколько при этом дерьма и костылей остается под капотом системы. В скраме это называется специальным термином «технический долг». Как правило, этот долг затем копится до ситуации, когда разгрести его уже невозможно… но это потом. И понимают это только IT-специалисты.
И, как я сказал, внешне это выглядит как непрерывный «успешный успех», и топ-менеджер имеет возможность докладывать наверх о прекрасной работе команды, постоянной поставке «ценности» на продуктив и прочем счастье. Для простых проектов это в принципе прекрасно… Команда работает, задачи решаются, выглядит это крайне красиво. Ну а то, что при наличии хороших грамотных бизнес-заказчиков и аналитиков этого можно добиться, затрачивая намного меньше ресурсов, — так ты еще попробуй найти тех аналитиков…
Для сложных проектов все заканчивается гораздо хуже. После двух-трех лет скрам-сказка внезапно превращается в скрам-кошмар. Но пока музыка играет, все выглядит прекрасно… в том числе благодаря четвертой причине.
Четвертая причина: Скрам дает топ-менеджеру иллюзию управления процессом благодаря большому количеству метрик. Почти все они абсолютно ничего не измеряют, но их много, и они выглядят очень наукообразно.
Например — прекрасная метрика Time2market — время от начала разработки до выхода на рынок. О чем говорит метрика T2M, равная 90? Правильно, ни о чем. Ну, выводим мы в среднем за 90 дней идеи на рынок, ну и пусть. А о чем нам говорит изменение метрики в следующем квартале на 110? Правильно, опять ни о чем. А о чем нам говорит величина этой метрики, равная 80 у соседней команды? И снова правильно… снова ни о чем.
Почему? Потому что топ-менеджеры пытаются использовать эту метрику как показатель качества работы команды. Метрика стала больше, следовательно команда работает хуже. У другой команды метрика меньше, значит, они молодцы.
И это полный и незамутненный бред… Потому что на эту метрику влияют порядка десятка факторов (размер задач, текущий размер команды, приоритет задач, зависимости от других команд, сложность задач и т. д., т. д.), и качество или скорость работы команды — это только часть и не самая важная часть в расчете. Собрать все данные о влиянии всех факторов на изменение метрики просто невозможно. Как минимум, для этого пришлось бы несколько раз прогнать команду через машину времени, изменяя и измеряя влияние разных факторов. А без этого делать какие-либо выводы абсолютно бессмысленно. Но возможность задать вопрос «Почему изменилась метрика?» дает топ-менеджеру иллюзию влияния на процесс. Никто не знает, почему она изменилась, и какой она должна быть в этом квартале, и что нужно сделать, чтобы она стала другой. Для этого просто нет необходимых данных, но как приятно топорщить усы и строить команду за рост метрики.
Как следствие, топ-менеджеры обожают устраивать длительные оргии с командами, используя эти метрики в качестве секс-игрушек и получая от процесса реальный оргазм.
Как видно, все причины «любить» скрам являются абсолютно бестолковыми, и чем более бестолковый топ-менеджер, чем он меньше понимает в управлении проектами, — тем больше он склонен любить скрам.
Почему не работают чистый ватерфол и чистый скрам
Как сказано в начале, ватерфол чистый и незамутненный не работает.
И причины следующие… Реализовать функционал системы, как правило, не сложно; сложно реализовать нужный функционал. Но бизнес обычно не знает, что нужно сделать, или не понимает, что он хочет, или потребности меняются раньше, чем закончен проект. В ватерфол эту проблему пытаются решить упором на предварительную тотальную аналитику, стараясь на первом этапе проекта написать «Войну и мир» на тему того, что нужно сделать. Эти несколько томов текста называют техническим заданием, которое потом месяцами (а иногда и годами) перепинывают из отдела в отдел для согласования и доработки.
В какой-то момент это всем надоедает, и они отдают документ в разработку, при этом, как правило, документ сырой, содержит излишнюю детализацию и не всегда учитывает все потребности. И главное — он жесткий. На его основе сделан договор на реализацию, роадмапы, план-графики работ и прочее. Что-либо изменить в нем очень сложно. И главное , как правило, нет двух-трех людей, способных взять на себя ответственность и вовремя изменить разработку системы.
В результате спустя энное количество месяцев оказывается, что аналитика была сделана неправильно, требования устарели, бизнес «имел в виду совсем другое» и т. д. Мы получаем продукт с разной степенью пригодности и как правило требующий глубокой доработки.
Почему скрам не работает
Выше я рассказал, почему топ-менеджеры обожают скрам. Давайте теперь посмотрим, почему они должны ненавидеть скрам, почему скрам не работает.
1) Поверхностная аналитика.
И прежде всего это опять же проблема аналитики. Но если в ватерфол мы сталкиваемся с попыткой слишком жесткой, объемной и «далекой» аналитики (зачастую из-под палки и без реального понимания, что делать), то в скраме мы получаем принципиальную ориентацию на решение краткосрочных и фрагментарных задач (так называемые юзер-стори) без глубокого понимания проекта и требуемой архитектуры в целом. Периодические поставки функционала в минимальном объеме помогают проверке гипотез и помогают бизнесу понять, что он хочет, но на длинной дистанции (в сложных проектах) это скорее мешает.
2) Развитие через MVP продукт.
В книгах по аджайлу очень любят приводить картинки, сравнивая ватерфол и аджайл и показывая, какой классный скрам, как он здорово позволяет уже на ранних этапах разработки «пользоваться велосипедом», а потом сделать «прекрасный автомобиль».

На самом деле, эта картинка выглядит убедительной только для людей, которые совершенно не разбираются в процессе создания сложных IT-систем. Это так НЕ РАБОТАЕТ. Невозможно в системе сначала написать код под примитивную функциональность, а затем на его основе написать более сложную функциональность.
В какой-то период, вы действительно будете пользоваться вполне приличным велосипедом, но в результате вы получите не автомобиль, а трехколесный пепелац с рамой от мотоцикла, колесами от москвича и кузовом от садовой тачки. И все это будет держаться вместе за счет многих километров «синей изоленты».
3) Отсутствие документации
Честно говоря, неактуальность документации — это проблема почти любого сложного проекта. Но в скраме неважность документации ставится как один из основных принципов. С учетом постоянной нехватки времени (всегда ведь «цигель, цигель, скоро демо») написание внятной документации откладывается в технический долг и почти никогда не реализуется. Как следствие, уход ключевых специалистов из команды может оказаться катастрофическим, так как никто не знает, как это все работает и какие костыли напихал под капот ушедший разработчик.
4) Слабая управляемость команды
Команда может самоуправляться в ситуации, когда она состоит из высококлассных фуллстек-специалистов, каждый из которых может взять и полностью реализовать какую-либо задачу. Собрать такую скрам-команду запредельно сложно и дорого.
Чаще набирают или слабых фуллстек-специалистов, или обычную команду из специалистов разного профиля и уровня.
В ситуации, когда команда состоит из слабых специалистов, им не хватает опыта, знаний и навыков, чтобы «самоуправляться» и обеспечивать разработку с высокой скоростью и качеством.
В ситуации с обычной командой, она не может самоуправляться, так как роли каждого члена команды слишком отличаются. В такой команде должен быть квалифицированный режиссер, понимающий, кто, что, в какой последовательности должен делать, чтобы добиться хорошего результата и максимальной загрузки конвейера разработки. Это отдельная роль, отдельные навыки и, скажем, фронт-разработчик, как бы он не был хорош, не может квалифицированно управлять распределением задач. И голосованием (самоуправлением) такие функции так же не реализовываются.
Но в скраме нет руководителя команды. Есть некий скрам-мастер, который фасилитирует (до чего мерзкое слово) переговорный процесс внутри команды и между командой и бизнесом.
В результате в классическом скраме в команде никто не готов, не хочет и не может брать на себя ответственность за принятие серьезных решений, и даже текущая разработка ведется в режиме постоянного хаоса.
5) Непроизводительные потери времени
По требованиям скрама, вся команда должна присутствовать на планировании спринта, на демо (ревью) спринта, на грумингах и т. д. Это вроде как дает нам самоуправление команды. В простых проектах, это приемлемо.
Но в сложных проектах, это как минимум приводит к постоянным колоссальным потерям времени. Если нужно провести встречу с другой командой для определения возможного способа решения проблемы (например, вариант интеграции), от скрам-команды на эту встречу припрется не меньше половины команды. Ведь руководителя нет, решение должна принимать команда целиком, следовательно, все должны поучаствовать в обсуждении. Мало того, так как никто из скрам-команды не хочет брать на себя единоличную ответственность (им же никому за это не доплачивают), то на всякий случай они еще и позовут всех представителей от бизнеса, которые хотя бы как-то и чуть-чуть имеют отношения к обсуждаемой проблеме. В результате абсолютно нормально вместо группы из пяти-семи человек собирать онлайн-встречи на двадцать, тридцать и даже пятьдесят человек. (Не шутка, сам постоянно приходил в изумление, когда меня раз за разом приглашали на такие встречи наши скрам-коллеги).
А если еще добавить, что согласно учению скрама, вся команда должна тратить не менее 10% времени на проведение ритуальных скрам-мероприятий (планирование, ревью, ретро, дейли), то совершенно непонятно, когда разработчики команды могут работать. Собственно, они почти и не работают.
6) Заточенность на демонстрацию вместо реальности.
Как следствие, все вышесказанное приводит к тому, что команда не имеет возможности делать качественный, продуманный, оттестированный код. Но есть и хорошая новость: никто это от команды и не требует. Команда обязана в жестко обозначенный срок (окончание спринта двигать нельзя) продемонстрировать бизнесу, что они «достигли цели спринта», вывели на продуктив ценность (именно в таких терминах), и эта, прости господи, «ценность» внешне соответствует немногим заранее определенным параметрам приемки.
В результате скрам-команда…
- Во-первых, категорически отказываются делать что-либо, не входящее в их текущий спринт, даже если это действие обеспечит экономию сотен и тысяч часов на следующих этапах. У них на это всегда один ответ: «Нее… У нас спринт, у нас демо через три недели, у нас цигель, цигель, ай люлю… мы не можем об этом сейчас думать». В моей практике это, в частности, пару раз привело к тому, что коллеги вместо того, чтобы потратить сотню часов на ранней стадии проекта, потратили около двух-четырех тысяч часов на переделку на более позднем этапе. И это еще хороший вариант; в некоторых ситуациях последующая переделка уже просто невозможна. Но девиз «Мы подумаем об этом завтра» кажется наколотым на груди каждого истинного скрам-разработчика.
- Во-вторых, все, что под капотом скрам-разработки, — это, как правило, костыли, фекалии и солома. Так как требуется только показать, что программа работает в минимальном варианте, и показать срочно, то используются все способы упрощения жизни сегодня. Разумеется, что, как правило, это в ущерб жизни завтра.
Это весьма красочно описано, например, в этой статье - Почему «мы потом перепишем» — это самая дорогая ложь?.
Почему скрам деструктивнее ватерфола
Почему я считаю скрам более деструктивным, чем, например, ватерфол с плохими аналитиками? Как раз по причине того, что скрам очень долго выглядит успешным. Если вы начнете делать ватерфол-проект с плохой аналитикой, скорее всего, это станет понятно достаточно быстро, и команду усилят, и будут менять, до тех пор, пока не получат приемлемый результат. Это сложно в рамках жесткого ватерфола, но все таки инструменты для этого существуют. Кроме того, если ватерфол-проект построен на грамотном архитектурном фундаменте, то его всегда можно потом поправить и доработать. В конце концов, можно и несколько костылей в него потом воткнуть. И это действительно будет работать.
Но в скраме могут несколько лет вливать миллиарды в проект, докладывая о его прекрасной реализации, только затем, чтобы потом увидеть, что, собственно, ничего, кроме костылей, там нет, и дальше внесение любых изменений и дополнений стоит запредельно дорого. Экспоненциальный рост сложности разработки - фактически перекрывает возможность на развитие и поддержание системы.
Какая альтернатива?
Аналитика, аналитика и еще раз аналитика.
Забудьте про скрам, забудьте про подход «Мы подумаем об этом завтра», «Мы потом все перепишем», «Нам нужна быстрая поставка ценности».
Что делать:
Если вы на старте проекта не понимаете, что вы будете делать, — не делайте ничего. Начните предпроектную работу, соберите нормальных бизнес-аналитиков и архитекторов.
Поймите, что вы хотите добиться (но не пишите многотомные подробные технические задания);
сделайте архитектуру системы «на вырост» с учетом всех будущих добавлений и развития;
делайте много «лишней» работы, никогда не говорите «Мы подумаем об этом завтра»;
стройте структуры данных и интеграции с полями, которые вам понадобятся «завтра»;
постройте план реализации всего проекта на годы вперед, но при этом степень детализации и глубина анализа должны плавно меняться: от максимальной на ближайшие полгода до поверхностной на период двух-трех лет.
не заставляйте команду любыми усилиями изображать (демонстрировать) успешную работу к определенному сроку (в пределах разумного, конечно), то есть не заставляйте команду строить систему на костылях;
Не ставьте количество найденных ошибок как метрику качества работы команды. Менеджеры это очень любят, так как это дает им очередную иллюзию управления процессом. На практике это приводит к тому, что команда теряет мотивацию к поиску ошибок (и их исправлению), и они копятся в коде системы. Метрикой может являться количество блокирующих ошибок, выявленных на продуктивной среде. Вот эта метрика должна стремиться к нулю, и так как ее выявление не зависит от команды, она не влияет на их будущую мотивацию.
Работайте двух-трех-шести месячными итерационными циклами, по завершении которых команда аналитиков, архитекторов и заказчиков должна собираться, переоценивать приоритизацию всех будущих задач, при необходимости вносить изменения в общий план работ, формировать план на ближайший период и работать далее.
В комментариях, конечно, появятся люди, которые скажут, что я не прав, и они лично видели успешно реализуемые скрам-проекты.
И я, конечно, в это верю. Я искренне верю, что где-то на просторах бесконечной вселенной существуют команды скрам-гениев, которые идеально реализуют сложный IT-проект. Я лично такое не встречал, но в конце концов, вселенная же бесконечна…
К сожалению, все остальные «успешные» скрам-проекты попадают в три категории:
1. Простые, примитивные (и не путайте "длительность" и "сложность") проекты, которые успешны несмотря на то, что делаются по Скрам-методологии. Это вполне нормально и ожидаемо. В некоторых случаях даже необходимо;
2. Так называемые «гибридные» скрам-проекты. И их довольно много. Это ситуация, в которой команда и реальный руководитель вполне осознанно работают по обычной итерационной ватерфол-методологии, но при этом для руководства демонстрируют все внешние признаки скрама (команда измеряет метрики, проводит скрам-события, делает поставки на продуктив через регулярные промежутки времени, называя это спринтами и т. д.). То есть для топ-менеджеров на краю поляны строят самолет по дендрофекальной технологии, а за ним команда спокойно работает над проектом. Успешность таких проектов (как и любых других) в большой степени зависит от качества аналитиков в проекте. Проблема только в том, что изображение скрама для руководства, само по себе требует затрат времени и ресурсов;
3. Ну и наличие третьей категории «успешных» скрам-проектов связано с тем, что почти любой скрам-проект выглядит успешным — ровно до того момента, когда он рассыпается под грузом непродуманных архитектурных решений, накопленных костылей и ошибок. Если ваш проект выглядит успешным и его реализуют грамотные аджайл-коучи прям по священным текстам скрама, значит, этот проект временно находится в стадии «успешного успеха».
Топ-топ-менеджерам компаний стоило бы с прищуром (как через прицел) посмотреть на своих IT-топ-менеджеров, и если они чего-то блеют про аджайл-трансформацию, внедрение святого скрама и поиск высокооплачиваемых жрецов аджайл-коучей, — то нужно взять палку и гнать этих менеджеров к чертям. А вместо них набрать тех, кто говорит о поиске высококлассных (и дорогих) бизнес-экспертов, бизнес-аналитиков и толковых руководителей проектов.
Вывод:
Скрам - прекрасная узкоспециализированная методология, предназначенная для разработки простых, примитивных проектов (с бюджетом до 30 миллионов в год) в ситуации, когда бизнес-заказчики не способны оперировать аналитическими концепциями более сложными, чем юзер-стори.
К сожалению, низкоквалифицированные топ-менеджеры относятся к скраму как к карго-культу и пытаются с его помощью реализовать сложные проекты (с бюджетом в сотни миллионов и даже миллиарды в год). В лучшем случае это приводит к получению работающего продукта со стоимостью в два-три раза выше, чем при разработке по нормальной итерационной ватерфол методологии. В худшем, и довольно часто, получают плохо работающий продукт, также с завышенной стоимостью разработки, но еще и без возможности дальнейшего развития и доработки.
2025, Станислав Безгин


Комментарии
категорически согласен с тезисом ! статью не стал изучать подробно, так как с заголовком полностью согласен !!
Вообще надо различать оригинальный скрам, и тот что продают на курсах менеджеров. Вот второй да, рождает нездоровые ожидания.
Во первых не существует "оригинаьного" скрама. Даже то что было написано на заре появления идеи, уже несколько раз переписали сами авторы.
Ну и в реальном мире мы сталкиваемся не с идеальным скрамом, а с вполне реальным карго культом сделанным на его тематике и продвигаемой аджайл коучами
Много букв.
И вообще скрум не противостоит ватефлоу. Последний об управлении вещами(сущностями), а первый про людей.
Вы не читали статью. Их не противопоставляют.
Мы читали
Чтой-то мне подсказывает, что тут не помешает расширить базу подбора.
Ибо озвученная постановка вопроса подобна противопоставлению капитализма и социализма.
Ватерфол тоже может быть с уменьшенным жизненным циклом, в том числе и двухнедельным. Называется итеративной разработкой. И даже такой термин есть в ГОСТ 57193—2016
Применил подход агиле – сам в говне, проект в могиле
Однозначно - ДА !
Вот эту статью и надо давать менеджерам, прежде чем они полезут со своим свиным рылом в калашный ряд.
Можно подумать, после этой статьи они не полезут.
Скорее, просто не будут читать, ибо "многабукафф".
Большинство из них читать не умеет текст, длиннее 200 символов. Зато говорить они могут бесконечно
Долбо%;№%; и инфантилизм - вот что разрушает местное ИТ, включая некомпетентных людей на руководящих позициях. Казалось бы, не должно быть такого, а оно есть. Люди не умеют строить причинно следственные связи. Не понимают что и для чего нужно. Завышенное самомнение и нежелание слушать других.
ИТ - эта та отрасль, в которой много чего гипертрофировано. Причем значимость и весомость высасывается из пальца.
Не имеет значение какой подход в управлении проектом применять, если нет понимания вообще что и как делать
отименно что
потому и сама статья суть пустопорожнее инфо-цыганство
все эти аджайлы-уотерфолы это как выбор между дробовиком и винтовкой для для подготовленного пехотинца, а вот неподготовленному без разницы, он всё равно сначала отстрелит голову ближнему, потом выстрелит себе в ногу, после чего сломает дробовик, заклинит винтовку, а патроны
проепотеряетно никто не хочет начинать с бега по утрам 3 км и физ.зарядки, все бл хотят Самозарядный Аджайл с Серебряными Пулями
ну что ж пусть дерзают, но помнят, что тот, кто учится плохо или не тому, тот переходит в разряд добычи, а тот же, кто не учится вовсе, тот просто корм
Лучше пусть будет велосипед с изолентой, чем автомобиль, оставшийся в мечтах.
Пусть лучше вообще ничего не будет. У нас внедрили хрень, где умудрились обосраться сразу по двум позициям - оно хрен знает как и для чего сделано во первых, и сделано через жопу во вторых. Как итог сменный техник кроме бумажного журнала должен вести "электронный". Сначала он делает запись "принял смену" и тут же - "сдал смену", а потом каждый час жамкает мышкой "подтвердить". Бывает, 12-ти часов не хватает, чтоб "подтвердить" и эта почётная обязанность переходит следующему сменному. Но никто из Московского и Питерского руководства не может сказать "Мы обосрались!" и эта мастурбация продолжается уже не первый год. "Электронный журнал сменного инженера" - лишь одна маленькая часть этого грандиозного говноподелия. Я отказался получать учётку в этой эпидерсии и как либо с ней работать. Чтоб их всех транклюкировало...
Проблема решается проще и радикальнее.
Но другим образом:
Всё молчаливо подтверждающее нормальность ИС рукой.водство принудительно переводится на должности сменныъ инженеров.
С личным пользованием данной замечательной ИС.
На весь проектный срок службы.
В нормальном скраме вы бы получили через пару тройку интеграций исправления косяков.
В вашем случае больше похоже на фикс прайс - купили что-то за имеющиеся деньги, акты подписали и теперь пользователи ебутся с тем что заказал ваш заказчик. С ватерфолом шанс получить ровно такой результат я бы оценивал в 75+%
Пусть лучше будет автомобиль.
Потому, что по скраму никто не останавливается на этапе велосипеда, да он никому и не нужен. А дальше это превращается в монстра, который невозможно поддерживать и развивать.
Монстра выкинуть, начать сначала с ключевых моментов, требующих автоматизации. Так снова будет этап работоспособности и пока это всё снова обрастёт говном пройдёт немало времени.
Водопад же в это время так и останется в мечтах.
Вопрос разобран 7 лет назад :) https://aftershock.news/?q=node/594674
Камрад, отличный текст. От упоминания "отцов" скупая мужская слеза скатилась по небритой щеке ...
Прошло 7 лет, а на сколько лучше воспринимает Ваш текст.
Вопрос: это стиль у Вас и автора текущей статьи так отличается или на столько усугубилась ситуация с русским языком в этой сфере?
Ведь, по большому счёту, новых терминов за последние 20 лет не появилось, но в статьях сразу заметно: аджайл/гибкий (или agile, что, на мой взгляд лучше чем "айджал"), ватерфол/водопад, фуллстек-специалист/широкий специалист, всякие "ревью"/перекрёстное рецензирование (peer review) и т.д. и т.п..
По мне, так повальное написание русскими буквами английских слов, а не их русских аналогов (а если их нет, то просто английскими буквами) - это тоже своего рода карго-культ у автора.
Насколько знаю, ни в "классических", ни в "гибких" методологиях за это время никаких прорывов не случилось. Только знающих классические практики всё меньше, и задор рекламирующих гибкие практики всё глуше. А ситуация с русским языком меняется везде; в этой сфере, наверное, в меньшей степени, поскольку всё замерло.
"Пастернака не читал, но осуждаю" ©
В приведённой цитате - либо прямая ложь либо агрессивное профанство. Выбирайте по вкусу, и не говорите на языках, продолжения которых не знаете - глупо выглядите.
Полностью согласен.
самое забавное, что эта методология весьма активно продвигалась для госпредприятий
Вы уверены в прошедшем времени?
Всех лоббистов идентифицировали?
И поручили забесплатно (с бонусом в виде неприменения «25, до встречи») исправлять навороченнное?..
Ну, как я понял, а понял я немного, в одном случае наличествует попытка достижения конкретной, заявленной цели, а в другом - запуск процесса, самоценного для запускающих и исполняющих...
Якобы, где-то в районе конца 60х годов на международной конференции по кибернетике Норберт Винер в кулуарной беседе с советскими учеными-участниками в ответ на их тезис - "А вы не согласны, что ввиду изначальной плановости экономики СССР именно у нас будут внедрены в практику основы и принципы кибернетики!?" - ответил: "сомневаюсь, так как бардак невозможно автоматизировать"
.
В начале-конце "00" в качестве "стороннего наблюдателя"+эксперта-юриста участвовал (вернее - "наблюдал" и с сарказмом публично комментировал - в основном для руководства) попытку автоматизировать процесс бюджетирования в финансово-промышленном холдинге. Процесс изначально был обречен на провал:
во-первых, источником бардака был ТОП-менеджмент (вернее - "самый главный" - он же собственник);
во-вторых, имелся уникальный специалист, которая (управленец среднего звена) "рулила" бюджетированием в ручном режиме, каким-то (непонятным для меня образом) приводила бюджетный процесс в работоспособный режим. И у собственника всегда был выбор: оставить "как есть" работающий режим; или рисковать с "автоматизацией".
Мне удалось на первом же совещании "пробить" идею (утверждена собственником), что перед тем, как автоматизировать процесс бюджетирования, необходимо разработать Положение о бюджетировании с детализацией всех процессов-процедур (после чего программисты будут "программировать").
А далее изгалялся над попытками финансистов сочинить процедуру. На одном из совещаний в ответ на вопрос собственника - где мои замечания, ответил: так я же месяц назад финдиректору их передал. На что финдиректор на немой вопрос собственника ответила: Я на хамские записки Кузнецова не отвечаю. Но тут ей пришлось пытаться что-то отвечать на конкретные замечания. И сама себя выставила на посмешище.
Видел аналогичное в крупной горно-химической корпораци в области управления ремонтом оборудования. Процесс не описали, но автоматизировали. Разумеется - ремперсонал вывели на аутсорс, для лучшей наглядности и управляемости этими дармоедами. Написали техкарты с нормами трудоемкости, расхода материалов, использования техники, и завели в систему. Создали службу заказчика.
В результате чего для получения премии подрядчикам - надо было выполнять план на 150-300% по выработке на одного работягу. И ведь выполняли же. И всех всё устраивало.
Разумеется - приписки. Разумеется в компутере было написано одно, а выполняли другое. Заказчик и исполнитель договаривались взаимовыгодно. Чтобы техпроцесс не встал (заинтересован заказчик), и работяги деньги получили и не разбежались (заинтересован - исполнитель).
Зато красиво.
хорошая статья.
хочу только добавить, что на мой взгляд это неосновная проблема. в ИТ, в области разработки.
я нормально поставленную разработку я видел в конце 90х на металлургическом, и потом в нефтесервисе.
а сейчас, вот буквально в этом году, что я наблюдал у бывших сотрудников, ушедших в разработку
- ещё вчера секретарша и помощница тимлида, подававшая ему кофе и носовые платочки, сегодня рулит разработчиками в микрокомандах с опытом в 15 лет.
- разработчик пишущий говнокод и откладывающий решение части вопросов на потом, или перекидывающий их на других разработчиков, показывает прекрасные формальные результаты, пишет быстро и много кода. ещё всех шпыняет, что у них проблемы, за пару лет становится сеньором.
- некомпетентный разраб, но лояльный тимлиду постоянно ему поддакивающий и со всем соглашающийся, сам становится тимлидом, когда тот уходит на повышение. Хотя просто некомпетентен не то чтобы тимлидом быть, а даже разработчиком.
- разработчику спускают непонятные метрики по контролю за своей работой, и инструкции какими инструментами надо пользоваться, а также что помимо разработки надо ещё сделать на работе, потому что надо.
всё это, как и другие проблемы в разработке от одной простой вещи происходит - некомпетентность. А остальное, это уже следствия и производные.
на бумаге и в теории все эти ватерфалы и агиле просто прекрасны и красивы.
а в жизни у всех сроки, некомпетентные в теме топменеджеры, зачастую такие же некомпетентные ит-менеджеры, не самые компетентные соратники разработчики, совместную работу с которыми сложно назвать командной. и самое весёлое - монструозные системы с кучей дикого кода. и всё это бурлит, действительно бурлит.
и даже у человека которые хочет делать всё правильно со временем опускаются руки бороться со всем этим, и он просто адаптируется
что я и наблюдал несколько раз.
Самое несмешное тут в том, что мутные «метрики» вести должен сам разработчик.
В формате неоплачиваемой переработки…
так и есть, меритократия не работает, идиоты рулят. Скрам или вотерфол - обосраться можно с любым, примеров в практике хватает.
Лишь бы зарплату платили и угодить начальству - делают любой идиотизм , доводят проект до помойки и тадам вовремя спрыгивают. Ведь они полны сил и работали не перенапрягаясь
Не более, чем очередной холивар.
Каждый подход имеет свои плюсы и минусы. И каждый поход нужно применять по назначению, а не пытаться молотком шурупы заколачивать.
Ну не скажите. Шуруп забитый молоком, всё-таки, держится лучше, чем гвоздь завинченный отвёрткой
Адназначно!
Сам недавно перешел из команды с вотерфолом в команду со скрамом. Спасите меня обратно! Но нет такого пути. Жизнь - боль
Для разработки большой системы с нуля, скрам - зло. Но если надо заточить "коробочную" версию системы под заказчика - самое оно. Когда уже есть базовая архитектура и нужно обвешать её всякими полезностями.
Именно эту мысль я в статье и вырадал.
Для простых проектов, особенно тех где урхитектура уже заложена, скрам приемлем. Хотя аджайл это не только скрам.
Как по мне так грамотная команда с канбаном и итерационным подходом будет работать эффективней.
Но не суть.
А проблема в том, что на скраме пытаются делать систему уровня CRM|ERP крупной корпорации.
Вы рассказываете команде о своих проблемах на ретро?
Но и не менее!
Я вот как раз небольшой ИТ-бизнес, работаем только по гибкой методология. Но! Ядро профессионалов давно сработалось, и берет задачи с полуслова, не выжидая какое-то громадное ТЗ. Так вот можно, когда всем интересно. А разводить эту бодягу в банках, например... Ну, такое. Зато мы все молоды, веселы, энергичны, и команда
даже не уверен, что у вас правоверный скрам.
А то что работать надо по какой либо версии аджайла - включаю нормальный итерационный ватерфол, то это всем практикам очевидно
А какие вы видите плохие отличия скрама от итерационного ватерфола с циклом в 2-4 недели?
Отличная статья, как говориться ни убавить ни добавить..
Сам немало работал на этом чертовом "Сраме" в качестве разработчика, в частности на Аджайле - это тупая дебильная потогонка, когда ты не работаешь а постоянно борешься с совершенно идиотскими дедлайнами созданными на ровном месте и просто вынужден делать все на костылях и максимально в духе - "тяп-ляп и в продакшен", потому что времени на нормальную вдумчивую работу у тебя просто нет, тебе надо обязательно успеть к следующему демо и сговнякать что-то кривое, но удовлетворяющее всем требованиям к демо, это обычная практика. И в итоге да, весь проект вырастает в уродливого Франкенштейна из говна, палок и километров изоленты, скрепляющей все это "великолепие".
Все как у "заставь дурака Богу молиться" - тоже спрашивал, ведь знаем же общий план развития, почему не заложить скелет сразу а не идти наощупь как будто не знаем куда идем.
В IT много идиотов. Это ограничение нельзя обойти - пара процентов в популяции способны думать хорошо. Как только сфера деятельности расширяется, в нее засасывает карьеристов и все, приехали.
Однако ключ к проблеме в подавлении формирующего подбора.
Вы можете быть сколько угодно умным, и знать план развития как таблицу умножения, но вам скажут на все это - заткнись и херач задачи из спринта. Разработчик в этой секте имеет уровень свободы как у рабочего на конвейере - ты просто крутишь гайки, и конвейер время от времени переключают на повышенную скорость.
А все эти разговоры про то что "у вас срам неправильный" я слышу уже далеко не первый раз, почему-то он ни у кого не правильный, возникает подозрение что его и вовсе в природе не встречается, правильного, слишком уж многое должно идеально сложиться что-бы он был таковым.
Именно. проблема в том, что менеджеры и команды вынуждены работать в таком варианте, так как по другому работать в скраме просто не возможно.
В реальной разработке.
Во многом согласен с автором, скрам во многих случаях фуфло.
Но водопад тогда не просто фуфло, а фуфлищеее.
В моём опыте уже не один проект проектирования больших систем, длительностью более года, результатом которых только центнеры макулатуры (буквально центнеры, не фигурально) и ничего более. Проект завершается, макулатура где-то складируется, приходят новые люди и всё по новой.
У скрама как методологии есть одно неоспоримое преимущество: какая никакая но предсказуемость сроков реализации инкремента продукта. Безусловно достоверность этого сильно зависит от конкретного проекта и команды, но тем не менее. В водопаде нет и этого.
И как следствие скрам позволяет видеть проблемы сильно заранее и вовремя остановить проект, сохранив при этом немалую часть бюджета.
Собственно, для этого он и нужен менеджменту: иметь представление о том, в какой точке находимся, сколько времени еще требуется и сколько денег.
А вообще, имхо конечно, все проблемы не от методологии управления проектами, не от "куриц" от бизнеса, а от того, что из-за всеобщего недоверия и желания налюбить ближнего заказчик хочет делать проекты за фикс-прайс, хотя лучше для него же было бы за "тайм-материал"
Не совсем так, у вас иллюзии переплетаются с реальностью.
Благодаря быстрому выпуску MVP вы можете увидеть проблемы текущей версии продукта и начать его перестраивать. Но это реально справедливо только для продуктов, которые прямо ориентированы на конечных потребителей (и чаще всего достаточно простые), по которым можно быстро собрать фокус-группу и получить обратную связь от этих конечных потребителей. Для сложных корпоративных систем это обычно ни разу не так, т.к. чтобы сделать MVP, надо сделать 60% работы. Прикол в том, что когда эти 60% сделаны, то в 90% случаев никто из менеджмента, включая ГД, не будет готов отказаться от дотачивания продукта. Случаи закрытия проектов в корпоративной среде на стадии MVP - ну мягко говоря не очень значительны.
И нет, в рамках скрама вам никто из команды не скажет, сколько еще потребуется денег и времени для завершения проекта, т.к. у вас нет зачастую даже образа финального результата, не то, что детально проработанной аналитики.
Аджайл методологии как раз хорошо работают в случаях, когда (а) у нас нет образа результата, мы его реально не знаем и проверяем кучу гипотез (б) у нас уже есть продукт и мы его итеративно дотачиваем, т.е. мы находимся в процессе развития, а сами фичи могут укладываться в спринты +- адекватные.
З.Ы. Фикс-прайс возможен ТОЛЬКО в ватерфольных проектах. Если кто-то подписывается под фикс с аджайлом - то он самоубийца.
Страницы