Я большой поклонник гибкой разработки и несколько лет назад использовал XP в очень успешном проекте. Мне понравилось все в этом, итеративный подход к разработке, написание кода вокруг теста, парное программирование, наличие клиента на месте, чтобы он мог управлять всем. Это была очень продуктивная рабочая среда, и я никогда не чувствовал, что на меня оказывается давление.
Однако последние несколько мест, где я работал, используют / использовали Scrum. Я знаю, что в наши дни это плакат для развития гибкой разработки, но я не уверен на 100%, что она гибкая. Ниже приведены две основные причины, по которым мне это не нравится.
Менеджеры проектов любят это
Руководители проектов, которые по своей природе одержимы временными рамками, похоже, все любят Scrum. По моему опыту, они, кажется, используют Журнал ожидания спринта как средство для отслеживания требований к времени и учета того, сколько времени было потрачено на выполнение определенной задачи. Вместо того, чтобы использовать доску, все они используют лист Excel, который каждый разработчик должен заполнять, неукоснительно.
На мой взгляд, это слишком много документации / отслеживание времени для гибкого процесса. Зачем мне тратить время на оценку того, сколько времени займет у меня задание, когда я смогу просто выполнить само задание. Или так же, зачем мне тратить время на документирование того, сколько времени заняла задача, когда я могу перейти к следующей задаче?
Standup Meetings
Стендовые встречи в предыдущем месте, где я работал, были кошмаром. Каждый день нам приходилось объяснять, что мы делали вчера и что мы собирались делать в этот день. Если бы мы перешли к «оценке» нашего времени для задачи, менеджер проекта мог бы вонять и ссылаться на Журнал ожидания спринта как средство показать некомпетентность, которой вы не придерживаетесь графика времени.
Теперь я понимаю необходимость общения, но, конечно, тон ежедневных встреч должен быть легкомысленным и сосредоточиться на обмене знаниями. Я не думаю, что это должно превратиться в шараду где твоя домашняя работа. Также, конечно, точка провала в том, что временные рамки меняются, они не должны быть в камне.
Вывод
Идея Agile - сделать программное обеспечение лучше, облегчая жизнь разработчикам. Поэтому, по моему мнению, любой гибкий процесс, используемый командой, должен возглавляться разработчиком. Я не думаю, что руководитель проекта использует процесс, который они назвали «гибким» для отслеживания проекта, как-то связан с гибкой разработкой.
Мысли кто-нибудь?
Ответы:
В Scrum есть определенные элементы, которые более склонны к извращению, но, честно говоря, то, что вы описываете, является результатом попытки заставить организацию принять Scrum без информирования всех заинтересованных сторон о том, что это такое, как это работает. и почему это работает. Вам нужен бай-ин во всей компании, чтобы получить результаты.
Любая гибкая трансформация обнажит все плохое, что происходит в вашей организации, включая, помимо прочего, микро-менеджеров, специалистов по энергетике со своими собственными задачами, недостаточно подготовленных разработчиков, коммуникационные бункеры и т. Д. Если нет коллективного желания решать эти проблемы и вы просто «делаете дежурный режим» и просто «работаете в спринте», реализация Scrum не будет иметь успеха.
Я не могу подчеркнуть это достаточно: если вы хотите заниматься Scrum, вам нужны компетентные тренеры, которые могут показать вам путь. Недостаточно прочитать Essential Scrum, а затем просто посмотреть, куда он вас приведет ...
источник
Я думаю, что эта ссылка из одного из комментариев выше действительно говорит обо всем. Стоит посмотреть, дядя Боб кратко рассказывает о Scrum и в основном говорит, что Scrum не является гибким процессом разработки, потому что Scrum со временем превратился в процесс управления . Причины этого, по-видимому, заключаются в том, что курсы Scrum проходили менеджеры проектов, а не разработчики.
источник
То, что вы описываете, это то, что мы, профессиональные инструкторы по Scrum, видим в организациях, которые "внедрили scrum". Часто они тоже «делают XP в команде разработчиков», что означает, что на сервере сборки где-то выполняется несколько модульных тестов. Это не схватка .
Да, менеджеры проектов могут использовать журнал невыполненных работ по продуктам, особенно оцифрованный, для того, чтобы чертовски злоупотреблять показателями, которые собирают такие системы. Но команда разработчиков и Scrum Master не должны позволять ему. Что там вообще делает менеджер проекта? Разве это не должно быть владельцем продукта ?!
Подобно тому, как XP может работать плохо, а некоторые более строгие процессы могут казаться очень гибкими (с непрерывной интеграцией, развертыванием, но все же очень ориентированными на планирование), Scrum - это просто фреймворк. Требуются хорошие люди, которые понимают ценности и процесс, чтобы выполнить это хорошо. Требуется постоянное изучение улучшения, чтобы добраться туда.
источник
Вы, вероятно, ожидали этого, но только потому, что некоторые (многие?) Люди неправильно используют Scrum, не означает, что Scrum не Agile.
Руководитель проекта : в команде Scrum такой роли нет. Scrum Master не несет ответственности за бюджет или соблюдение сроков. Он отвечает за помощь команде и устранение любых препятствий, стоящих на пути к цели, которой они привержены. Из того, что вы описываете, кажется, что ваш PM угнал Scrum, чтобы взять на себя прерогативы, которые обычно идут команде и Владельцу продукта, увековечивая предыдущие привычки командования и управления.
Отслеживание времени : Scrum рекомендует отслеживать оставшееся время и суммировать его, чтобы определить статус спринта, а не указывать время, затраченное отдельными членами команды. Это может показаться мелочью, но в этом вся разница между культурой, основанной на обвинениях, и целеустремленным подходом.
Из руководства Scrum :
источник
Скрам - методология управления проектами
Agile - методология разработки программного обеспечения (-ish)
Scrum + Agile работает очень хорошо
разборки без проворных ... не так уж много
источник