Коротко про KANBAN
В сегодняшней заметке хочу поделиться с вами записями про Канбан-метод, который однозначно запал мне в душу. Последние полгода мы активно применяем этот метод в проекте - он великолепный, как раньше жили без него?
3 ключевых принципа бережливого производства (Lean в Toyota): клиентоориентированность, вытягивание, самосовершенствование.
Начнём с рассуждения о том, что же такое реализация чего-то нового? Реализация нового - это процесс накопления знаний о предметной области. При этом:
- Фаза реализации: это текущая доминантная работа.
- Программирование: это создание нового по принуждению.
Что такое KANBAN-метод
Канбан-метод – это метод улучшения работы. Существует гипотеза, что практики Канбан-метода позволят вам делать работу еще лучше. С позиции Канбана это значит, что вы будете лучше попадать в ожидания заказчика. Канбан, как инструмент в IT-менеджменте был представлен Дэвидом Дж. Андерсоном в компаниях Microsoft (2005) и Corbis. А широкое распространение и название, как метод, получил в 2007 году.
Канбан — это метод, демонстрирующий, что происходит в процессе работы. Благодаря Канбан-методу у нас формируется понимание того, какую работу мы выполняем, по каким правилам, с каким объемом задач можем справиться за единицу времени и какой результат предоставляем внутренним и внешним заказчикам.
Канбан - это метод для определения, управления и совершенствования сервисов, поставляющих результаты умственного труда, такие как экспертные и креативные услуги, а также разработку физических и программных продуктов.
Канбан-метод и Канбан Тойоты – это одно и то же?
Канбан на заводах Тойоты – это бережливое производство, определяющим принципом которого является понятие “точно в срок”. Канбан, как термин в управлении, действительно пошел от Тойоты. В переводе с японского это слово означает “сигнал” или “карточка”. На автомобильных заводах такие карточки использовались, чтобы передать информацию с одного этапа на следующий о том, сколько и каких деталей потребуется.
Давайте разберем короткий пример. Нам нужно сделать три автомобиля “точно в срок”. Это значит, что мы точно заранее можем определить, сколько нам потребуется деталей на определенных этапах, и начинаем с конца вытягивать необходимое количество деталей для создания этого автомобиля, отвечая на вопросы: “Сколько литров краски нам потребуется?”, “Сколько колес?”, “Сколько двигателей?” и так далее. Таким образом, мы не создаем излишки запасных частей в виде остатков и экономим на складах, логистике и прочих издержках.
Канбан-метод тоже придерживается понятия “точно в срок”, но в отличие от заводов Тойоты здесь речь идет об интеллектуальном труде. Иными словами, исходный код или идею маркетинга нельзя пощупать и увидеть обычному человеку, пока он(она) не превратится в конечный продукт или сервис. Таким образом, Канбан-метод используется для визуализации потока интеллектуальной работы и сокращения количества этой незавершенной работы. За счёт этого достигается равномерная и предсказуемая скорость оказания услуги конечному потребителю или заказчику.
Канбан – это как Скрам?
Нет. Скрам – это фреймворк с жесткими правилами и границами. Можно использовать разные инструменты и методологии внутри Скрама, но если вы отказались от чего-то обязательного в Скраме, он уже не может считаться Скрамом. Канбан – это метод, инструмент с набором практик и принципов. Вы можете использовать все практики, часть практик или не использовать их вообще. В Канбане нет строгого понятия, что есть Канбан, а что не есть Канбан.
Ценности KANBAN
Их девять: прозрачность, баланс, сотрудничество, клиентоориентированность, поток, лидерство, понимание, согласие, уважение.
Все ценности Канбана можно свести к одному слову — «уважение».
- Прозрачность: Убеждение в том, что открытый обмен информацией улучшает поток создания бизнесценности. В рамках данного типа ценности также используются простые и понятные термины.
- Баланс: Понимание того, что в целях повышения эффективности необходимо обеспечить баланс между различными аспектами, точками зрения и возможностями. Отсутствие баланса между некоторыми аспектами (например, нагрузкой и возможностями) в течение продолжительного периода времени может привести к нарушению нормальной работы.
- Сотрудничество: Совместная работа. Одна из задач Канбан-метода - совершенствование того, как люди делают работу совместно, поэтому сотрудничество представляет одну из его основных ценностей.
- Клиентоориентированность: Понимание того, в чем заключается предназначение системы. Конечная точка каждой Канбан-системы - создание ценности, то есть получение заказчиком требуемого продукта или сервиса. При этом заказчик остается внешним фактором по отношению к сервису, но может являться как внутренним, так и внешним фактором по отношению к организации. Заказчики и ценность, которую они получают, естественным образом находятся в центре внимания в Канбане.
- Поток: Понимание того факта, что работа представляет собой поток создания ценности (непрерывный или эпизодический). Способность видеть этот поток — ключевая отправная точка в использовании Канбан-метода.
- Лидерство: Способность вдохновлять окружающих на действия своим примером, словами и идеями. В большинстве организаций предусмотрена иерархическая структура, но при применении Канбан метода необходимо обеспечить лидерство на всех уровнях в целях создания ценности и совершенствования подхода к работе.
- Понимание: Главным образом, знание (и индивидуальное и организационное) о себе самом в целях дальнейшего развития. Канбан представляет собой метод совершенствования, и потому понимание того, какая точка является отправной, будет основополагающим.
- Согласие: Обязательство совместного движения в сторону достижения целей с учетом (а если возможно, урегулированием) расхождений во мнениях и различий в подходах. Здесь речь идет не о консенсусном управлении, а о принятии совместного стремления к совершенствованию.
- Уважение: Высокая оценка и понимание окружающих. Располагается в конце списка, поскольку представляет собой основу, на которой базируются остальные ценности.
Все эти ценности включают предпосылки Канбан-метода к стремлению совершенствовать сервисы, предоставляемые в ходе совместной работы. Этот метод невозможно корректно использовать без учета каждой из них.
Повестки Канбан / Призывы к действию!
Канбан принимает во внимание три повестки, три типа призыва к действию на основе потребностей организации:
- Устойчивость: суть заключается в поиске равномерного темпа работы, повышении целенаправленности.
- Ориентация на оказание услуг: в центре внимания - выполнение работ и удовлетворение потребностей заказчика.
- Живучесть: имеет отношение к сохранению конкурентоспособности и гибкости.
Устойчивость направлена внутрь организации -> повышается эффективность. Это отправная точка для изменений :)
Принципы Kanban
Существует шесть основополагающих принципов Канбана, которые можно разделить на две группы: принципы управления изменениями и принципы предоставления сервисов.
Принципы управления изменениями:
Начните с того, что есть сейчас
Договоритесь об эволюционном развитии
Поощряйте развитие лидерства на всех уровнях.
Принципы предоставления сервисов
Каждая организация представляет из себя экосистему взаимозависимых сервисов :)
- Выясните потребности и ожидания заказчика. Необходимо сосредоточиться на них.
- Управляйте работой, дайте людям организоваться вокруг нее.
- Развивайте правила, чтобы улучшить показатели.
Все эти принципы тесно связаны с ориентацией на оказание услуг (повестка) и клиенториентированностью (ценность).
Если рабочий процесс и соответствующий поток создания ценности не прослеживается для заказчика, то в центр внимания организации попадает то, что явно - это люди. Все ли они загружены? Достаточно ли квалифицированы? Могут ли работать усерднее? Обзор CI&CD. Акцент должен быть на приносимой ценности и потребителей сервиса (пользователей).
Поставка ценности, обязательства и доска
Канбан - это метод для определения, управления и совершенствования систем, поставляющих сервисы с помощью которых идет поставка ценности для заказчиков.
Процесс накопления знаний о поставке ценности всегда состоит из некоторых этапов. Этапы визуализируются на доске. Чтобы такая доска стала Канбан доской нужно:
- Должно быть ограничено количество незавершенной работы (WIP-лимиты).
- Должны быть определены точка принятия обязательств и точка поставки.
Обязательство - это четко сформулированное негласное соглашение между заказчиком и сервисом о следующем:
- Заказчик желает получить рабочий элемент и согласен получить его поставку.
- Сервис готов обеспечить производство и выполнить поставку обязательств заказчику.
Lead Time - время производства, т..е. это время, которое элемент проводит в процессе между точкой принятия обязательств и точкой поставки
Customer Lead Time - время с момента поступления элемента в систему до момента поставки.
Закон Литтла и всё такое от М. Фролова (Cartman): ссылка
Практики KANBAN
- Визуализируйте (имеется ввиду визуализация процесса с помощью Канбан-доски).
- Ограничивайте незавершенную работу.
- Управляйте потоком работы.
- Используйте явные правила.
- Вводите петли обратной связи (каденции).
- Улучшайте и эволюционируйте на основе экспериментов.
Практика визуализации
Доска - это только из методов визуализации. Принципы визуализации:
- Определена точка принятия обязательств.
- Определена точка поставки.
- Определены этапы или фазы.
- На каждом этапе или фазе определены WIP-лимиты.
Правила тоже необходимо визуализировать, в т.ч. для перемещения элемента из одного этапа в другой.
Канбан-доска может иметь "плавательные дорожки" для категоризации работ (например, по срочности исполнения). Внешний вид карточки - тоже важен!
Ограничение количества незавершенной работы
Введение и соблюдение WIP-лимитов заменяет систему проталкивания (PUSH) на вытягивающую систему (PULL).
Чрезмерное количество частично незавершенной работы экономически неэффективно, увеличивает время производства и не позволяет организации откликаться на потребности заказчиков и реагировать на изменение обстоятельств и возможностей.
Введение WIP-лимитов приводит к:
Неэффективная управленческая деятельность акцентирует внимание на максимальное использование сотрудников ресурсов, не допускает простоев. В результате сотруникам может показаться, что они чрезмерно загружены -> они будут принимать только те задачи, которые им поручили в явной форме. Такие сотрудники перестают понимать, что за сервис предоставляют и как они способствуют достижению целей организации и заказчиков.
Управление потоком
Поток задач в Канбан-системе должен способствовать увеличению ценности и сведению времени производства к минимуму. Поток задач должен быть предсказуем.
Требуется обеспечить:
Классы обслуживания
Канбан использует классы обслуживания для того, чтобы повысить приоритет определенным типам работ, заказчикам или нивелировать такое воздействие на бизнес, как стоимость задержки. Стоимость задержки – это недополученная прибыль или понесенные издержки из-за не вовремя оказанных услуг.
Рассмотрим влияние стоимости задержки и соответствующий класс обслуживания на примерах:
- Expedite, Ускоренный класс – неотложная скорая помощь-реанимация. Едет по выделенной полосе. Нет времени откладывать решение проблемы. Нужно как можно скорее.
- FixedDate, Класс с фиксированной датой – стоимость задержки резко возрастает после определенного периода. Пример: проект в виде ФЗ с фиксированной датой начала действия. Не успеем вовремя, есть риск потерять лицензию.
- Standard, Стандартный класс – стоимость задержки растет пропорционально времени. Если делаем сразу, получаем прибыль сразу. Если делаем долго, получаем прибыль долго.
- Maintenance, Нематериальный класс – делаем, но явной прибыли эта работа не несет, стоимость задержки растет медленно. Например, уборка в доме. Можно и не убираться регулярно, но через пол года придется делать генеральную уборку.
Делай правила работы явными
Четкие и понятные правила позволяют определить и изложить процесс, выходящий за рамки определения жизненного цикла проекта.
Для жизненного цикла с правилами существуют ограничения на действия. Потенциал таких ограничений приводит к возникновению регулируемых опытным путем характеристик.
- Минимальны
- Простые
- Наглядные
- Четко сформулированные
- Применимы в любых обстоятельствах
- Гибкими для изменений!
Применение практик вовлекают в:
- Способность видеть, в чем заключается рабочий процесс;
- Совершенствование процессов, т.е. сохранение и распространение полезных изменений, а также изучение, корректировка и сдерживание неэффективных изменений;
Каденции в Канбане
Каденция – термин из музыки. В контексте Канбан-метода она обозначает ритм. Каденциями называют регулярные встречи, которые еще являются петлями обратной связи. Регулярность задает ритм, с которым течет поток работы.
Каденций семь и они соответствуют практики предоставления обратной связи в Канбан:
- Канбан-митинг (ежедневная). Здесь обсуждаем статус задач, ежедневная каденция для актуализации статусов задач.
- Встреча по наполнению очереди (обычно раз в две недели). Берем на себя обязательства, что будет делать, как сервис. Stage Workflow для User Story.
- Встреча по планированию поставки (обычно раз в две недели). Возвращаем выполненные обязательства обратно, планирование поставки: выпуск релизов.
- Встреча по обзору сервиса (обычно раз в две недели). С метриками обсуждаем качество сервиса и как его улучшить, если нужно.
- Операционная встреча (обычно раз в месяц). С метриками обсуждаем качество взаимодействия связанных сервисов.
- Встреча по обзору рисков (обычно раз в месяц). С метрикам обсуждаем влияние заблокированных задач на работу сервиса.
- Встреча по обзору стратегии (обычно раз в квартал). С метриками обсуждаем изменения в стратегии.
Метрики в KANBAN и улучшения
У Канбан-метода есть метрики, которые позволяют ответить на вопросы: какие проблемы в потоке работы, какая пропускная способность у сервиса, какое время выполнения, какое время разрешения блокировок, какое время цикла и по каким типам распределяется работа? Все это позволяет менеджеру сервиса принимать решения о развитии и улучшении качества сервиса на основе накопленных данных.
Канбан метод - это эволюционный метод совершенствования. Его цель - это внести изменения и получить новый, заранее определенный подход. Этот метод защищает от вымирания проекта, используя эволюцию, а не революцию (такую, как Scrum, например, кхе-кхе).