Самый непонимаемый принцип в Agile Manifesto

Вот есть грузовик. Принципиальная схема грузовика проста: есть кузов, который перевозит груз. Перевозка груза происходит потому что к кузову приделаны колеса, которые крутятся и передвигают корпус. Колеса крутятся потому что их вращает двигатель посредством вращающегося вала. Двигатель вращает вал так как в нем сгорает бензин, который при сгорании толкает поршень, который сообщает движение валу. Поэтому бензин сгорает, толкает поршень, колеса крутятся, кузов движется, возникает польза – передвижение груза. Каждая деталь – на своем месте, вместе они образуют концептуальное единство.

 

Никому не приходит в голову сказать “о! классная штука – автомобиль! давайте ее использовать, только мотор выкинем!” или “мысль понятна, но вот про заливание бензина – мне кажется лишнее, он денег стоит, пусть она без бензина едет”. Маразм? Маразм, все понимают. И мастерство водителя здесь совершенно ни при чем – вроде никому в голову не приходит говорить “вот продемонстрируй, какой ты профессиональный водитель – настоящий профессионал должен уметь ездить даже на машине без мотора!” или “настоящий водитель никогда не заправляется!”.

Теперь описываю принципиальную схему agile-проекта. Есть продукт, который производится часто и при релизе имеет пригодный для эксплуатации вид. Его производит команда, которая реализует “хотелки” заказчика, для чего Заказчик каждый день плотно работает с командой. Чтобы темп производства не падал, используются ежедневные собрания, на которых люди говорят “что сделано” и на которых им совестно сказать “ничего не сделано”. Им совестно так сказать потому что они очень хотят выпуска продукта и потому что они уважают коллег, в глазах которых они не желают упасть как профессионалы. Иными словами – профессионалы которые хотят зарелизить продукт собираются каждый день похвастаться друг перед другом успехами в деле выпуска этого продукта через что происходит высокая интенсивность работы над пожеланиями Заказчика который все время находится рядом чтобы направлять команду, и как следствие – мы способны релизить часто, релизить со смыслом и пользой, и добиваться при этом приемлемого качества.  Принципиальная схема думаю понятна. А теперь внимание.

Давайте выкинем нафиг “профессионалов”. А потом выкинем “которые хотят сделать продукт!” То есть давайте выкинем из машины мотор, или давайте не зальем бензина – пусть она так едет! А тренеру этой команды мы скажем “настоящий тренер – он сделает agile-проект даже с людьми которые ненавидят другу друга, никогда не программировали, а проект видали в гробу в белых тапках!” Перечитайте часть про грузовик – ничего не напоминает?

Да, даже в таких условиях проект можно сделать. Но в такой ситуации не тренинги по аджайлу нужны, а сержант Хартманн. И никакой аджайл здесь не заработает, я про это уже писал. Тренинги или не тренинги, fogbugz или rally, subversion или VSS – это совершенно неважно.

Один из 12 принципиальных узлов, из которых построен грузовик agile – projects built around motivated individuals. Это один из принципиальных узлов, это мотор (команда) и топливо (мотивация) грузовика. Нет мотора – грузовик, даже самый совершенный, не тронется с места.

Что сделать, чтобы люди хотели сделать проект? Ответ – думайте. Из своей практики могу сказать, что никто обычно не скрывает от чего в работе он приходит в восторг, а отчего впадает в депрессию. Обычно не требуется ничего сверхъественного для того, чтобы человеку было интересно работать над проектом. У кого-то преобладают социальные мотивы, у кого-то – материальные, и есть растения, которые не хотят ничего – но это не повод не анализировать мотивацию своих коллег.

Потому что одно могу сказать точно – ваш проектный agile-грузовик без мотора и бензина не поедет. Можете убиться веником – но мотор (команда) и бензин (мотивация) нужны. Нет, можно конечно запрячь в грузовик четверик, но эффективная телега – это совсем другая система, и фирма Caterpillar явно бы не одобрила свой логотип на такой колымаге (так что подумайте прежде чем говорить “мы делаем agile”, ага).

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

Именно поэтому “самомотивирован” не имеет ничего общего с “согласен делать что угодно” – если предлагаемая деятельность не вяжется с его мотивами, он будет ужасающе непродуктивен в этой деятельности. Именно поэтому он скорее всего не будет это делать, или будет делать это плохо. У меня например внутренняя мотивация – чистое торнадо, но если мне предложат заняться высокоинтеллектуальной деятельностью “вот тебе документ, вставь в него из ста других документов по кусочку, потому что это очень важно для компании” – я точно не приду от этого в восторг, и точно моя продуктивность на этой задаче будет ниже плинтуса.

Это разъяснение я написал чтоб в конце красным сделать вот такое сообщение: Камрады менеджеры, пока вы не поймете принцип projects built around motivated individuals и не увидите девелоперов, страстно желающих начать ваш проект – не приходите ко мне с просьбами “мои люди не хотят делать agileпроект, и тренинг по agile они не хотят, но надо провести для них тренинг чтоб переубедить!”. Слезно вас прошу – отстаньте! перечитайте текст выше, реализуйте принцип на практике – и тогда они сами попросят у вас тренинг.

Post Author

This post was written by who has written 29 posts on Agile.by.

  • Тимур Хащеватский

    Всё абсолютно правильно. Но не кажется ли Вам, что техника, которая построена из узлов исключительно высочайшего класса (зрелые, мотивированные профессионалы, по возможности собранные в одном месте) и предназначенная для работы в тепличных условиях (интенсивный контакт с клиентом, карт-бланш от клиента-же и топ-менеджмента на организацию проектных работ) имеет высокую эстетическую, но довольно сомнительную практическую ценность ? Это похоже на Феррари – им все восхищаются, но в городских условиях Тойота справится не хуже, а на бездорожье больше двух метров не проедете. Трасс для демонстрации преимуществ разгона до 100км/ч за 3.9с немного и большинство из них – в Silicon Valley.

    • http://thetorch.ru/ Денис Петелин

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

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

  • Тимур Хащеватский

    А вот не согласен с первым утверждением. У меня устойчивое ощущение, что agile в максимальной степени предназначен не для СОЗДАНИЯ гиперпродуктивных команд, а для того, чтобы подвести научную базу под освобождение (защиту) уже имеющихся гиперпродуктивных команд от лишней бюрократии.

    То-есть если ты PM и у тебя шайка дружелюбных монстров, которые решают задачи любой сложности усилием воли (к тому же получая при этом удовольствие от процесса), то в принципе процессы могут быть максимально расформализованы – это очевидно. Но раньше это было проблематично реализовать на практике – к тебе приходил вице-президент и говорил “We must have a good process !”, под чем понимал нечто расплывчатое, но с максимальным количеством спецификаций. Теперь у тебя на этого вервольфа есть серебряная пуля – agile (он же не захочет выглядеть ретроградом, правда ?). И это безусловно хорошо.

    Но между нами-девочками манифест agile состоит наполовину из разумных, но очевидных тезисов (кто бы сомневался что Working software over comprehensive documentation), на вторую – из тезисов популистских – т.е. бессмысленных (хотя и безвредных). Мой любимый – Individuals and interactions over processes and tools. “Электрическое поле намного важнее магнитного”.

    Вообще по этому поводу была совершенно блестящая статья Айвара Якобсона http://ivarblog.com/category/agile-scrum/page/2/
    Основной тезис состоит в том, что сила agile – не в технических практиках (в этом он как раз весьма слаб), а в аспектах, относящихся к социальной инженерии – мотивация, тим билдинг и т.д.

    Я с ним полностью согласен, хотя здесь же вижу и негативный момент – во всём этом присутствует элемент психологической манипуляции.

    • http://thetorch.ru/ Денис Петелин

      Элемент манипуляции присутствует во всем бизнесе. Тебя зазываю работают в компанию Х? Тобой манипулируют, будь уверен! Тебя призывают пользоваться сурс контролом Y? Тобой манипулируют! Ты работаешь за зарплату? Тобой манипулируют – доказано, что в лесу за Слюдянкой можно жить без всякой зарплаты, так что зарплата придумана чтоб манипулировать тобой и заставить тебя работать. Тема манипуляций – это темя отдельного разговора.

      Если же посмотреть на набор принципов любой работающей системы – он будет банален и очевиден, хоть и разумен. Грузовику нужен двигатель? Банальщина, это знает любой идиот. Двигатель работает на бензине, поэтому грузовик надо заправлять? Очевидно и банально, это опять-таки знает любой идиот. Сиденье водителя должно быть удобным? Да популизм в чистом виде, хоть и безвредный. Это вроде бизнеса – все просто и очевидно, но хорошая концептуальная модель (при условии что ты смог отстроить из модели систему) принесет тебе миллион, а на плохой – ты потеряешь миллион. Но любой, кому ты опишешь свою систему, сможет сказать “блин, это банально и очевидно”.

      Сила аджайла – не в технических практиках, их там вообще очень мало и они туманные. Сила аджайла в том, что он предлагает концептуально связанный набор принципов (модель), каждый из которых в отдельности – давно известен, потому банален. Но их сочетание (результирующая модель) – позволяет создавать гиперпродуктивные команды, на худой конец – продуктивные команды. Чтобы не спорить на эту тему, сформулирую так – Я и некоторые мои друзья умеем создавать гиперпродуктивные команды через использование аджайл-фрэймворков (другие могут не уметь – но если ты не был в Австралии, это же не означает что ее не существует?) Спорить со мной на эту тему бесполезно по 2м причинам: 1. потому что будет как у Воланда с Иванушкой – “этот молодой человек чуть не свел меня с ума, доказывая мне что меня нету” 🙂 и 2. потому что мне неинтересно кому-то что-то доказывать.

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

  • Тимур Хащеватский

    Манипуляции оставим в сторонке (замечу только, что осознанная манипуляция подчинёнными в команде IMHO намного менее этична, чем манипуляция к примеру партнёрами по переговорам) – действительно не по теме.

    А вот по теме. Мессир, я абсолютно убеждён, что ты и некоторые твои друзья умеете создавать гиперпродуктивные команды через использование аджайл-фрэймворков ! :)) Amen.

    Вопрос состоит в том, является ли это аргументом в их (фрэймворков) пользу ? :))

    Хочу кратко (и вольно) пересказать по этому поводу умеренно достоверную историю, подсмотренную у Стива Йегга (полностью – на http://steve-yegge.blogspot.com/2006/10/egomania-itself.html ). История называется Break-Dance Chicken (Цыплёнок – брейкер).

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

    Принцип обучения – тот же: за каждую успешно сыгранную ноту конкурсантка премировалась вкусным зёрнышком (соответственно нет попадания – нет премии). Когда наши герои дошли примерно до середины мелодии (к этому моменту курица уже чётко въехала в основную идею: повторение премированного ранее действия приводит к получению очередной награды) произошёл инцидент – проигрывая (абсолютно точно !) выученный ранее кусок вместе с очередной разученной нотой курица непроизвольно совершила резкое волнообразное движение крыльями (наподобие тех, которые совершают брейк-дансеры пуская “волну” по телу). С музыкальной точки зрения всё было безупречно, награда была выдана и употреблена. И вот тут случилось непредвиденное – наша курица пришла к логичному выводу, что награда была получена за ОБА действия – ноту и танец. И естественно начала вставлять новый элемент в каждую последующую итерацию. У студентки же не было разумного метода проинформировать обучаемую о том, что танцы в обязательную программу не входят. Курица пребывала в счастливой уверенности в том, что танцы заставляют её проект развиваться максимально успешным образом. Потом они гастролировали по близлежащим колледжам с номером: “Цыплёнок-брейкер-пианист”
    ********

    Если всё то же самое переформулировать покороче, то смысл в том, что success stories сами по себе абсолютно ничего не говорят об эффективности выбранных методов :)). Если ты талантливый PM и при тебе толковые ребята – ни одна методология не сможет помешать вам добиться успеха проекта ! “You can start with dog shit, and if you add enough chili, you get chili.” (это опять же из Steve Yegge).

    По поводу того что сочетание agile принципов позволяет создавать (гипер)продуктивные команды… Нууу, да, по-видимому да. Тут весь вопрос в значении слова “позволяет” :)) .

    • http://thetorch.ru/ Денис Петелин

      Ну статистика – это известная палка о ндцати концах 🙂
      Строго согласен – (почти) ни одна методология не остановит джедаев, которые хотят нанести пользу, все позволяют осуществить задуманное.
      Ну а дальше да, дальше именно нюансы “позволения”.

  • http://thetorch.ru/ Денис Петелин

    Тимур, узнаешь цитату: “Бери на работу только тех людей, которые эту работу обожают: тех, кто с гордостью рассказывают о своих заслугах, интересуются твоей компанией, следят за новинками в отрасли. Если этого не соблюдать — легко получишь обыкновенный ленивый офисный планктон, который работает «из-под палки», самостоятельно не обучается и довольно медленно растет в профессиональном плане. Людей, которые в целом любят свою работу, и мотивировать гораздо проще, и работать с ними интереснее. Тебе не нужен сисадмин, мечтающий заниматься журналистикой, или разработчик, который на самом деле хочет быть дизайнером, а код писать ненавидит и каждый раз «переступает через себя», чтобы выполнить новую задачу. Тебе нужны такие люди, которых сам будешь выгонять из офиса, чтобы не просидели до ночи, изучая новую технологию.” Вспомнил откуда? 🙂

  • Тимур Хащеватский

    Ухх – даже напрягся :)) (я дядьку Джоэла в подлиннике читал и сразу несассоциировалось).

    Я так тоже думал когда-то. Сейчас к сожалению передумал. Подход Джоэла работает для инновационных компаний с реально технологически интересными проектами (посчастливилось начинать в такой карьеру). Чем дальше мы от Google и чем ближе к software factory (к которым относятся как моя так и твоя нынешняя компании), тем сильнее приходится жертвовать максималистским подходом в пользу прагматичного, который заключается в том, что уровень работников должен примерно соответствовать уровню работы. Иначе – энтузиазм перейдёт в неудовлетворённость (не говоря уже о том, что танками поля не пашут – для этого есть трактора).

  • http://thetorch.ru/ Денис Петелин

    Ну цитата была не из спольского, а из тебя, но прошлогоднего 🙂

    Насчет энтузиазма и уровня людей соотвествующего уровню задач – это ты в точку. Но “должна соответствовать”, а не “быть меньше” 🙂

    А супербизоны нужны для супербизонских задач в супербизонских компаниях, это я согласен.

    И это кстати тоже хороший пойнт в поддержку основной мысли поста – нечего от слабых квалификацией людей с низким моральным духом требовать результата как от гипервозбужденных супербизонов в инновационной компании 🙂

  • Тимур Хащеватский

    Хо ! Становится интересно 🙂 Ты меня не с кем не спутал ? Цитату я сейчас прогуглил – действительно не Джоэл, хотя чертовски похоже (я был уверен что это The Guerrilla Guide to Interviewing). Она с
    http://mourk.com/blog/2008/06/18/project-management-advices/

    Я с основной мыслью поста и не спорю – ты всё правильно написал. Мне просто показалось, что из этого следуют далеко идущие выводы 🙂 .

  • http://thetorch.ru/ Денис Петелин

    Не, я хотел сказать только то что сказал 🙂

  • Павел Зайцев

    Сказано верно, но, чтобы точнее понять проблему , надо смотреть через призму цветовых организаций . В “красной” организации не будут работать инструменты “зелёной”, однако в редких случаях отдельную команду можно воспитать до нужного уровня правильно внедряя отдельные инструменты .