Agile (Scrum) принятие - как оно прошло?

Для тех из вас, кто реализовал Scrum в ваших организациях, каковы были ваши самые большие препятствия, и если вы их преодолели, как?

Ответ 1

Фон. В 2006 году я заключил контракт с крупной компанией, которая за несколько месяцев до того, как я приехал, приняла холодную индейку Scrum. Компания надеялась, что Agile/Scrum сохранит свой огромный корпоративный программный продукт. Из сотен или более программистов я работал в тесном сотрудничестве с командой около дюжины в течение года, наблюдая и участвуя в их эксперименте Agile.

Резюме. Я считаю, что Agile помог больше, чем больно. К концу года команда могла последовательно оценивать и производить функции, тогда как раньше их производительность была довольно неустойчивой.

Реализация. Поскольку это была большая организация и большой продукт, проект выполнялся как "схватка схваток". Для каждых 15-20 разработчиков был один мастер схватки, и эти команды часто делились на более мелкие, тесно работающие схватки около 6-8 человек для итерации. Команды были в значительной степени независимыми, могли корректировать свою собственную частоту итерации (1 месяц до 1 недели), и им была предоставлена ​​большая гибкость для обеспечения гибкости, как они видели лучше всего. Компания регулярно привлекала тренеров Agile (таких как Object Mentor), чтобы помочь обучить мастеров схватки, команд и управления.

Препятствия: много. Некоторые из них связаны с Agile, некоторые - нет. В каком-то конкретном порядке, вот некоторые из полученных уроков:

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

Мы потеряли время, экспериментируя и занимаясь причудами и шумихой. Когда вы начинаете, вы не можете узнать, правильно ли вы делаете. Там соблазн постоянно возиться с гибким процессом, отвлекая внимание от продукта. Извлеченный урок: наличие опытного тренера Agile помогает уменьшить эту кривую обучения. Всегда должен быть кто-то, кто отталкивается от любых экспериментов. Ограничьте количество "пиков".

Хороший мастер схватки неоценим. Разумеется, вначале это место на полный рабочий день.

Требуется время. Прошло несколько месяцев, прежде чем команда начала чувствовать себя комфортно с процессом.

Выберите свои битвы. Некоторые программисты будут понятны скептически, а другие будут откровенно нелюбопытны и полетят на изменение. Разрешите некоторую гибкость. Например, соблюдайте использование отставания продукта и графика итераций, но не требуйте, чтобы все использовали карточки заметок. Будьте особенно чувствительны к внедрению инструментов и методологий программирования, таких как парное программирование или тестирование первой разработки.

Наконец, держите коммуникацию открытой и управляйте ожиданиями.

Удачи!

Ответ 2

Работая разработчиком Delphi несколько лет назад, мне удалось получить Scrum, принятый моей командой разработчиков на время.

Весь процесс работал очень хорошо для нас - если команда оценивала приоритетные задачи на отставании, мы дали нам осмысленные временные рамки для цели, и вся "работа по управлению устранением препятствий" была отличной.

Самая большая проблема заключалась в том, что процесс всегда воспринимался - и упоминался - как "Bevan хорошая идея".

В то время как команда оценила полученную нами ценность и с удовольствием продолжила работу с Scrum, команда не взяла методологию схватки на борту как свои собственные. Через некоторое время я устал от "толкания", и мы "выпадали" из-за подхода Scrum.

Урок: Удостоверьтесь, что команда берет Scrum на борту и владеет подходом.

Ответ 3

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

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

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

Ответ 4

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

Мое предложение состоит в том, что вы проводите семинар со всей организацией, чтобы все знали, как работает этот процесс. Не только разработчики. Очень важно, чтобы у вас был человек, который действительно вовлечен в этот процесс. Человек, который может отвечать на вопросы, заданные командой и организацией. Наставник.

Быть гибким - это приветствовать изменения. Вы не должны позволять процессу быть в курсе смысла. Делайте то, что работает для вашей организации, но вы должны попробовать весь процесс, прежде чем выбросить что-то.

Ответ 5

Я перешел из компании, которая приняла Agile на tee другой компании, которая следует традиционным методологиям.

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

Мастер схватки в мире Agile позаботится о пожаротушении и станет главой команды (спринт). Фактически, в первой компании (где у нас был отдельный мастер схватки и менеджер программ), мастер схватки будет бороться с менеджером программы, когда последний делает ложным promises для управления. Смысл, мастер схватки знает, сколько команда может произвести/доставить после нескольких спринтов, что помогает ей прибить предсказуемость команды.

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

Ответ 6

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

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

В Scrum, Lean или любой другой версии Agile, с которой вы работаете, нельзя отрываться от пунктов манифеста. Если какой-либо процесс используется для отрыва от этих приоритетов, то, скорее всего, руководство прикручивается, а покупка внутри будет разваливаться. Манифест ДОЛЖЕН следовать:

манифеста:

  • Лица и взаимодействия над процессами и инструментами
  • Рабочее программное обеспечение по полной документации
  • Сотрудничество с клиентами по заключению контрактов
  • Ответ на изменение в соответствии с планом

В некоторых сценариях может появиться диаграмма gantt из одного из вышеперечисленных процессов по любой причине. Графики Ганта могут быть полезны, но если вдруг разработчик просматривает диаграмму gantt с управлением, последний пункт разбивается. Реагирование на изменения замедлилось, поскольку поощрение плана благоприятствует изменениям. Вместо этого следует использовать доску с липкой, упростить то, что находится на доске, только с текущими рабочими элементами и элементами обратной записи. Это облегчает изменения. Как только что-либо затвердевает в "инструменте", он замедляет реагирование на изменения. Разумеется, менеджменту нужно каким-то образом записывать и отслеживать вещи, но продвижение на разработку только замедляет реагирование на изменения и нажимает инструменты на разработчиков (если они не хотят их для разработки и не могут использовать их соответственно) испортит первый пункт, людей над инструментами и процессом.

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

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

Резюме:

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

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

... надеюсь, я не слишком сильно отклонился.:)

Ответ 7

Мы реализовали Agile (набор SCRUM - management и XP - инженерная практика) в среде, которая была водопадом с большими проектами в среде, которая была сильно интегрирована. Полиция водопада была повсюду. Как вы можете себе представить, многие проекты потерпели неудачу. Сделав Agile у предыдущего работодателя, мы получили разрешение на пробную версию для проекта.

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

Критическими факторами успеха были встроенные тренеры (тренера Iteration Manager, ведущего тренера Dev, тренера по тестированию и тренера по анализу решений). Предоставление обязательной поддержки из зависимой системы заблаговременно (требуется, чтобы мы смотрели вперед, чтобы определить системы зависимостей и работу, требуемую от этих систем) было необходимо в сильно интегрированной среде. Перед началом мы погрузили технических и деловых членов команды в гибкий лагерь загрузки. Это обеспечило, чтобы ключевые игроки (владелец продукта и техническая команда) знали о ролях и могли эффективно выполнять свои обязанности. Наконец, упаковка проекта с отчетами о водопаде позволила нам связать всю существующую структуру отчетности на предприятии.

Конечным результатом является то, что компания сейчас переводит проекты водопада в гибкие. Это все возможно только потому, что мы смогли обеспечить высокое качество программного обеспечения устойчивыми темпами.

Ответ 8

Где я работаю, сейчас используется Scrum, но, похоже, прошло несколько этапов. Что касается препятствий, то одна из них заключается в том, чтобы не допустить слишком много изменений сразу и просто вводить вещи медленно, например. положить в ежедневную стойку одну неделю, через пару недель положить в рассказ борту, через пару недель привести пар программирования. Это позволяет использовать различные настройки, которые будут работать, и если изменения улучшат ситуацию, это может помочь создать хороший импульс. Еще один момент заключается в том, чтобы убедиться, что, если должны быть изменения в том, как что-то делается, что человек, исправляемый, не умаляется и не издевается. Время от времени это может означать, что вы прерываете кого-то или что вы приносите "Можем ли мы вернуться к основам?" или что-то подобное, чтобы попытаться вернуть вещи на правильный путь, а не просто кричать кому-то или делать что-то еще, что является контрпродуктивным.

Привлечение консультантов было одной из лучших вещей, сделанных здесь, ИМО. Теперь эти ребята вошли, чтобы помочь в развитии процесса разработки здесь. Превосходные дополнения, связанные с программированием на пару, TDD, понятиями, как разбитые окна, организация папок проекта и приведение насмешек для тестов, были прекрасными дополнениями, которые, хотя мы, возможно, сами туда побывали, возможно, потребовали много времени, которые бы не работали так хорошо.