Saturday, August 31, 2013

Скрам: "это не то, что ты думаешь!"

Поводом к написанию поста стал недавний спор с коллегой о том, отличаются ли доски в Скраме от камбана. Для коллеги оказалось сюрпризом, что в Скраме нет ничего про доски.

Цена простоты

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

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

От философии к реальности

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

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

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

Myth Busted

Поэтому, чтобы не попасть в ловушку ложных представлений, важно понимать следующее.

Скрам - каркас, а не полновсеная методология.

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

Скрам содержит только самое важное.

Josse Basso #8
Ничего лишнего
Авторы методично убрали из Скрама всю шелуху, оставив только действительно самое важное, эффективное и простое для понимаиня. Имейте четкое осознание, что когда вы от чего-то отказываетесь, вы отказываетесь от ключевого, потому что не ключевое уже было исключено. Если за вашими плечами двадцатилетний успешный опыт, вероятно, вы достигли уровня, когда лучше других знаете, что вам нужно (впрочем, гарантий нет), и сможете эффективно менять даже эту ключевую часть. Но до тех пор - забудьте. Положитесь на опыт Швабера и Сазерленда - ребята не дураки.

Цель Скрама - продуктивность и прозрачность

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

Самое известное о Скраме вообще не Скрам

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

В заключение

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

Напоследок, в поддержку моего мнения то же самое, но более кратко, словами Алистэра Коуберна.