17.07.2019

Кто управляет scrum командой. Почему вам обязательно нужно узнать, что такое Scrum. Scrum и крупные компании


«Цинизм является ответной реакцией нашего сознания на чувство отчаяния ».
Джефф Сазерленд

Насколько сильна альтернатива PM?

Действуя как топ-менеджер и проект-менеджер, я столкнулся с понятием Scrum как некой экзотической альтернативой классическому project management. Захотелось разобраться, в чем идеологические и технологические особенности данного подхода, и в чем, собственно, революция метода? Прочел несколько монографий. Честно скажу, после первого знакомства особой глубины не разглядел. Методология Скрам показалась несколько ангажированной и неконкретной.

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

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

Являются ли современная парадигма управления проектами, международные и национальные стандарты (ANSI PMbok Guide, PM ICB IPMA, НТК) продуктом, который используют потребители: государство, его институты, бизнес? Да, конечно. Какие проблемные зоны существуют в современной проектной практике, основанной на рабочей методологии? Их несколько, но основных две: невыполнение проектных сроков и превышение бюджета проекта.

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

Данное свойство проектов особенно остро проявляется в областях, требующих инновационного подхода. Метод Скрам (Scrum) способен существенно смягчить названные проблемы. В начале 2000-х годов он явился результатом труда двух новаторов Д. Сазерленда и К. Швабера (США). В своей разработке авторы метода использовали элементы теории Х. Такеучи и И. Нонака, а также идеи системы компании Тoyota (Тайити Оно). И как революционный метод управления проектами модель Скрам уже получила признание в западных странах, причем на сегодняшний день практика его применения не ограничена только бизнесом.

Терминология метода

Авторы метода небезосновательно подвергли критике классическую модель календарного планирования проектов, применяемую уже около 100 лет на основе подхода Г. Гантта. Действительно, ничего нельзя противопоставить утверждению, что наглядная диаграмма Ганта, по существу является одноразовой в использовании. Мало того, что работа над ней занимает массу времени, практически сразу после начала проектных работ каскадная модель в большинстве случаев оказывается бесполезной.

Причина очень проста: ментальные конструкции по содержанию и продолжительности операций никогда не совпадают с реальными событиями проекта. Альтернативой каскадному планированию проекта методология Скрам предлагает гибкий механизм планирования. Мы его рассмотрим несколько позже, а пока разберем основные понятия, которыми оперирует метод Скрам.

  1. Владелец продукта. Эта фигура несет ответственность за то, чтобы командная работа дала результат, который приносит компании прибыль (выгоды). Он должен прекрасно разбираться в сути продукта, в возможностях команды и в приоритетах рынка.
  2. Скрам-мастер. Метафорически это очень интересная роль. «Лидер-слуга», «капитан команды», «тренер-коуч». Его главная задача – вести команду по пути непрерывного совершенствования, устраняя препятствия и причины помех.
  3. Доска Скрам. Обычная офисная доска, разделенная на части: «бэклог», «в работу», «в работе», «на рассмотрение», «сделано!». По ней перемещаются наклеиваемые стикеры с заданиями.
  4. Собрание Скрам. Итоговое собрание по завершении спринта.
  5. Спринт. Временной промежуток от 1 до 4 недель, устанавливающий рабочий ритм деятельности команды Скрам по созданию новой функциональности.
  6. Совещания на ходу или ежедневный Scrum. Короткие собрания команды проекта для ответа на вопросы скрам-мастера о результатах, планах на день и текущих препятствиях.
  7. Бэклог (баклог). Список текущих требований-заданий к созданию функциональности продукта проекта.
  8. Диаграмма выгорания задач. Диаграмма, показывающая количество сделанной и оставшейся работы в рамках поставленной задачи.
  9. Последовательность Фибоначчи. Математическая закономерность, свойственная природе нашей Вселенной, при которой действует особый порядок чисел. Настоящая последовательность хорошо применима для альтернативной оценки продолжительности выполнения работ проекта, благодаря использованию так называемого «покера планирования». Ниже представлена визуальная модель числовой последовательности.
  10. Сюхари (Shu Ha Ri). Сюхари – одна из концепций японских боевых практик (например, айкидо), которая вошла в число принципов метода Скрам как метафора возможности поэтапного (итерационного) достижения совершенства команды проекта.
  11. OODA. Принцип метода Скрам по циклической реализации: наблюдать, ориентироваться, решать, действовать.

Модель последовательности Фибоначчи

Базовая модель метода Скрам. Источник: Асхат Уразбаев. Краткий обзор методологии Скрам

Краткое описание процесса

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

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

Проектная реализация с использованием процессов Scrum состоит из четырех крупных блоков.

  1. Заполнение ролей команды Скрам.
  2. Формирование артефактов Скрам.
  3. Реализация активности.
  4. Воспроизводство цикла Скрам.

Визуальная модель процесса метода Скрам

Состав ролей в методе Скрам прост: владелец продукта, скрам-мастер и команда. В этом же порядке и производится выбор людей на указанные роли. Наиболее близок к классической роли проект-менеджера владелец продукта, он отвечает за формирование и регулярное изменение бэклога продукта. После формирования бэклога команда проекта приступает к планированию предстоящего спринта. При этом активно используется «покер планирования» как инструмент более объективный и взвешенный, основанный на дельфийском методе и последовательности Фибоначчи. Таким образом формируется локальный бэклог на предстоящий цикл нового спринта.

Под артефактами Scrum в методе понимаются: бэклоги продукта и спринта, продукт проекта с новой функциональностью. Каждый спринт своей целью имеет создание новой функциональности продукта, пусть незначительного продвижения, но которое станет очевидным и может быть предъявлено заказчику проекта и другим заинтересованным сторонам. Во внутренней среде цикла спринта команда действует автономно, сопровождаемая «совещаниями на бегу» и перемещениями стикеров на доске Скрам. Пример внешнего вида доски показан ниже.

Пример доски Скрам

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

Комментарии по заполнению ролей

Одной из монографий, с которыми мне удалось познакомиться, явилась книга Д. Сазерленда, в которой Скрам презентуется не иначе как революционный метод управления проектами. Труд изобилует массой примеров из личного опыта автора, успешных проектных решений и громких имен. Эмоциональная окраска аргументации действует впечатляюще. В целом, традиционный для северо-американской методологической школы подход. Несмотря на немного запутанную логику, разобраться в методе проектирования нетрудно. Хорошее подспорье имеется в Приложении. Первые три шага технологии вполне резонно посвящены ролям в команде Scrum.

Шаг 1 алгоритма методологии Скрам

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

  • семантически грамотное трансформирование роли проект-менеджера во владельца продукта, с позиции NLP точно программирующее лидера на результат проектной задачи;
  • ранжирование списка заданий (бэклога) проекта по ценностям (для клиента) и рискам;
  • гибкость в принятии изменения ценности продукта для заказчика проекта;
  • балльная оценка заданий и возможность замены проектных задач в ходе перераспределения приоритетов и остановки спринта.

Шаг 2 алгоритма методологии Скрам

Наиболее ценный методологический посыл шага 2, на мой взгляд, – «обвинять глупо». «Золотой стандарт» численности команды Скрам также принимается без возражений. Для определенного типа культуры команды проекта, например, адхократической или, в другой классификации, партиципативной, я вполне согласен с принципом автономности команды Скрам. Все остальные тезисы шага 2 универсальны и идентичны классическому проектному подходу.

Шаг 3 алгоритма методологии Скрам

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

  1. Если «лидер – не босс», а скрам-мастер – «играющий тренер», тогда кто управляет командой Скрам? Самоуправление, на мой взгляд, не укладывается в концепцию проектного управления.
  2. Возникает вопрос мотивации владельца продукта проекта, скрам-мастера и команды Скрам. В методике описан принцип открытости информации, включая доступа к финансовым данным проекта. Идея неплохая, но, учитывая Макиавеллевскую позицию, присутствующую во многих российских компаниях, у такой возможности среди руководителей, наверное, окажется много противников.

Вопрос формирования артефактов

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

Главная из них состоит в том, что данный список требований Скрам не рассматривается как что-то разово найденное и незыблемое. Бэклог продукта подвергается динамическому переосмыслению каждый раз после окончания спринта. И это весьма ценно, на мой взгляд. Могу сказать из собственной практики, что такого механизма не хватает в классической модели проектного управления.

Шаг 4 алгоритма методологии Скрам

Пятый шаг алгоритма Scrum не менее интересен. Совершенно не хочется погружаться в мистические аспекты чисел. Но у нас с вами есть рядовая прагматическая задача: наилучшим образом составить прогноз продолжительности выполнения работ проекта, используя самую объективную экспертную оценку. К сожалению, «гадание на кофейной гуще» по проставлению часов в MS Project – нет ничего более тоскливого и изнурительного даже с привлечением знающих экспертов. Могу с уверенностью заявить, что лучшего метода, чем «покер планирования» я в проектной практике не встречал. Метод широко известен, поэтому заострять на нем внимание не будем. Замечу лишь, что сочетание метода Дельфи и последовательности Фибоначчи дает поразительные результаты.

Пример пасьянса метода «Покера планирования»

Причин для того, чтобы рассматривать метод Скрам не как тюнинг современной доктрины PM, а как поистине революционный метод управления проектами несколько. Одна из них – это отношение к описанию работы по выполнению проектного задания с позиции историй, что противоположно процессуальному подходу Д. Чампи и М. Хаммера. Люди действительно мыслят образами. С одной стороны, трудно согласиться с тем, что можно не бояться потерять однозначность трактовки результата работы. С другой стороны, если отвлечься от задачного давления и взглянуть на вопрос с позиции подлинной ориентации на клиента проекта, «мягкие» истории могут дать больше для получения нужных результатов заданий.

Шаг 5 алгоритма методологии Скрам

Рассматривая шаги 5 и 6, механизмы расчета динамики производительности, бэклога спринта, сроков окончания проекта и возможности ускорения, не вызывают сомнений. Все достаточно очевидно. Затруднения в понимании возникают относительно одного вопроса: как по окончании каждого спринта добиваться наглядного приращения функциональности продукта? Касаемо проектов разработки программных продуктов такое вполне возможно. А как быть, например, при реализации проекта внедрения системы бюджетирования по методу Скрам, где много этапов подготовительной работы, на которых видимого прироста функциональности не происходит? Представляется, что в данную часть метода требуется дополнительное погружение.

Шаг 6 алгоритма методологии Скрам

Вопросы активных действий в ходе процесса

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

Шаг 7 алгоритма методологии Скрам

Одной из явных находок метода Скрам я считаю технику ежедневных совещаний на ходу. Весьма лаконичное и действенное средство взаимодействия и мотивации команды проекта внутри спринта. Великий спортсмен XX века Мохаммед Али придавал огромное значение регулярному ритуалу для успеха в любом деле. Ежедневное совещание Скрам призвано быть тем мощным регулярным ритуалом, которое подпитывает консолидацию команды на короткий рывок. Коучинговая поддержка, единое территориальное пространство, отсутствие деления по «чинам и званиям» – все это работает на то, чтобы команда Скрам действовала с ускорением проектной реализации.

Шаг 8 алгоритма методологии Скрам

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

Шаг 9 алгоритма методологии Скрам

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

Шаг 10 алгоритма методологии Скрам

Скрам как код антицинизма

Мне импонирует представленная в подзаголовке метафора. Она принадлежит Джеффу Сазерленду, и в ней чувствуется глубокое переживание цинизма как значительного порока современного бизнеса. В целом позиция автора метода Скрам, безусловно, искренняя. Это подкупает. И, в принципе, совсем неплохо, что Сазерленд вводит в управленческий контекст компонент счастья. Подобное делается так по-американски. Вместе с тем, хотелось бы разобраться, почему слово «счастье», и все, что с ним связано в рассматриваемой революционной проектной доктрине, вызывает внутренний дискомфорт. Только ли это субъективно-личностное восприятие, или это некоторый общий культурологический взгляд на предлагаемый подход?

Мы с вами, скорее всего, помним, что происходило в России в конце 90-х – начале 2000-х годов. В страну буквально хлынули «новоявленные нуворишы» со всех уголков мира, и в основном из США, вещающие «правду» о личной и корпоративной успешности. Надо честно сказать, что подобные «откровения» не прошли бесследно, многие бизнесмены взяли на вооружение ключевые аспекты привезенных с Запада теорий управления. Я специально не называю тренинговые курсы, авторские теории и именитые школы. Кто с ними сталкивался, поймут.

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

Происходит быстрое отрезвление и на уровне государства, и на уровне деловых людей. И они начинают понимать, что некоторые привносимые решения, способы ведения бизнеса, построения отношений с персоналом не просто полезны, они служили враждебным и разрушающим целям, приводящим к ломке нашей национальной культуры, в том числе культуре хозяйствования. Я приведу один единственный пример противопоставления двух идеологем: «Разделяй и властвуй!» и «Купеческое слово дороже договора!».

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

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

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

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

Основные принципы организации работы в Scrum командах

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

    Backlog - документ, который содержит список всех требований к проекту (виденье проекта, список того, что должно быть реализовано). Пункты списка упорядочены по степени важности. По ходу проекта список и приоритеты могут меняться, в зависимости от потребностей заказчика, новых идей или изменяющихся условий.

  2. Требования разбиваем на небольшие, ориентированные на пользователей, функциональные части, которые максимально независимы друг от друга, в результате чего мы получим беклог продукта. Затем упорядочите элементы беклога по их важности и произведите относительную оценку объемов каждой истории. Выделите отдельного человека – владельца продукта, который будет отвечать за требования и их приоритеты, замыкая на себя всех заинтересованных лиц.
  3. Всю работу ведем короткими от 1 до 4 недель фиксированными итерациями – спринтами, поставляя в конце каждого из них законченный функционал, который можно при необходимости вывести на рынок – инкремент продукта . Команда согласно своей скорости набирает задачи на неизменяемую по времени итерацию – спринт. Каждый день проводится скрам-митинг, на котором команда синхронизирует свою работу и обсуждает проблемы. В процессе работы члены команды берут в работу элементы беклога согласно приоритету.

    Спринт – короткий этап разработки проекта. Функции, которые нужно реализовать на каждом спринте - зафиксированы и их нельзя менять по ходу спринта. Они разбиты на задачи, а задачи имеют оценки и приоритеты. В классическом Scrum предполагается, что продолжительность спринта фиксирована и составляет от 2 до 4-х недель, в зависимости от опыта команды.

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

Недавно мы в MakeRight.ru с удовольствием прочитали книгу «Scrum. Революционный метод управления проектами» Джеффа Сазерленда. Начав внедрять элементы скрама на практике, мы пришли к выводу, что идеи книги действительно работают.

« Порвите свои визитки. Избавьтесь от званий и титулов, от руководителей и иерархических структур. Дайте людям свободу делать то, что они считают правильным, и возможность нести за это ответственность. Результаты вас поразят » .

Что такое Scrum. Суть методики

Те, кто занимается управлением проектами, да и просто управлением, хорошо знают, насколько сложно организовать слаженную командную работу. Из-за отсутствия слаженности постоянно нарушаются планы, происходит отставание от графика, бюджет проекта раздувается, деньги и время утекают сквозь пальцы, задачи разных подразделений дублируются, люди спорят и не помогают друг другу, хотя, казалось бы, их усилия направлены на достижение одной цели. Кроме того, заказчики часто бывают неудовлетворены окончательным вариантом созданного продукта.

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

Важными характеристиками Scrum является ее гибкость и ориентированность на клиента, так как она предполагает его (клиента) непосредственное участие в процессе работы.

Scrum не требует внедрения каких-либо дорогостоящих инструментов. Схему методики Scrum вкратце можно описать следующим образом:

  1. Для начала необходимо выбрать « Владельца продукта» - человека, обладающего видением того, что вы собираетесь создать или достигнуть.
  2. Затем нужно собрать « Команду» , в которую войдут люди, непосредственно выполняющие работу. Они должны обладать навыками и знаниями, которые помогут воплотить идею владельца продукта в жизнь.
  3. Нужно выбрать « Скрам-мастера» - того, кто будет следить за ходом реализации проекта, обеспечивать проведение коротких собраний и помогать команде устранять препятствия на пути достижения цели.
  4. Приступая к работе, нужно создать максимально полный список всех требований, предъявляемых к продукту или цели. Пункты этого списка должны быть расставлены по приоритету. Список носит название « Бэклог продукта» . Он может развиваться и изменяться на протяжении всего срока реализации проекта.
  5. Участники команды должны оценить по своей системе оценок каждый пункт на предмет сложности и затрат, которые потребуются для его выполнения.
  6. Затем участники, скрам-мастер и владелец продукта должны провести первое скрам-собрание , на котором они запланируют спринт - определенное время для выполнения части заданий. Продолжительность спринта не должна превышать один месяц. За каждый спринт команда нарабатывает определенное количество баллов. Команда должна постоянно стремиться к тому, чтобы превзойти в новом спринте количество наработанных баллов за предыдущий спринт, то есть ее цель - постоянно превосходить свои собственные результаты - « наращивать динамику производительности» .
  7. Чтобы все участники были в курсе состояния дел нужно завести скрам-доску с тремя колонками: « Нужно сделать, или бэклог» ; « В работе» ; « Сделано» . На доску участники клеят стикеры с заданиями, которые в процессе работы поочередно перемещаются из колонки « Бэклог» в колонку « в работе» , а затем в « сделано» .
  8. Ежедневно проводится скрам-собрание . По выражению Джеффа Сазерленда « это пульс всего процесса Scrum» . Суть его проста - ежедневно, на ходу, пятнадцать минут на то, чтобы все дали ответы на три вопроса: « Что ты делал вчера, чтобы помочь команде завершить спринт?» , « Что ты будешь делать сегодня, чтобы помочь команде завершить спринт?» , « Какие препятствия встают на пути команды?» .
  9. По завершении спринта команда делает его обзор - проводит встречу, на которой участники рассказывают, что сделано за спринт.
  10. После показа результатов работы за спринт участники проводят ретроспективное собрание, на котором обсуждают, что команда делала хорошо, что можно сделать лучше, что можно улучшить прямо сейчас.

Недостатки традиционного подхода к управлению проектами

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

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

« С распространением в 1980-е годы персональных компьютеров стало проще создавать разные затейливые диаграммы - и делать их по-настоящему комплексными - они превращались в подлинные художественные произведения. Весь ход проекта детально размечен. Каждый отдельный шаг. Любая стадия. Всякая дата поставки. Действительно, диаграммы Ганта производят глубокое впечатление. Существует лишь единственная проблема: они всегда неправильны - без исключения » .

Почему? Как отмечает Джефф Сазерленд, Генри Гант придумал такие диаграммы еще в 1910 году. Они получили широкое распространение в Первой мировой войне. Однако, « каждый, кто изучал историю этой войны, знает, что ни подготовка кадровых ресурсов, ни система организации никогда не были ее сильными сторонами. Мне не дано понять, почему концепт времен Первой мировой войны становится-де-факто аналитическим инструментом проектирования и применяется даже в XXI веке. Мы отказались от принципов позиционной войны, но каким-то образом ее „ окопные“ организационные идеи остаются популярными и по сей день» .

В современных условиях эта схема неуместна и похожа на модель Политбюро ЦК КПСС, которое « верило» отчетам, которые оно получало накануне крушения Советского Союза и которые имели мало общего с реальным положением дел.

« Сегодня, как и в те годы, отчеты продолжают быть важнее действительности - а ведь они, судя по всему, призваны ее описывать, - но если вдруг всплывут несоответствия, то виновным назначают реальность, а не диаграмму » .

Планы рассыпаются в прах. Альтернатива - это Scrum

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

Слово scrum (« схватка» ) автор позаимствовал из игры в регби. Оно « обозначает метод командной игры, позволяющий завладеть мячом и вести его дальше по полю, а для этого нужны слаженность, единство намерений и четкое понимание цели. „ Схватка“ представляет собой идеальную модель полного взаимодействия игроков » . И это именно то, что требуется для успешной командной работы.

Изображение с сайта brendanmarsh.com

В отличие от традиционного подхода, предполагающего подконтрольность и предсказуемость, составление планов, таблиц и диаграмм, которые никогда не работают, методика Scrum дает возможность в четко обозначенные и непродолжительные циклы (спринты) добиваться поставленных целей.

« Каждый спринт планируется предварительно на специальных встречах. Участники оценивают, какой объем работ, на их взгляд, они смогут сделать, скажем, в течение следующих двух недель. Из списка задач, расставленных по приоритетам, они выбирают очередные единицы работы, предназначенные для выполнения, записывают их на стикеры, которые приклеивают на стену. Группа решает, сколько единиц работы они в состоянии выполнить за предстоящий спринт» .На завершающей стадии спринта участники снова собираются вместе и показывают друг другу, чего удалось достичь за время совместной работы. Они смотрят, сколько единиц работы, занесенных на стикеры, действительно доведены до конца. Не все удается выполнить? Значит, для этого спринта было отобрано слишком много задач. Бывает наоборот - недостаточное количество задач. В данном случае важно другое: у группы развивается чувство собственной скорости » .

Когда все участники поделятся своими результатами работы, команда начинает разбирать все, что было сделано за спринт, но делая упор не на обсуждение продукта, а на то, каким образом он делался. « Как улучшить сотрудничество в следующем спринте? Что препятствовало в последнем спринте? Из-за чего мы продвигаемся не так быстро, как хотим?» - вот вопросы, которые они ставят перед собой » .

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

Как отмечает Джефф Сазерленд, благодаря использованию Scrum, группы учатся добиваться « сверхэффективности» , поднимая свою производительность на триста или четыреста процентов.

Философия scrum

В методике Scrum нашло свое отражение увлечение автором книги японскими боевыми искусствами. По его словам, в Японии к « Scrum не относятся как к сиюминутной причуде. Японцы расценивают Scrum как подход к решению вопросов, как образ действий, как способ существования бытия - в общем, как образ жизни. Когда я обучаю людей этой методике, я часто рассказываю о своем многолетнем опыте занятий японским боевым искусством айкидо » .

Общее у айкидо и Scrum то, что ими можно овладеть лишь в процессе работы, когда « ваше тело, ваш разум и ваш дух соединяются в единое целое через постоянную практику и стремление к совершенству. Занимаясь айкидо, мы постигаем понятие сюхари (Shu Ha Ri) - это одновременно и концепция боевых искусств, и показатель уровня мастерства » .

Суть командной работы в Scrum

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

  • непрекращающийся поиск совершенства;
  • автономность - способность к самоорганизации;
  • многофункциональность. Наличие разных специалистов и культура взаимодействия и взаимопомощи.

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

Какого размера должна быть команда? Джефф Сазерленд рекомендует малочисленные группы - около семи человек. Он приводит данные, что если группа состоит из более чем девяти человек, то скорость ее работы падает.

Кроме того автор напоминает о «законе Брукса»:

« Если проект не укладывается в сроки, то добавление рабочей силы задержит его еще больше » .

Главный в команде - это скрам-мастер . Его обязанность - обеспечивать короткие собрания, их открытость, помогать группе идти сквозь помехи, которые мешают работе, вести команду по пути постоянного совершенствования« и регулярно искать ответ на вопрос « Как нам делать еще лучше то, что мы уже делаем хорошо?» .

Нет мультизадачности

Автор предостерегает от мультизадачности - на самом деле ее нет, наш мозг не может выполнять два действия одновременно, он просто переключается между задачами, а общее время выполнения каждой из них увеличивается по сравнению с тем, если бы мы выполняли их поочередно. Методика Scrum предполагает, что нужно поочередно выполнять все задачи, а не « сбалансированно вести пять проектов одновременно» .

« Действуя традиционным методом, то есть пытаясь делать все и сразу, группа завершит свои три проекта до конца июля. Если группа подойдет к делу, вооружась гибкой стратегией, например, Scrum, и будет работать поочередно над каждым проектом, минимизируя затраты времени и сил на переключение контекста, она сможет закончить все к началу мая» .

Никаких переработок

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

« Этот феномен окрестили „ истощение эго“ . Идея заключается в том, что принятие любого решения требует от вас энергетических затрат. Это странный вид истощения - вы не чувствуете физического утомления, но ваша способность принимать взвешенные решения снижается. Что на самом деле меняется, так это наш самоконтроль - наша способность быть дисциплинированными, вдумчивыми и просчитывать последствия» .

Вывод: в нерабочее время отдыхайте, полностью отдалитесь от работы, заряжайтесь приятными впечатлениями.

« Методология Scrum подразумевает, что те, кто применяет ее, перестают измерять свою работу только часами. Часы отражают лишь затраты. Измеряйте лучше результат. Кого волнует, сколько кто-то потратил времени на то, чтобычто-то сделать? Единственное, что имеет значение, - как быстро и качественно это было сделано» .

Суть работы - поток

Scrum помогает попасть в « поток» - состояние наивысшей концентрации, когда вы делаете то, что нужно, не затрачивая на это усилий, не заставляя себя и не подгоняя. Автор считает, что главное для успешной работы - достичь и управлять этим состоянием. « В своей работе вам нужно достичь главного - управления потоком, не требующего никаких усилий. В боевых искусствах или медитативных практиках мы достигаем чувства единения в движении, которое не требует усилий, - это энергия, беспрепятственно текущая сквозь нас. Когда вы смотрите на великих танцоров или певцов, то чувствуете, как они покоряются этой энергии. К достижению такого состояния мы должны стремиться в нашей работе» .

Как его достичь? За состоянием потока стоит внутренняя дисциплина,

« Не должно быть ни одного движения впустую» .

Скрам и счастье

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

В конце каждого спринта участники устраивают ретроспективное собрание, на котором рассказывают о своих работах и перемещают рассмотренные задачи в колонку « Сделано» , а потом обсуждают, что хорошо, а что можно улучшить. Они находят основную помеху и думают, как ее устранить в следующем спринте. Это и есть решение проблемы непрерывного совершенствования.

« Анализируя только показатели производительности, вы никогда не узнаете о будущем снижении темпа, пока ситуация не выйдет из-под контроля. Но если вы внимательно следите за индексом счастья и замечаете его падение в коллективе, то сразу отмечаете будущую угрозу, даже при условии, что производительность продолжает расти. Вы предупреждены о проблеме и собираетесь с нею разобраться как можно быстрее» .

Элементы скрам

Спринты

Как уже отмечалось выше, в начале спринта и для обеспечения открытости и наглядности, нужно завести специальную доску и поделить ее на три колонки: « Бэклог» ; « В работе» ; « Сделано» . Перед каждым спринтом члены команды наклеивают в колонку « Бэклог» стикеры с задачами, которые, по их мнению, они могут выполнить за спринт. В течение спринта, любой член команды, взявшись за задачу, переклеивает стикер из раздела « Бэклог» в колонку« В работе» . После выполнения задачи - в колонку « Сделано» . Таким образом, каждый видит, над чем сейчас работают другие участники.

Изображение с сайта nyaski.ru

Однако есть важное замечание - « ничто не переносится в колонку „ Сделано“ до тех пор, пока эта часть проекта не будет опробована клиентом» .

« Еще один важнейший аспект спринта: как только команда утверждает список требований, задачи из этого списка „ блокируются“ . Никто не имеет права их менять или вносить добавления » . Автор рекомендует это из-за того, что любое вмешательство замедлит работу команды.

Ежедневные собрания

Суть в том, чтобы они проводились стоя, каждый день, в одно и то же время, их длительность не превышала пятнадцать минут и на них участники задавали одни и те же три вопроса: « Что ты делал вчера, чтобы помочь команде завершить спринт?» , « Что ты будешь делать сегодня, чтобы помочь команде завершить спринт?» , « Какие препятствия встают на пути команды?» .

Делайте до конца

В Scrum важно научиться чувствовать ритм команды. Наихудший вариант - когда по завершении спринта что-то остается сделанным наполовину. Уж лучше вообще тогда не начинать это дело.

« Израсходованы ресурсы, силы, время, деньги, но полностью функционирующий продукт не получен» .

Планирование в Scrum

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

Что делать потом? Каждый пункт списка нужно оценить на предмет того, сколько на его выполнение уйдет сил, времени и других ресурсов. Каким образом производить оценку? Автор предлагает шкалу относительных оценок. Например, можно сравнивать задачи « в собаках» . Эта проблема - такса или ретривер? А может быть, дог?

Но в любом случае удобнее установить числовые значения. Например, « Такса - единица; дог - тринадцать; лабрадор стал пятеркой, а бульдог - тройкой » .

Автор также предлагает использовать интересную методику покер планирования. Ее суть - каждому участнику процесса планирования дается колода карт с числами Фибоначчи - 1, 2, 3, 5, 8, 13 и так далее. Каждый пункт списка, единица работы, которая должна быть оценена, выкладывается на стол. « Затем каждый участник группы берет ту карту, число на которой, по его мнению, соответствует объему необходимых усилий, и кладет ее на стол рубашкой вверх. Затем все одновременно открывают карты. Если расхождение не больше чем на две карты (скажем, пятерка, две восьмерки и тринадцать), команда просто их складывает, берет среднее арифметическое (в данном случае 6,6) и переходит к следующей задаче. Помните, мы говорим об оценках, а не о жестких планах. И оценках небольших фрагментов проекта. Если расхождение получается более чем на три карты, тогда те, кто положил карты с самым большим и самым маленьким значением, объясняют, почему они так считают. Затем проводится еще один раунд покера планирования. В противном случае они лишь усреднят оценки, что сделает результаты слишком приблизительными » .

Требования - это истории

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

« Представьте, что вы составляете „ пожелание пользователя Amazon.com“ . Пробный вариант выглядит так: „ Мне как потребителю нужен крупнейший в мире магазин книг, где я могу купить любую книгу в любое время“ .Это описание вполне отвечает характеру Amazon, но история получилась слишком расплывчатой, чтобы с ней можно было что-то сделать. Нужно фрагментировать нашу историю. Сделать ее действительно очень конкретной и функциональной. Приведу несколько образцов пользовательских историй, которые вы можете написать, имея в виду книжный интернет-магазин : Как потребителю мне удобно искать книги по жанрам, чтобы быстро найти те, которые я люблю читать. Как потребитель я, отбирая книги для покупки, хочу класть сразу каждую в корзину. Как управляющий по выпуску новой продукции я хочу иметь возможность отслеживать покупки наших клиентов, чтобы быть в курсе, какие книги им можно предлагать. Вот профессионально сделанные пожелания пользователя, характер которых группа должна принять во внимание » .

Пользовательская история должна быть завершенной, независимой от разных обстоятельств, реализуемой на практике. Эти критерии говорят о готовности истории. Также важно, чтобы историю можно было оценить на предмет ее выполнимости.

Как планировать спринт

В Scrum процесс планирования происходит в начале каждого нового спринта и так и называется - « планирование спринта» . « Все собираются вместе, просматривают список пользовательских историй, которые уже стоят в очереди на выполнение; выясняют, какое количество задач может взять на себя каждый участник группы; тщательно взвешивают, смогут ли они за этот спринт довести до полной готовности отобранные задания; смогут ли продемонстрировать заказчику сделанные единицы работ и показать ему готовые функции продукта; смогут ли сами себе в конце спринта сказать, что они со всем справились » .

После этого команда дружно произносит: « Вперед!» - и принимается за работу

Но что такое работа? Рутина, обязаловка? С точки зрения скрам, работа - это история. Что это значит? Это означает, что вам следует представить человека, которому нужно то, что вы делаете; потом то, что это такое, и, наконец, зачем людям это нужно.

Командам нужно хорошо узнать свою динамику - сколько работы она может выполнить за один спринт. Это поможет ей работать разумнее и устранять все помехи на своем пути.

« Динамика x время = результат. Узнав, насколько быстро вы продвигаетесь, вы сможете понять, когда окажетесь на финише» .

Открытость во всем

Скрам предполагает прозрачность всех действий и процессов.

Это выражается в доске с тремя колонками, к которой имеют доступ все участники команды.

« Секретность - яд. Ничто не может держаться в тайне. Все должны знать всё, включая финансовые данные. Запутывание следов нужно только тем, кто ищет собственной выгоды» .

Расстановка приоритетов

Эту диаграмму нужно иметь в виду каждому предпринимателю. Суть работы заключается в поиске золотой середины - сбалансированной концепции между тремя крайностями:

  • Вы выдвигаете на первый план то, что вы можете предложить. Тогда возникает риск сделать никому ненужный продукт;
  • Вы ориентируетесь на рынок. Тогда вас могут опередить или уничтожить конкуренты;
  • Ваше главное стремление - большие продажи. Тогда вы рискуете выпустить на рынок посредственный продукт.

Бэклог

Как уже отмечалось, бэклог в скраме - это список требований и функций продукта, упорядоченный по степени важности задач. Он может содержать и сотни заданий или несколько.

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

Как правильно расставить приоритеты? « Для этого нужно выяснить, какие пункты списка:

  • имеют самое большое значение для хода работ над проектом;
  • важнее всего для заказчика или будущего потребителя;
  • принесут максимальный доход;
  • проще всего осуществить » .

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

Владелец продукта

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

« Скрам-мастер и команда отвечают за то, каков будет темп их труда и как быстро они закончат проект. Владелец продукта ответствен за то, чтобы результативная командная работа превратилась в результат, приносящий прибыль » . Владельцу продукта необходимо отлично знать рынок и у него должны быть полномочия для принятия решений.

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

Минимизация рисков в скраме

Так как в скраме предусмотрена пошаговая сдача проекта, то это способствует минимизации рисков. Это помогает быстрее показывать клиенту продукт и получать от него обратную связь.

« Методология Scrum полезна бизнесу тем, что быстро отвечает на вопрос: сможем ли мы заработать деньги, если сделаем то или иное? »

Вам не нужно тратить огромные средства перед тем, как понять, что-то не работает.

Как внедрить Scrum прямо сейчас


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

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

О нас

Мы рассказываем о ключевых идеях из лучших книг жанра нон-фикшн. В нашей библиотеке более сотни бестселлеров, в том числе и тех, которые еще не изданы на русском.

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

Это руководство для разработчиков ПО и тестеров поможет понять гибкую методику SCRUM и начать работать по ней.

Узнайте базовые, но важные термины, используемые в процессе Agile Scrum вместе с реальным примером полного процесса.

SCRUM - это процесс в гибкой методике, которая представляет собой сочетание итеративной и добавочной моделей.

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

Некоторые из ключевых особенностей SCRUM:

  • Организованная и целеустремленная команду
  • Никаких требований документов, достаточно иметь точные тексты по существу.
  • Функциональная команда работает как единое целое.
  • Тесная связь с пользователем, помогающая чтобы понять особенности.
  • Имеется точная временная ось максимум 1 месяц.
  • Вместо того, чтобы делать все действия за раз, Scrum делает все понемногу на заданном промежутке
  • Прежде чем совершать какие-либо действия рассматриваются характеристики и доступность ресурсов.

Чтобы хорошо понять эту методику, важно понимать ключевые термины SCRUM.

Важные термины SCRUM:

1. Scrum-команда

Scrum-команда – это команда из 7 +/– 2 члена. Члены команды представляют собой смесь из компетентных разработчиков, тестеров, людей из база данных, операторов техподдержки, т. д., а также владельца продукта и scrum-мастера. Все эти люди работают в тесном сотрудничестве в течении заданного рекурсивного промежутка для разработки и выполнения указанных функций.

2. Спринт

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

3. Владелец продукта

Владелец продукта является главным продавцом или ведущим пользователем разрабатываемого приложения.

Владелец продукта – это человек, который представляет сторону клиента. Он/она имеет решающий авторитет и всегда должен/-а быть доступен/-а для команды. Он/она должен/-а быть доступен/-а в случае, когда кому-либо нужно что-то объяснить. Для владельца продукта важно понять и не устанавливать новые требования в середине спринта или когда он уже начался.

4. Scrum-мастер

Scrum-мастер является координатором команды scrum. Он/она следит за тем, чтобы команда scrum была продуктивной и прогрессивной. В случае каких-либо помех scrum-мастер находит и устраняет их для команды.

5. Пользовательская история

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

Как <тип пользователя>

я хочу <доступная цель>

для достижения <результат/причина>

Например:

Как администратор я хочу иметь возможность блокировки пароля для ограничения несанкционированного доступа в случае, если пользователь вводит неправильный пароль 3 раза подряд.

Есть некоторые характеристики пользовательских историй, которых должны придерживаться. Пользовательские истории должны быть краткими, реалистичными, возможно, оценивающими, полными, оборотными и контролепригодными.

Каждая пользовательская история имеет критерий приемки, который должен быть четко определенным и понятным для команды. Критерии приемки подробно описывают пользовательские истории, обеспечивают поддерживаемыми документами. Это позволяет детализировать пользовательские истории. Любой член команды может записывать критерии приемки. Команда проверки основывает их тестовые случаи/условия по этим критериям.

6. “Эпопеи”

Эпопеи являются неясными пользовательскими историями. Или же, можно сказать, что это пользовательские истории, которые не определены и хранятся для будущих спринтов. Просто попробуйте связать это с жизнью, представьте, что вы уходите в отпуск. Так как вы уезжаете на следующей неделе, у вас все распланировано: бронирование номера в отеле, осмотр достопримечательностей, собрана дорожная сумка др. Но что насчет вашего отпуска в следующем году? У вас есть только смутная мысль, что вы можете пойти в место XYZ, но у вас нет никакого детального плана.

“Эпопея” – она как ваш отпуск в следующем году: вы знаете, что вы можете поехать, но куда, когда и с кем – пока что нет мыслей на этот счет.

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

7. Журнал пожеланий по продукту

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

8. Журнал пожеланий спринта

За раз берется одна пользовательская история из журнала пожеланий по продукту. Scrum- команда проводит мозговые штурмы, определяет выполнимость и решает, над какой историей работать во время данного спринта. Общий список всех пользовательских историй, над которыми scrum-команда работает во время определенного спринта, называется журналом пожеланий спринта.

9. Очки за пользовательскую историю:

Эти очки являются числовым обозначением сложности пользовательской истории. Основанные на этих очках, определены оценка и объем работы одной истории. Очки не абсолютны, они относительны. Чтобы убедиться, что наши усилия и оценки верны, нужно проверить, не велики ли пользовательские истории. Чем меньше и четче пользовательская история, тем точнее будет ее оценка.

Каждой пользовательской истории определяется балл из ряда Фибоначчи (1, 2, 3, 5, 8, 13, 21). Чем выше число, тем сложнее история.

Если точнее, то

  • Если вы ставите 1 / 2 / 3 очка, это означает, что история небольшая и имеет низкую сложность.
  • Если вы даете 5 / 8 очков, то это средняя сложность и
  • 13 и 21 очко – история очень сложная.

Здесь сложность заключается в разработке и в объеме тестовых работ

Чтобы решить, сколько очков дать, scrum-команда начинает мозговой штурм коллективно это решает. Может случиться так, что команда разработки даст конкретной истории 3 очка, потому что для них это может быть 3 строки кода замены, но команда тестирования даст 8 очков, потому что им кажется, что эта замена кода будет больше влиять на модули, поэтому объем работы при тестировании будет больше. Но сколько бы очков вы ни дали, вы должны обосновать свое решение. Таким образом, происходит мозговой штурм и команда решает, сколько очков поставить.

Всякий раз, когда вы решаете сколько очков поставить, учитывайте следующие факторы:

  • Отношение истории к другим приложениям/модулям,
  • Набор навыков ресурса
  • Сложность истории
  • Повествовательное обучение,
  • Критерии приемки пользовательский историй

Если вы не осведомлены о конкретной истории, не изменяйте ее размер.
Если вы видите, что балл, поставленный истории, очень высокий, разбейте ее на истории поменьше.

10. Диаграмма сгорания задач

Диаграмма сгорания задач представляет график, который показывает предполагаемые v/s реальных усилий задач scrum.

Это механизм отслеживания для конкретного спринта. Каждый день задачи отслеживаются, чтобы проверить продвигаются ли истории к завершению или нет.

Пример: Чтобы понять это, посмотрите на рисунок:

Я выбрал:

  • Двухнедельный Спринт (10 дней)
  • 2 ресурса фактической работы спринта.

«История»-> колонка показывает пользовательские истории, взятые для спринта. «Задача»-> столбец показывает список задач, связанных с пользовательскими историями.

«Объем работы»-> колонка показывает объем работы. Сейчас эта мера является общим объемом работы для завершения задачи. Она не изображает объем работы какого-то конкретного человека.

«День 1 – день 10»-> – столбец (столбцы) показывает/-ют время, оставшееся до завершени истории. Обратите внимание, что это НЕ то время, что уже прошло, НО время, которое еще остается.

«Предполагаемый объем работы»-> показатель общих объема работы. Для «Старта» это просто итог всей задачи: СУММА (C5: C15)

Общий объем работы, который должен быть выполнен за 1 день, составляет 70 / 10 = 7. Таким образом, в конце первого дня объем работы должен уменьшиться до 70-7 = 63. Аналогичным образом это рассчитывается для всех дней до 10го, когда предполагаемый объем работ должен равняться нулю (строка 16)

«Оставшийся объем работы»-> исходя из названия, это – объем работы, оставшийся до завершения истории. Также может случиться, что фактический объем работы становится больше или меньше, чем предполагалось.

Вы можете использовать функции и диаграммы в Excel для создания этой диаграммы сгорания задач.

Этапы диаграммы сгорания задач:

  1. Введите все истории (колонка A5 – А15)
  2. Введите все задачи (колонка B5-B15)
  3. Введите дни (1-день – 10-й день)
  4. Введите начальный объем работы (суммируйте задачи C5-C15)
  5. Примените формулу для расчета «предполагаемого объема работы» на каждый день (от дня 1 до дня 10). Введите формулу в D15 (с16-$C$ 16/10) и перетяните ее на все дни.
  6. На каждый день введите фактический объем работы. Введите формулу в D17 (СУММА (D5:D15)) суммировать оставшийся объем работы и перетащите ее на все остальные дни.
  7. Выберите это и создайте диаграмму следующим образом:

11. Скорость команды

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

Например : Для конкретного спринта: общее количество пользовательских историй – 8. Каждая из них имеет определенное количество очков

Таким образом, скорость – это сумма очков = 30

12. Определение “готово”:

История СДЕЛАНА в Scrum, только тогда, когда есть развитие, полное обеспечение качества и возможность попасть в производство.

Деятельность в SCRUM:

#1: Совещание по планированию

Совещание по планирования является отправной точкой SCRUM. Это совещание, где собирается вся scrum-команда. Владелец продукта на основе приоритета выбирает пользовательские истории из журнала пожеланий по продукту и команда начинает мозговой штурм. Во время обсуждения scrum-команда определяет сложность истории и измеряет ее согласно ряду Фибоначчи. Команда определяет задачи, а также объем работы (в часах), которые могли бы быть сделаны для завершения реализации пользовательской истории.

«Предварительное планирование встречи» предшествует встрече. Это как домашняя работа, которую scrum-команда делает, прежде собраться на формальной встрече по планированию. Команда пытается записать зависимости или другие факторы, которые они хотели бы обсудить на встрече.

#2: Выполнение задач спринта

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

#3: Ежедневное scrum-совещание (звонок)

Во время цикла спринта, каждый день scrum-команда встречается не более чем на 15 минут (это может быть звонок, который рекомендуется проводить в начале дня). На собрании ставится 3 вопроса:

  1. Что сделал член команды с момента прошлой встречи
  2. Что член команды планирует сделать сегодня
  3. Имеются ли какие-нибудь препятствия для команды

Над решением этих проблем работает Scrum-мастер. В том случае столкновения участника с любого рода трудностями, scrum-мастер помогает их решить.

#4: Обзор итогов

В конце каждого цикла спринта SCRUM-команда снова встречается и демонстрирует владельцу продукта осуществление пользовательских историй. Владелец продукта может сличить истории в соответствии с их критериями приемки. Это опять же ответственность Scrum-мастера – председательствовать на этой встрече.

#5: Ретроспективное совещание

Ретроспективное совещание происходит после обзора итогов. SCRUM-команда собирается, обсуждает и документирует следующие моменты:

  1. Что было сделано хорошо в предыдущем спринте (наилучшая практика)
  2. Что было сделано не очень хорошо
  3. Извлеченные из этого уроки
  4. Элементы действий.

Scrum-команда должна продолжать следовать лучшим методам работы, игнорировать «не лучшую практику» и выполнять уроки, извлеченных в ходе последующих спринтов. Ретроспективное совещание помогает постоянно совершенствование процесс SCRUM.

Как выполняется процесс? Пример!

Прочитав о технических жаргонах SCRUM, позвольте мне попытаться продемонстрировать весь процесс с примером.

Шаг #1 : Представим SCRUM-команду из 9 человек, в составе которых 1 владелец, 1 Scrum-мастер, 2 тестера, 4 разработчика и 1 администратор базы данных.

Шаг #2 : Спринт цикл, например, будет длиться 4 недели. Итак, у нас 1 месяц спринта: с 5 июня по 4 июля.

Шаг #3 : Владелец продукта имеет приоритетный список пользовательских историй в журнале пожеланий по продукту.

  • Владелец продукта берет 1 историю из журнала пожеланий по продукту, описывает ее и передает его команде для мозгового штурма.
  • Вся команда обсуждает и обращается непосредственно к владельцу продукта, чтобы подробно объяснить пользовательскую историю.
  • Аналогичным образом принимаются и другие пользовательские истории. Если возможно, то команда может продолжать, а также измерять истории.

После обсуждения члены команды возвращаются на свои рабочие места и

  • Определяют свои индивидуальные задачи для каждой истории.
  • Вычисляют точное количество времени, которое им потребуется для работы. Как участник рассчитывает это время? Давайте проверим:

Общее количество рабочих часов = 9

Минус 1 час для перерыва, минус 1 час для встреч, минус 1 час для писем, обсуждений, устранения неполадок и др.
Таким образом, фактические рабочие часы = 6

Общее количество рабочих дней во время спринта = 21 день.
Общее количество доступных часов = 21 * 6 = 126

Участник находится в отпуске 2 дня = 12 часов (это варьируется для каждого члена, некоторые могут взять отпуск, некоторые не могут.)
Количество фактических часов = 126-12 = 114 часов.

Это означает, что участник обычно будет доступен на 114 часов во время этого спринта. Поэтому он будет разделять свою индивидуальную спринт задачу таким образом, что за 114 часов она будет достигнута.

  • Окончательный мнение о пользовательской истории из журнала пожеланий по продукту составлено, и история перемещается в журнал пожеланий спринта.
  • Для каждой истории, каждый участник команды объявляет свои определенные задачи. Если требуется провести обсуждение этих задач, то можно измерить или изменить их размер (вспомним ряд Фибоначчи!).
  • Scrum-мастер или команда вводит свои индивидуальные задачи и их время для каждой истории в программу.
  • После того, как будут завершены все истории, Scrum-мастер отмечает начальную скорость и Спринт официально начинается.

Шаг #6 : После начала спринта, каждый участник команды начинает работать над назначенными задачами.

Шаг #7 : Команда ежедневно встречается на 15 минут и обсуждает 3 вопроса:

  • Что они делали вчера?
  • Что они планируют сделать сегодня
  • Есть ли какие-нибудь помехи?

Шаг #8 : Scrum-мастер ежедневно отслеживает прогресс с помощью «Диаграммы сгорания задач»

Шаг #9 : В случае каких-либо помех Scrum-мастер решает их.

Шаг #10 : 4 июля команда собирается вновь для обзора итогов. Каждый член команды демонстрирует реализованную пользовательскую историю владельцу продукта.

Шаг #11 : 5 июля команда собирается снова для ретроспективного совещания, где они обсуждают

  • Что прошло хорошо?
  • Что прошло не хорошо
  • Элементы действий.

Шаг #12 : 6 июля команда снова встречается для совещания предварительного планирования следующего спринта, и цикл продолжается.

(Нажмите, чтобы увеличить изображение)

Программы, которые могут быть использованы для деятельности SCRUM:

Есть много инструментов, которые могут широко использоваться для отслеживания деятельности scrum. Вот некоторые из них:

  • XPlanner
  • VersionOne
  • Sprintometer
  • ScrumNinja

Заключение:

В начале люди могут столкнуться с некоторыми трудностями пытаясь усвоить эту методику, но, благодаря практике, вы увидите, что SCRUM творит чудеса. SCRUM сосредотачивает ресурсы, так что вы можете видеть, как ваше приложение развивается.

Многие временные организации вдохновляют команду (в качестве задачи scrum) посвятить пару часов самостоятельному обучению и развитию. Также во время обзора члены группы показывают что они изучили, а иногда представляют программы или приложения, которые они разработали. Лично я ценю этот метод, потому что он дает людям шанс расширить свои знания, а также показать свои навыки.

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

Основа Scrum

Роли
В методологии Scrum всего три роли:

  • Scrum Master
  • Product Owner

Скрам Мастер (Scrum Master) – самая важная роль в методологии. Скрам Мастер отвечает за успех Scrum в проекте. По сути, Скрам Мастер является интерфейсом между менеджментом и командой. Как правило, эту роль в проекте играет менеджер проекта или тимлид. Важно подчеркнуть, что Скрам Мастер не раздает задачи членам команды. В Agile команда является самоорганизующейся и самоуправлямой. Основные обязанности Скрам Мастера:

  • Создает атмосферу доверия
  • Участвует в митингах в качестве фасилитатора
  • Устраняет препятствия
  • Делает проблемы и открытые вопросы видимыми
  • Отвечает за соблюдение практик и процесса в команде

Скрам Мастер ведет Daily Scrum Meeting и отслеживает прогресс команды при помощи Sprint Backlog, отмечая статус всех задач в спринте. ScrumMaster может также помогать Product Owner создавать Backlog для команды.

Product Owner – это человек, отвечающий за разработку продукта. Как правило, это product manager для продуктовой разработки, менеджер проекта для внутренней разработки и представитель заказчика для заказной разработки. Product Owner – это единая точка принятия окончательных решений для команды в проекте, именно поэтому это всегда один человек, а не группа или комитет. Обязанности Product Owner таковы:

  • Отвечает за формирование product vision
  • УправляетROI
  • Управляет ожиданиями заказчиков и всех заинтересованных лиц
  • Координирует и приоритизирует Product backlog
  • Предоставляет понятные и тестируемые требования команде
  • Взаимодействует с командой и заказчиком
  • Отвечает за приемку кода в конце каждой итерации

Product Owner ставит задачи команде, но он не вправе ставить задачи конкретному члену проектной команды в течении спринта.

Команда (Team) .В методологии Scrum команда является самоорганизующейся и самоуправляемой. Команда берет на себя обязательства по выполнению объема работ на спринт перед Product Owner. Работа команды оценивается как работа единой группы. В Scrum вклад отдельных членов проектной команды не оценивается, так как это разваливает самоорганизацию команды. Обязанности команды таковы:

  • Отвечает за оценку элементов баклога
  • Принимает решение по дизайну и имплементации
  • Разрабатывает софт и предоставляет его заказчику
  • Отслеживает собственный прогресс (вместе со Скрам Мастером)
  • Отвечает за результат перед Product Owner

Размер команды ограничивается размером группы людей, способных эффективно взаимодействовать лицом к лицу. Типичные размер команды – 7 плюс минус 2.

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

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

Артефакты

Product Backlog

Product Backlog – это приоритезированный список имеющихся на данный момент бизнес требований и технических требований к системе. Product Backlog включает в себя use cases, defects, enhancements, technologies, stories, features, issues, и т.д.. Product backlog также включает задачи, важные для команды, например «провести тренинг», «добить всем памяти»

Product Backlog постоянно пересматривается и дополняется – в него включаются новые требования, удаляются ненужные, пересматриваются приоритеты. За Product Backlog отвечает Product Owner. Он также работает совместно с командой для того, чтобы получить приближенную оценку на выполнение элементов Product Backlog для того, чтобы более точно расставлять приоритеты в соответствии с необходимым временем на выполнение.

Sprint Backlog

Sprint Backlog содержит функциональность, выбранную Product Owner из Product Backlog. Все функции разбиты по задачам, каждая из которых оценивается командой. Каждый день команда оценивает объем работы, который нужно проделать для завершения задач.

Пример Sprint Backlog

Сумма оценок оставшейся работы может быть построена как график зависимости от времени. Такой график называется Sprint Burndown chart. Он демонстрирует прогресс команды по ходу спринта.

Sprint Burndown chart

Спринт (Sprint)
В Scrum итерация называется Sprint. Ее длительность составляет 1 месяц (30 дней). Результатом Sprint является готовый продукт (build), который можно передавать (deliver) заказчику (по крайней мере, система должна быть готова к показу заказчику). Короткие спринты обеспечивают быстрый feedback проектной команде от заказчика. Заказчик получает возможность гибко управлять scope системы, оценивая результат спринта и предлагая улучшения к созданной функциональности.

Такие улучшения попадают в Product Backlog, приоритезируются наравне с прочими требованиями и могут быть запланированы на следующий (или на один из следующих) спринтов. Каждый спринт представляет собой маленький «водопад». В течение спринта делаются все работы по сбору требований, дизайну, кодированию и тестированию продукта. Scope спринта должен быть фиксированным. Это позволяет команде давать обязательства на тот объем работ, который должен быть сделан в спринте. Это означает, что Sprint Backlog не может быть изменен никем, кроме команды.

  • Жизненный цикл спринта
  • Планирование спринта

В начале каждого спринта проводится планирование спринта. В планировании спринта участвуют заказчики, пользователи, менеджмент, Product Owner, Скрам Мастер и команда. Планирование спринта состоит из двух последовательных митингов.

Планирование спринта, митинг первый. Участники: команда, Product Onwer, Sxrum Master, пользователи, менеджемент Цель: Определить цель спринта (Sprint Goal) и Sprint Backlog –функциональность, которая будет разработана в течение следующего спринта для достижения цели спринта. Артефакт: Sprint Backlog.

Планирование спринта, митинг второй . Участники: Скрам Мастер, команда Цель: определить, как именно будет разрабатываться определенная функциональность для того, чтобы достичь цели спринта. Для каждого элемента Sprint Backlog определяется список задач и оценивается их продолжительность. Артефакт: в Sprint Backlog появляются задачи Если в ходе спринта выясняется, что команда не может успеть сделать запланированное на спринт, то Скрам Мастер, Product Owner и команда встречаются и выясняют, как можно сократить scope работ и при этом достичь цели спринта.

Остановка спринта (Sprint Abnormal Termination)

Остановка спринта производится в исключительных ситуациях. Спринт может быть остановлен до того, как закончатся отведенные 30 дней. Спринт может остановить команда, если понимает, что не может достичь цели спринта в отведенное время. Спринт может остановить Product Owner, если необходимость в достижении цели спринта исчезла. После остановки спринта проводится митинг с командой, где обсуждаются причины остановки спринта. После этого начинается новый спринт: производится его планирование и стартуются работы.

Daily Scrum Meeting

  • Что сделано вчера?
  • Что будет сделано сегодня?
  • С какими проблемами столкнулся?

Скрам Мастер собирает все открытые для обсуждения вопросы в виде Action Items, например в формате что/кто/когда:

  • Обсудить проблему с отрисовкой контрола
  • Петя и Вася
  • Сразу после скрама

Демо и ревью спринта
Рекомендованная длительность: 4 часа Команда демонстрирует инкремент продукта, созданный за последний спринт. Product Owner, менеджмент, заказчики, пользователи в свою очередь его оценивают. Команда рассказывает о поставленных задачах, о том как они были решены, какие препятвия были у них на пути, какие были приняты решения, какие проблемы остались нерешенными.

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

В частности, именно поэтому запрещается использовать презентации в Power Point. Подготовка к митингу не должна занимать у команды более 2-ух часов.

©Асхат Уразбаев


© 2024
reaestate.ru - Недвижимость - юридический справочник