План должны утвердить все. В конце выделенного промежутка времени, после того как команда составит свой план для каждой истории, нужно снова собраться вместе и поделиться своим планом с остальными. Не стоит подробно рассказывать обо всех деталях, это не слишком интересно даже вашим коллегам. Что им интересно, так это какие функциональности будут созданы вашей командой в конце цикла. Команда должна отнестись к плану и соглашениям очень серьезно, если хочет иметь репутацию надежной и ответственной.
Чтобы достичь соглашения, может потребоваться некоторое время, особенно если вся работа, которую нужно сделать, не умещается в заданное время разработки. К счастью, вы знаете несколько приемов разбиения историй, описанных ранее. Попробуйте также рассмотреть реализацию истории в состоянии «хорошо», а не «лучше». Это должно помочь уместить в итерацию или спринт все необходимое.
Отдыхаем! Все готово. В прошлом мы любили выполнять планирование днем, чтобы закончить этот процесс за какое-то время до конца рабочего дня, а затем отмечали это событие, расходясь по домам пораньше. На следующий день все приходили отдохнувшими и готовыми начать работу по плану, составленному накануне.
Используйте карту историй во время разработки
Используйте карту, чтобы у членов команды разработки выработалось одинаковое понимание. Я часто слышу от участников различных команд, работающих по процессу Agile, как сильно они любят помогать друг другу и какими продуктивными чувствуют себя, потому что каждую неделю или две видят и демонстрируют работающие программные продукты. Но потом они всегда говорят нечто вроде: «Я, кажется, утратил понимание общей картины. Все, что я вижу, – это маленькие части продукта, который мы создаем». Используйте карту, чтобы облегчить команде понимание продукта в целом или функциональности, над которой вы работаете. Нахождение тактических проектных решений и выполнение задач разработки будет куда эффективнее, если люди хорошо понимают контекст, в который должна встроиться их работа.
Используйте карту для визуализации прогресса
Начав разрабатывать свой продукт к предстоящему релизу, активно пользуйтесь картой: она представляет собой отличную визуальную панель, на которой хорошо видно, что вы уже построили, а что – еще нет.
Одни команды предпочитают убирать детализированные истории с карты после того, как работа над ними завершена. Таким образом, лишь взглянув на карту, можно узнать, что еще осталось сделать.
Другие, не изменяя структуру карты, используют фломастеры или цветные стикеры, чтобы помечать законченные истории. Отойдя назад и взглянув на карту, они легко отделяют то, что уже сделано, от того, что осталось сделать.
Используйте карту, чтобы определить следующие истории для разработки. Каждую неделю владельцы продукта должны оценить, насколько продвинулась работа, а затем принять решение, за что нужно взяться в следующую очередь. Когда карта визуализирует прогресс, ее намного проще просканировать взглядом и выявить области, которые требуют больше внимания. Примерно так работают художники. Отступив на шаг назад и окинув взглядом картину, они могут определить, в каком месте требуется нанести пару мазков.
Используйте простые карты во время семинаров по историям
В каждом цикле разработки вы определяете в карте истории, которые должны пойти в работу следующими. Вы приносите эти истории на заключительные, самые продуктивные обсуждения, проходящие во время семинара по историям.
Во время семинара вы можете применить визуализацию, построив самую простую карту. Возможно, она будет состоять всего из трех-четырех шагов, которые делает пользователь, работая с обсуждаемой сейчас функциональностью. Но размещение этих нескольких шагов в виде стикеров на стене наглядно проиллюстрирует последовательность и сделает дискуссию живее. Начав обсуждать критерии приемки, напишите их на стикерах и добавьте на эту мини-карту. В конце вы получите очень простую визуализацию, которая поддержит обсуждение, состоявшееся на семинаре.
Визуализация рабочего бэклога
Крис Гансен и Джейсон Канеш
Интернет навсегда изменил политику, что доказала избирательная кампания президента Обамы в 2008 году. Онлайн-стратегия Барака Обамы сыграла непосредственную и значительную роль в его продвижении и последующем избрании. Поэтому стратегия выборов 2012 года включала в себя обеспечение сервисов, которые поддерживали массовый сбор средств и традиционное движение снизу, при использовании технологий в качестве коэффициента силы, чтобы компенсировать огромное количество денег со стороны, вращающихся в предвыборной гонке. Мы использовали специальные инструменты, такие как Pivotal и Basecamp, для отслеживания своей работы по созданию личного кабинета кампании Обамы 2012 года, а для того, чтобы все остальные могли легко понять, что происходит, мы использовали стену, которую вскоре полностью заклеили стикерами. Вы можете удивиться, зачем мы тратили время на возню с этими дурацкими стикерами? А вот почему.
Так вышло, что в одном пространстве и над одной целью работали две совершенно разные культуры. Мы сидели в углу, выкрутив лампочку, чтобы работать в относительной темноте. Мы притащили собственные шумные клавиатуры. Мы носили гигантские наушники, чтобы заглушить шум новостей и интервью по кабельному телевидению, звонки и аплодисменты, которые проникали в пространство нашего офиса. Мы даже носили футболки метал-групп вместо официальных костюмов. Все люди, работавшие в предыдущих кампаниях, все эти ребята в наглухо застегнутых костюмах с галстуками имели традиционные взгляды на разработку программного обеспечения. «Мы описываем функции, которые нам нужны, а вы их для нас разрабатываете. Срок – вчера». Они не привыкли к постепенному предъявлению функций и итеративным изменениям или улучшениям, и они уж точно не будут искать оптимальные соотношения, чтобы получить нужные функции в тот момент, когда они могут дать наибольший эффект. Это предвыборная кампания! Нельзя сместить дату представления продукта, разве что указом конгресса! На следующий день после выборов все заканчивается независимо от того, успели мы или нет. Поэтому о том, чтобы они получили абсолютно все, чего хотели, и речи не шло.
Приступив к работе, мы использовали некий базовый подход к составлению карты, чтобы описать людей, использующих нашу систему, и самые различные их потребности. Мы могли затем организовать работу над релизами, разделив их по времени. Это вполне сработало бы, но для людей, проводящих кампанию, было бы сложно оставаться вовлеченными в процесс, пытаясь понять способы работы с системой людей, которые будут использовать ее позднее, более чем через год от сегодняшнего дня. Их головы были заняты тем, что они хотели видеть готовым сегодня. Они строили множество догадок о том, что волонтеры и группы лидеров будут делать. Это было неизбежно, особенно если мы меняли свои представления о том, как все это будет работать.