Мы начинаем публикацию саги о эластичных методиках разработки.
В первой части читатель без лишних прелюдий погрузится в подтверждение и разоблачение популярных догадок Agile.
«Я посмотрел окрест себя»: мода на Agile делается все более всеобъемлющей. Да забудут обиду меня уверенные коммунисты, но увлечение Agile все больше смахивает на «Учение Маркса всесильно, по причине того, что оно правильно». В течении Agile растет число неофитов, каковые привержены «догматам Agile», что в действительности вступает в несоответствие с самой концепцией.
Цель этого материала — не отвратить от применения способов Agile, а обратить внимание на необходимость взвешенного принятия и подхода во внимание всех рисков.
Начнем с маленького дисклеймера.
• Вам предлагается статья заведомо однобокая и необъективная, потому, что имеется множество материалов в защиту Agile. Я желал бы вернуть баланс, исходя из этого буду сказать о недочётах и лишь о недочётах.
• Я не буду сдерживать себя в чувствах и ограничивать сарказм, даю предупреждение: статья агрессивная так, как разрешают законы и этические стандарты консультанта. Я бы отнес ее к категории 26+. По личному опыту, как раз к этому возрасту появляется личный опыт успешных и неуспешных проектов.
Персональный опыт фактически любого менеджера недостаточен для статистики
• В статье не повторяются ключевые принципы Agile — ищите их в других материалах. Я желаю сконцентрироваться на практике применения, а не на литературе по Agile, среди которой много захватывающих книг. Но направляться иметь в виду, что пишут и получают на пропаганде Agile, в большинстве случаев, одни храбрецы, а разрабатывают продукты с применением Agile («да, я знаю, что это вероятно») — другие.
• Создатель имеет определенный персональный опыт, но он очевидно недостаточен для статистики. Вы не отыщете в статье ответа на вопрос «какое количество процентов проектов успешны?». По большому счету, персональный опыт фактически любого менеджера, в случае если лишь он не специализируется на изучениях, недостаточен для статистики.
Иначе, опыт коллег и личный опыт, пользующихся доверием, — это информация из первых рук.
• Я не буду сравнивать Agile с другими способами, а буду оценивать его применимость к конкретным обстановкам и его ограничения. К слову, Agile довольно часто сопоставляют с разработкой водопада (waterfall), а по факту «совершенный водопад» весьма в далеком прошлом уже никто не использует. Разрешу себе аналог из области диеты: это как сравнивать последствия регулярного здорового питания с потреблением в пищу бургера три ежедневно.
На этом я покончил с дисклеймером и перейду к выводам. «А где же главное содержание?» — спросите вы. Я исхожу из того, что поклонники Agile не обожают пространных сложных построений и документов. Исходя из этого — сходу выводы, но к каждому выводу я попытаюсь привести кейсы либо доводы.
Agile весьма требователен к квалификации команды.
Первый проект на Agile я сделал в 2004 году, и это был кредитный конвейер. У нас был клиент, осознающий, чего он желает, экстремально сжатые для совсем нового проекта сроки и Excel как главный инструмент управления бэклогом и планирования спринтов. Современную прекрасную Jira тогда тяжело было кроме того представить. Проект был довольно успешным — мы не выдержали сроки, но клиент однако добился ощутимого бизнес-результата.
Я удачно повторил данный опыт еще пара раз, но в какой-то момент очередной проект был мне не по зубам в полном смысле этого слова.
Что же пошло не так?
• Догадка 1 от Agile: у вас имеется product owner, что в состоянии выразить либо консолидировать вывод всех стейкхолдеров.
Вы рискуете в каждой следующей итерации не наращивать, а переделывать ранее созданный функционал
Причем, в большинстве случаев, он делает это за сценой разработки Agile — это смогут быть многочасовые заседания «с бизнесом», либо мозговой штурм, либо легко команда думает одинаково и «дышит одним воздухом». Из-за чего эта догадка может не подтвердится в конкретном проекте? Обстоятельств тому возможно большое количество: недочёт квалификации, проблемы организационного характера, политическая культура.
Вы рискуете в каждой следующей итерации не наращивать, а переделывать ранее созданный функционал. Либо команда будет вынуждена заниматься второстепенными задачами, по которым имеется консенсус, тогда как главные задачи будут оставаться предметом острых дискуссий и пребывать еще «на дискуссии у клиента». Время от времени product owner готов забрать ответственность на себя: «Делаем, как я сообщил, победителей не делают выводы — в то время, когда готовься , никто не вынудит нас переделывать».
Вы желаете хороших коммуникационных навыков, воли и дара предвидения, и хорошего понимания предметной области от product owner? В случае если у вас таковой имеется, вам крупно повезло. Догадка 1 время от времени срабатывает. Я же не утверждал, что этого не бывает.
Легко требования высоки — на рынке такие эксперты не валяются.
• Догадка 2: новые спринты будут улучшать архитектуру, а также будет выделено время на рефакторинг. По факту время на рефакторинг «некому оплачивать», так как нет яркого клиента — выбор Agile довольно часто разъясняется необходимостью скоро продемонстрировать видимый итог, по окончании чего клиент привыкает к высокой скорости наращивания функционала.
В случае если идею о том, что иногда придется действительно рефакторить совокупность без видимых глазом улучшений, не «реализовать» сначала, то при недостаточной квалификации разработчиков происходит постепенное «размывание архитектуры» за счет стремительных доработок в различном стиле. В случае если в команде нет двух-трех человек уровня team lead, в течение нескольких итераций может случиться разрушение архитектуры. Именно это случилось в неудачном проекте, что я упомянул выше.
• Догадка 3: большая часть участников команды взаимозаменяемы, и любой может подхватить подвисшие задачи.
На практике взаимозаменяемость достигается лишь для довольно маленького подмножества задач
На практике это не верно, и мне в моих проектах приходилось время от времени планировать время «до часа», дабы применять неповторимые ресурсы для неповторимых задач. На практике взаимозаменяемость достигается лишь для довольно маленького подмножества задач, а также в этом случае обстановка, в то время, когда прямо на данный момент дешёв эксперт, что «закроет задачу» за четыре часа, но на следующий день будет дешёв второй, которому хватит часа, — появляется сплошь и рядом.
• Догадка 4: коллективное планирование задач разрешает адекватно оценить риски и трудозатраты и оптимально спланировать ресурсы. Срабатывает, в случае если все члены команды «одинаково в теме» и нет неповторимых задач и неповторимых же ресурсов. Вероятный побочный итог: планирование осуществляется так, дабы все участники были заняты делом и любой делал что-то, ему дешёвое и увлекательное.
Это не всегда оптимально с позиций клиента, не смотря на то, что, буду откровенен, это лучше, чем простаивание большей части команды: в случае если бэклог ведется более либо менее корректно, команда как минимум занята чем-то нужным. Уже хорошо.
• Догадка 5: команда легко переварит новых участников, а универсальность способа делает проект свободным от конкретных участников. — Как бы не так!
Две современные концепции — Agile и управление знаниями — на мой взор, на практике довольно часто выясняются ортогональными, не хорошо совместимыми
Сокращение времени на документирование и по большому счету весьма своеобразное отношение к документам ведет к росту роли имплицитных знаний. Замена главных людей в условиях отсутствия артефактов, подробно обрисовывающих проект, несет угрозу стабильности архитектуры. В случае если новый сотрудник — ас, то он вырулит и разберется. Но для этого он обязан осознавать, чем стиль и архитектура данной совокупности отличается от других, другими словами иметь кругозор и опыт.
Вам повезло, в случае если у вас большое количество таких людей в команде. По большому счету, две современные концепции — Agile и управление знаниями — на мой взор, на практике довольно часто выясняются ортогональными, не хорошо совместимыми.
На этом разговор о сложностях Agile не заканчивается: интрига лишь начала закручиваться, продолжение направляться…
Напоминаем: Вторая ежегодная клубная конференция «Эластичное управление проектами в банках» отправится в Москве в 26 октября. Организатор мероприятия — Bankir.Ru, модератор — Антон Арнаутов. Вся подробная информация — по ссылке.
15 февраля 2014: Team motivation in Agile
Интересные записи
- Банки неустойчиво стабилизируются
- Апрель — никому не верь!
- В банк за знаниями: для чего клиенты снова садятся за парту
Похожие статьи, которые вам, наверника будут интересны:
-
«Гибкая разработка основана на взаимном доверии участников»
Компания EPAM, один из наибольших разработчиков ПО, деятельно использует эластичные подходы к разработке, объединяемые концепцией Agile. Мы поболтали о…
-
Управляющий партнер ScrumTrek Асхат Уразбаев на II Ежегодной клубной конференции «Эластичное управление проектами в банках» поведал о том, как…
-
Андрей попов: «в непростые времена надо вкладываться в будущее»
Начальник дирекции IT Райффайзенбанка Андрей Попов поведал Bankir.Ru о том, как во всеоружии встретить перемены, о необходимости обучаться у Гугл и…
-
Как возможно взломать терминал не либо что то подобное? монтировкой, автогеном, ломом. Добавлю к Юрию Викторовичу — ноутбуком. В противном случае какой…
-
Как перейти на agile и не загубить все
В случае если неоднократно сообщить «Agile», методологии разработки от этого более эластичными не станут. Говорим и показываем — что свидетельствует…
-
Максим тищенко, банк россии: «некоторые вещи делать по agile просто нельзя»
Глава департамента IT Банка России Максим Тищенко, выступая на II Ежегодной клубной конференции «Эластичное управление проектами в банках», поведал о…