Основы Kanban
Тема дорожной карты · Agile / Scrum / Kanban
Kanban (с японского — 'визуальный сигнал') адаптирован из Toyota Lean Production в программную разработку Дэвидом Андерсоном. В отличие от Scrum, Kanban — метод поверх существующего процесса, а не полный фреймворк: начинается с того, что вы уже делаете, визуализирует поток на доске, ограничивает work-in-progress (WIP), и непрерывно улучшается на основе наблюдаемых узких мест. Без спринтов, без обязательных ролей, без фиксированной каденции.
Как это работает
Основные практики Kanban: (1) визуализируйте поток на доске с колонками для каждой стадии процесса, (2) ограничьте WIP на колонку, чтобы обнажить узкие места и сократить lead time, (3) управляйте потоком, наблюдая где скапливаются карточки и устраняя причину, (4) сделайте политики явными, чтобы команда согласовала что значит 'готово на этой колонке', (5) внедрите петли обратной связи на каденциях, важных для команды, (6) улучшайте совместно, используя модели вроде queueing theory, Theory of Constraints, Lean. Без timebox — работа течёт непрерывно.
Когда применять
Kanban подходит, когда (а) работа приходит непредсказуемо и не укладывается в фиксированный sprint (поддержка, ops, реагирование на инциденты), (б) у команды уже есть workflow, который более-менее работает, и нужно инкрементальное улучшение, а не трансформация, (в) команда маленькая (2-5) и Scrum-церемонии ощущаются overhead'ом, (г) элементы работы сильно варьируются по размеру (некоторые на час, некоторые на недели). Kanban хорошо масштабируется вниз; Scrum — плохо.
Типичные ошибки
Самый частый Kanban-антипаттерн — 'мы используем Kanban', означающее 'у нас есть Trello-доска'. Без WIP-лимитов Kanban-доска — просто список. Без явных flow-политик колонки значат разное разным людям. Без замера lead time 'улучшение' основано на ощущениях. Kanban выглядит легче Scrum, но требует больше дисциплины — правил меньше, но каждое нагрузочно.