Professional Scrum Master (PSM)

Professional Scrum Master (PSM)
Professional Scrum Master (PSM)

среда, 7 августа 2013 г.

Водопад, Лин-Канбан и Скрам


Перевод оригинальной статьи Кена Швабера.

Существуют четыре выявленных типа, к которым можно отнести проблемы: Простой (Simple), Сложный (Complicated), Запутанный (Complex, комплексный), и Хаотичный (Chaotic). Идентификация типа проблемы исходит из характеристик предметной области, к которой она относится. Сфера разработки программного обеспечения состоит из технологий, требований и людей, которые выполняют работу.



Если характеристики и измерения предметной области проблемы просты и хорошо известны - проблема определяется как Простая. Если ее характеристики нестабильны, часто изменяемы и не очень хорошо известны, то проблема является Хаотической. Если характеристики не простые, но более известны и хорошо определены - проблема определяется как Сложная. И наконец, если характеристики не простые и более неизвестные и неопределенные, то проблеме присваивается Запутанный тип.
В 80-х годах я трудился над тем, чтобы сделать проекты, использующие методологию Водопада, успешными. Несмотря на создание и пересмотр методологий, которые “распараллелили” водопад и даже автоматизировали механизмы доставки продукта, я не был удовлетворен их результатами. Позже, в начале 90-х, Джеф Сазерленд и я сформулировали Скрам - подход к разработке программного обеспечения, который радикально отличался от водопада. И мы неоднократно добивались успеха, используя его.
Мне нужно было знать, почему же Скрам стал намного более успешным, чем Водопад. У меня были друзья, которые работали над продвинутым контролем процессов в DuPont Advanced Technology Center в штате Делавер. DuPont до такой степени освоил производство простых полимеров, таких как трикотаж, что компания могла перенести это производство в любую точку мира. Однако, сложные полимеры, как гортекс, были настолько сложными, что их производство нельзя было распределить по удаленным филиалам компании. Мои друзья как раз работали над этой проблемой. Во их главе был Бабатунде Огунейк (Babatunde Ogunnaike) или же просто Тунде, один из авторов библии по контролю процессов, “Динамика процессов, Моделирование и Контроль”.
Я показал Тунде несколько разновидностей водопадного процесса, которые принес с собой. Одна из них была моя, другая Summit-D методология, разработанная Coopers & Lybrand. При детальном рассмотрении, Тунде обнаружил, что эти процессы были очень директивными. В них существовал полный план превращения исходных материалов в готовую продукцию. Он так же заметил, что элементы плана были не очень хорошо определены. Вход, выход, процессы и ресурсы, используемые на каждом этапе плана (задаче) не были прописаны с детальностью, необходимой для корректного потока. Затем Тунде спросил, насколько успешными были эти методологии. Я ответил ему, что показатель успешности наших проектов был ниже 50%, несмотря на все героические усилия по усовершенствованию процесса и соблюдению его выполнения.
Тунде сказал мне, что определенные процессы, такие как водопад, являются основой для организации массового производства. Несмотря на то, что они не являются самыми эффективными в плане стоимости, это не мешает им доминировать. Сначала эксперты излагают последовательность всего процесса по превращению сырья в готовые продукты. Потом нанимаются менеджеры, которые ставят рабочих, на необходимые позиции технологического процесса (для надежности отдавая предпочтение автоматизации, там, где это возможно). Работа менеджера и других руководителей состоит в том, чтобы обучить персонал выполнять определенную работу. Если они делают свою работу хорошо, то весь производственный поток будет плавным и на выходе получается ожидаемый продукт. Иногда планы содержат ошибки, которые в последствие корректируются. Большинство ошибок исходят от некорректного выполнения сотрудниками своей работы.



Так же Тунде рассказал мне, что водопад слепо скопировал эту модель.  Она часто была предпочтительной и всегда применялась, потому, что была довольно успешной. Если же нет, несмотря на все попытки ее исправить и удержать ресурсы, то существовали другие, более дорогостоящие способы для создания продуктов. Тунде спросил меня, какого показателя успешности нам удалось достичь. Я сказал, что он был ниже 50%. Тунде был ошеломлен. Он сказал, что в современной индустрии показатель успешно произведенных продуктов ниже 99,7% считается чрезвычайно низким. 50% успешности - это как если бы General Motors выбрасывала на свалку каждый второй произведенный автомобиль.
Тунде предложил нам обратить внимание на другие модели, такие, как Лин, где предметная область проблем имеет некоторую сложность, но при этом проблема содержит больше известного и стабильного, чем неизвестного и нестабильного. Тунде сказал, что этот подход похож на полностью предопределенный подход, только он принимает во внимание сложности, которые могут снизить показатель успешности до неприемлемого уровня. Сначала эксперты просчитывают производственную линию. Менеджеры и руководители нанимают персонал и обучают его. Потом работа линии измеряется разными метриками, которые контролируются экспертами на предмет отклонений и непредвиденных происшествий. По мере их обнаружения линия останавливается, отклонения сглаживаются, проблемы устраняются и производство продолжается снова. Так же персонал обучается обнаруживать неожиданные сложности и наделяется правами останавливать производственную линию до их устранения.



Лин процесс оптимизирует качество и бизнес ценность. Источники дефектов быстро обнаруживаются и устраняются. Все, что не способствует оптимизации ценности, ликвидируется. Решения откладываются до последнего момента с целью минимизации потерь. С точки зрения стоимости, Лин является наиболее эффективным процессом.
Тунде сказал, что этот подход рассыпается в пух и прах, когда неожиданные происшествия захлестывают линию, подрывая ее продуктивность. На определение и исправление сложностей тратится больше времени, чем на производство продукта, а на изобретение новых метрик определения сложностей - больше, чем на дизайн новых продуктов. Он так же обратил мое внимание, на то, что Лин в основном применялся для массового производства продуктов. Было бы сложно найти оправдания для постройки производственных линий и контроля их метрик для выпуска всего лишь одного продукта или же одного релиза программного обеспечения.
Затем Тунде подвел меня к идее эмпирического контроля процессов, технике, используемой для производства небольших партий продукции, где неясного больше чем ясного, где все очень запутанно. Ему казалось, что этот подход более подходит для индустрии разработки программного обеспечения. Изменения в наших требованиях, сложность технологий, использование креативного мышления для решения задач делает этот подход наиболее приемлемым. Он борется с непредсказуемым с помощью частых инспекций прогресса и следующих за этим шагов по оптимизации результатов на выходе. Фундаментом этой идеи является контейнер.



Контейнер представляет собой закрытое пространство, в котором происходит работа независимо от сложности проблемы. В случае Скрама этим контейнером является Спринт, итерация. Мы помещаем людей с необходимыми навыками для решения проблемы внутрь контейнера. Мы берем для решения только самое важное. Затем мы защищаем контейнер от внешних раздражителей, в то время как люди внутри него пытаются найти решение. Мы контролируем контейнер, ограничивая время, которое отводится на решение. Люди самим выбирают проблемы, которые должны быть решены за ограниченное время. По истечению этого времени мы открываем контейнер и проверяем (инспектируем) результаты. Затем мы перезагружаем контейнер (адаптация). Благодаря тому, что мы часто перепланируем и отгружаем работу, у нас получается оптимизировать доставленную бизнес ценность.
Существует радикальное отличие между предопределенными процессами (Водопад, Лин, Канбан) и эмпирическими (Скрам). Меняется сама культура организаций.
Предопределенные подходы полагаются на возможность эффективно планировать и контролировать успешность выполнения плана. Работу определяют эксперты, менеджеры управляют ресурсами и нанимают людей, а исполнители (взаимозаменяемые) непосредственно делают работу. Командно-контрольный стиль управления оптимизирует продуктивность в предопределенных процессах. Эмпирические процессы делают ставку на контейнеры для контроля риска и ведут продукт к максимально возможной бизнес ценности. Работа менеджеров заключается в том, чтобы делать все возможное для того, чтобы содействовать людям, которые занимаются поиском решений. Креативность и коллаборация являются отличительными признаками этого процесса.
У всех организаций возникают проблемы с адаптацией Скрама. Они переходят от предопределенного, линейного подхода к более гибкому эмпирическому. Любое расхождение между культурой организации и ценностями Скрама является препятствием к оптимизации бизнес-ценности. В таком случае от организации требуется изменить свою культуру для того, чтобы получить гибкость и бизнес-ценность. Когда изменения слишком тяжелы, то люди меняют Скрам и оставляют препятствие нетронутым. Мы называем такой подход СкрамНо, потому что обычно это звучит так: “Мы используем Скрам, но для нас слишком неудобны Ежедневные встречи, поэтому мы делаем это лишь раз в неделю.”
Канбан часто используется в том случае, когда компания не может целиком адаптировать Скрам. Многие из наиболее тяжелых для адаптации аспектов Скрама просто игнорируются. Менеджеры продолжают говорить людям, что им нужно делать. Людей прерывают в любое время. Люди работают в функциональных силосных ямах, отчитываясь непосредственно функциональным менеджерам. Людям не разрешают работать в контейнерах, делиться навыками и знаниями для того, чтобы комплексно подходить к решению проблем. Вместо этого они работают, используя pull системы (более сложные чем push), используемые в производственных линиях.
Лин более продуктивен чем Водопад. Его прозрачность и метрики позволяют вносить частые поправки и оптимизировать продуктивность. Тем ни менее, оптимизированная продуктивность - это креативность, возникающая в случае, когда люди работают над запутанными комплексными задачами. Люди работают как винтики в машине, и их работа оптимизируется на уровне битов вместо того, чтобы быть агрегированной на уровне бизнес ценности.
Да поможет нам господь Бог. Люди находили возможности использовать резервы времени для отдыха и восстановления своей креативности в Водопадном процессе. С Лином и Канбаном эти тихие заводи исчезают. Теперь нас ожидают бесконечные “марши смерти”.
Скрам был создан для того, чтобы дать увлеченным работой людям тесно сотрудничать с их заказчиками и создавать максимально ценные креативные продукты. Придти к этому очень сложно тем организациям, которые трансформируются из Водопада и командно-контрольной культуры. Но они будут с лихвой вознаграждены за это. С компаниями, успешно прошедшими трансформацию, будет невозможно конкурировать. Это будут организации, куда будут стремиться попасть все. 
Те, кто не сможет адаптировать у себя Скрам, будут похожи на шахтеров, добывающих уголь в шахте. И эта рабочая сила вряд ли сможет добиться от своих профсоюзов перерывов на отдых.