Методы организации командной работы
интегратор сообществ кружкового движения
Материалы лонгрида обновляются!
Для эффективной командной работы, прежде всего, нужно разобраться, что такое Agile и как им пользоваться
Предприниматель, бизнес-тренер и консультат, agile-коуч «Better life company»
Алексей Дерюшкин
Поделиться в соцсетях
Что такое Agile?
Образ мышления
Гибкий образ мышления — это совокупность двух факторов: постоянного желания обучаться и нацеленности на результат. Если в команде большинство людей с гибким мышлением, то проблем в применении гибких практик не возникнет.
Если же, наоборот, у большинства участников жесткий образ мышления (ригидный), они не хотят развиваться, им не важен результат, то проблемы возникнут при внедрении любых Agile-практик. Поэтому важно, чтобы образ мышления был на первом месте.
Ценности Agile
Ценности Agile — это то, что важно людям, работающим в Agile-команде. Четыре такие ценности зафиксированы в «Agile-манифесте», который появился в 2001 году:
Люди и их взаимодействие важнее процессов и инструментов
Работающий продукт важнее исчерпывающей документации
Сотрудничество с заказчиком важнее согласования условий контракта
Готовность к изменениям важнее следования первоначальному плану
Слово «важнее» — это не противопоставление, а, скорее, не совсем точный перевод английского слова «over». Правильнее: вначале — люди и взаимодействия, потом — процессы и инструменты, и т.д. Нельзя просто забыть о документации или первоначальном плане, здесь нужно соблюдать баланс.
Работайте с ценностями, от этого зависит результат. Если команда разделяет эти ценности, то Agile-практики будут работать и приносить пользу
Если не разделяет, то внедрение любых инструментов будет насилием над командой, она будет сопротивляться изменениям, не понимая, чего от нее хотят.
Принципы Agile
Это конкретные рекомендации, как строить свою работу. Перед внедрением Agile соотнесите свою команду или организацию с этими принципами — насколько они соответствуют каждому из них по шкале от 0 до 10.
12 принципов Agile
Наивысшим приоритетом является удовлетворение потребностей
заказчика, благодаря регулярной и ранней поставке ценного программного
обеспечения
Изменение требований приветствуется, даже на поздних стадиях разработки.
Agile-процессы позволяют использовать изменения для обеспечения заказчику
конкурентного преимущества
Работающий продукт следует выпускать как можно чаще, с периодичностью
от пары недель до пары месяцев
На протяжении всего проекта разработчики и представители бизнеса должны
ежедневно работать вместе
Над проектом должны работать мотивированные профессионалы. Чтобы
работа была сделана, создайте условия, обеспечьте поддержку и полностью
доверьтесь им
Непосредственное общение является наиболее практичным и эффективным
способом обмена информацией как с самой командой, так и внутри команды
Работающий продукт — основной показатель прогресса
Инвесторы, разработчики и пользователи должны иметь возможность
поддерживать постоянный ритм бесконечно. Agile помогает наладить такой
устойчивый процесс разработки
Постоянное внимание к техническому совершенству и качеству
проектирования повышает гибкость проекта
Простота — искусство минимизации лишней работы — крайне необходима
Самые лучшие требования, архитектурные и технические решения рождаются
у самоорганизующихся команд
Команда должна систематически анализировать возможные способы
улучшения эффективности и соответственно корректировать
стиль своей работы
Идеальная гибкая и готовая к изменениям Agile-команда наберет двенадцать десяток (но таких я еще не встречал). «Труп» компании наберет двенадцать нулей (такого я тоже не видел). Обычно компании оказываются посередине шкалы, отличными результатами считаются 7−10 баллов по всем принципам. Можно даже не внедрять Scrum, а всеми возможными способами дотянуть свои результаты до 5−6 баллов по каждому пункту, уже тогда будет классный результат.
Инструменты
Инструменты — это конкретные инструкции, как работать: проводить встречи, планировать, делегировать и т. д. Если инструмент не противоречит Agile-принципам, это Agile-инструмент.
Итак, Agile — это люди с гибким образом мышления, разделяющие ценности Agile-манифеста, строящие работу согласно его принципам и, возможно, использующие инструменты Agile.
Итеративная работа
При линейной работе и планировании на год обычно прописывается, что и как мы делаем в течение каждого месяца. Эти жесткие рамки не позволяют менять стратегию при изменениях на рынке или выявлении ошибок на старте. В противовес линейному существует итеративный подход. Это работа короткими итерациями (отрезками времени), когда мы не пытаемся спланировать сразу всю работу.
Поставив далекую цель, которой хотим достичь, мы планируем маленький шажок к ней, работаем (например, две недели), смотрим на результат и спрашиваем себя, заинтересованных лиц и клиента: а это то, что нам надо? Мы этого хотели? Что можно сделать лучше? Может, что-то убрать? Далее — получаем раннюю обратную связь, проверяем гипотезы и на основе полученных результатов планируем следующий отрезок времени. Максимальный отрезок времени в Scrum — месяц, самый популярный — одна-две недели.
Ключевые плюсы итеративного подхода:
Мы не тратим время и силы на планирование на год вперед
Так легче и безболезненнее принять изменения
За счет постоянной обратной связи мы можем сделать более качественный продукт
Что важно: в конце каждого отрезка времени мы должны получать реальный и ощутимый результат (работающий прототип, новых клиентов и т. п.), который можно оценить и получить обратную связь. Если в конце месяца мы говорим, что сделали 5% от проекта, в этом нет никакого смысла.
Работа со Scrum
Scrum — один из инструментов, который реализует принципы Agile с помощью обязательных трех ролей, пяти событий и трех артефактов. Это фреймворк, т. е. не готовый процесс работы, а его скелет, на который вы наращиваете собственные мышцы. Scrum будет работать при выполнении следующих условий:
У вас должны быть обязательные роли
  • владелец продукта несет ответственность за результат и решает, что именно будет делать команда
  • Scrum-мастер развивает команду и процесс Scrum
  • команда разработки — стабильная, состоящая из 3−9 человек, участники которой не состоят в других командах
Вам нужно проводить события
  • спринт — жестко фиксированный отрезок времени, примерно 1−2 недели; если вы не успели что-то сделать, то растягивать его нельзя
  • планирование спринта
  • ежедневные встречи
  • обзор и ретроспектива спринта
Вы должны постоянно работать над бэклогом продукта, иметь бэклог спринта и инкремент продукта
Инкремент продукта в данном случае — это что-то ценное, получаемое в конце каждой итерации
Scrum — это не волшебная таблетка, а работающий инструмент, который при равных условиях поможет достичь лучшего результата по сравнению, например, с классическим проектным или операционным управлением. Первое, от чего зависит успех Scrum, — это люди, то, как они мыслят, что для них ценно и по каким принципам построена вся работа.
Единственным источником знаний по Scrum является Руководство по Scrum, и я настоятельно рекомендую с ним ознакомиться.
Постановка целей в Scrum
Когда команда переходит на Scrum, она становится самоорганизованной. Ей перестают диктовать, какие задачи выполнять, и начинается управление не людьми, а целями
Как это работает? Владелец продукта ставит перед командой цель, команда самостоятельно придумывает, как она этой цели будет достигать. Если достижение цели невозможно, команда должна сразу сообщить об этом, чтобы вместе решить, что с этим делать. Пропадает диктатура руководства в плане сроков, потому что при жестких задачах и ограниченном времени страдает качество (если что-то идет не так). Scrum — это система работы с гарантированным качеством, здесь важен результат.
Чтобы эта система заработала, необходимо научиться вместо задач ставить цели. Например, отделу маркетинга говорить не «провести три рекламные кампании», а «привлечь еще 20 клиентов» или «повысить выручку на n рублей». И команда сама придумывает, как это сделать, или признается, что этого добиться невозможно. Это делает команду Scrum более ответственной и мотивированной.
Контроль при этом никуда не исчезает, только его точка смещается с предварительного в постконтроль. Спринты обычно короткие, и поэтому риск, что команда сделает непоправимую ошибку, минимален. Поэтому присутствие владельца продукта на обзоре результатов спринта обязательно. Именно здесь команда предоставляет результат и хочет услышать мнение: что сделали правильно или нет, что следует переделать, а чего лучше больше никогда не делать. На этом этапе и проявляется контроль.
Планирование и оценка в Scrum
Как происходит планирование и оценка одной итерации в Scrum?
Есть бэклог продукта, т. е. список всех вещей, которые мы хотим сделать в продукте в будущем. Владелец продукта говорит, что в ближайшие две недели нам важны три цели, и их надо достичь. Команда эти цели максимально подробно и детально декомпозирует на задачи
Если по командному решению и пониманию целей они это сделать не успевают, то говорят об этом владельцу продукта, который присутствует на планировании. И они уже вместе думают, что можно сделать: либо какая-то цель убирается и выносится на следующую итерацию, либо во всех трех целях делается какой-то минимум, а все, что осталось, возвращается в бэклог продукта, чтобы доделать это через две недели
После обсуждения на планировании появляются скорректированные цели и конкретный план работ с оценками. Команда дает обещание, что достигнет целей по определенным критериям оценки результата. Обещание дается на цели, сам же план достижения может трансформироваться в зависимости от ситуации
Оценка бэклога продукта
Среди всех задач выбираем одну-две самых простых и ставим им один балл. Перебираем все остальные и смотрим, во сколько раз они сложнее. Под сложностью понимаются трудоемкость, риски и время.
Оцениваем все задачи по шкале 1, 2, 3, 5, 8, 13, 20, 40, 100 баллов. Это так называемая стандартная шкала оценки для этой техники. Если попадутся задачи меньше базовой, ставим ½ балла, а если больше 100, то знак бесконечности. Так у каждого проекта из общей суммы баллов задач складывается общая сложность. В течение работы команды базовая задача остается прежней, чтобы не происходило инфляции сложности.
Чтобы ответить на вопрос, когда будет сделана вся работа, необходимо знать второе число — скорость работы команды. Если у нас сложность проекта 1000 баллов, а мы знаем, что команда за неделю делает 50 баллов, значит, понадобится 20 недель для завершения проекта.
Плюсы подхода:
Люди точнее сравнивают задачи между собой, чем примеряют их на часы
Задача может быть в два раза сложнее базовой, но новичок будет выполнять ее два дня, а опытный участник — два часа
Оценка точнее потому, что делается всей командой
Прочитайте про специальную механику «покер планирования»
Скорость работы команды вычисляется статистически. Работаем один спринт — команда сделала задачи на 20 баллов, второй спринт — 15 баллов, третий — 25 баллов. После трех-пяти спринтов уже можно вычислить среднюю скорость работы команды
Используем это значение при долгосрочном планировании, чтобы рассчитать время работы над проектом, а также при планировании итераций: команда знает, что за неделю выполняет задачи на 32 балла сложности, и берет в работу не более, например, 35 баллов.
Такой подход не перегружает команду, но дает амбициозные цели и держит ее в здоровом ритме работы. Потому что, если взять в работу 70 при среднем 30−35, то сделаете, скорее всего, 15. При перегрузе скорость команды обычно сильно падает.
Этот же подход применяется при работе внутри спринта. Например, на неделю в работу принято задач на 100 баллов. Значит, при каждой ежедневной встрече количество баллов должно уменьшаться на 20. Нарисуйте график сгорания задач и сравнивайте реальный ход работы с идеальным. Если в середине недели окажется, что осталось нерешенных задач на 60 баллов, а должно быть не более 40, значит, команде надо это обсудить и принять решение, как вернуться в график.
Роли и делегирование
В Scrum существует только три роли:
Владелец продукта
Scrum-мастер
Участник команды разработки
Других ролей в Scrum быть не может. Если речь идет о программном обеспечении, то мы отменяем привычные роли программиста, тестировщика и аналитика, и все становятся разработчиками программного продукта. Это изменение необходимо, чтобы объединять людей вокруг цели.
Роли владельца продукта и Scrum-мастера могут быть объединены с ролью участника команды разработки. Но роли владельца продукта и Scrum-мастера совмещать в одном человеке нельзя.
Scrum-команда — это одноранговое образование. Владелец продукта не начальник разработчикам и Scrum-мастеру. В Scrum нет начальников и подчиненных, нет иерархии. У ролей разная зона ответственности:
Владелец продукта отвечает за качество продукта, его ценность, за то, чтобы команда делала самое важное
Scrum-мастер — за то, чтобы команда работала, как единый механизм, развивалась, умела четко планировать и оценивать свои силы
Команда — за качество и заявленные сроки
Делегирования внутри Scrum-команды не происходит, точнее, это нельзя делать извне команды. Владелец продукта ставит цели, они обсуждаются, декомпозируются на задачи, и команда берет их в работу. Scrum-мастер не распределяет задачи между участниками.
Scrum — это pull-система, где не начальник ставит задачи, а участник команды берет следующую, самую важную задачу, когда завершает предыдущую
Руководство фактически делегирует всей команде принятие решений и не вмешивается в процесс работы. Команда, в свою очередь, должна быть готова взять на себя эту ответственность. Лучше договариваться об этом в самом начале, чтобы после не было «серой зоны» и почвы для конфликта.
Визуализация
Бэклог продукта (в виде эксель-таблички или стены со стикерами) — это все пожелания, что мы хотим увидеть в будущем продукте, и их приоритет.
Бэклог спринта — планы на ближайшую итерацию. Это большой лист бумаги, разделенный на три колонки: «План», «В работе», «Готово». Задачи, написанные на стикерах, висят в одной из трех колонок в зависимости от того, на какой стадии они находятся.
График сгорания задач
На листе А4 на этапе планирования нужно отметить, сколько задач всего (по вертикали) и сколько рабочих дней в спринте (по горизонтали), и соединить две точки прямой линией. Каждый день на встречах считайте, сколько работы осталось, и рисуйте столбики: если ваш столбик выше прямой, то у вас проблемы, если ниже — отличная работа.
Дополнительные материалы
Вводное видео про Agile
Смотрите видео по ссылке
Анатомия Scrum-мастера
Смотрите видео по ссылке
Что делать в первые месяцы после запуска Scrum (ч. 1)
Смотрите по ссылке
Что делать в первые месяцы после запуска Scrum (ч. 2)
Смотрите по ссылке
Какие области знаний и зоны внимания есть у организатора кружка? Сверяйтесь с картой «Системная модель кружка», чтобы увидеть полную картину
Лучшие практики
Задача управленца — обеспечить работу кружка всем необходимым в материальном смысле, а также создать наиболее комфортные условия
Директор ПФМЛ № 239
Максим Пратусевич
Если приходит большая задача, ты не знаешь, с чего начать. Поэтому нужно ее делить
Специалист по развитию проекта РобоФинист
Алексей Хованский
Открыть доступ к онлайн-школе руководителей кружков и получить бесплатно:
  • Помощь экспертов в работе с проектом вашего кружка
  • Личного куратора для ответов на вопросы
  • Сертификат о завершении школы
  • Возможность получить удостоверение о повышении квалификации
Находясь на сайте, вы даете согласие на обработку файлов cookie. Это необходимо для более стабильной работы сайта
Понятно
Close