В чем основные различия между методологиями Kanban и Scrum?

«В чем основные различия между методологиями Kanban и Scrum?» — вопрос из категории Софт-скиллы, который задают на 10% собеседований IOS Разработчик. Ниже — развёрнутый пример ответа, который можно адаптировать под свой опыт.

Ответ

Scrum — это итеративная методология с фиксированными временными интервалами, а Kanban — это система визуализации и управления непрерывным потоком работ.

Критерий Scrum Kanban
Циклы Жесткие спринты (1-4 недели) Непрерывный поток, без спринтов
Роли Product Owner, Scrum Master, Development Team Нет строгих ролей (может быть владелец процесса)
Планирование Планирование спринта, фиксированный бэклог на спринт Планирование по мере необходимости (pull-система)
Метрики Скорость (Velocity) команды за спринт Время цикла (Cycle Time), пропускная способность (Throughput)
Изменения Изменения в бэклоге спринта не приветствуются Изменения можно вносить в любое время
Фокус Реализация набора целей за спринт Оптимизация потока и сокращение времени выполнения

Пример Kanban-доски с ограничением WIP (Work in Progress):

| To Do (2) | Analysis (WIP:2) | Development (WIP:3) | Code Review (WIP:2) | Done |
|-----------|------------------|---------------------|---------------------|------|
| Task A    | Task C           | Task E              | Task G              | Task I |
| Task B    | Task D           | Task F              | Task H              |       |

Когда что использовать:

  • Scrum — для проектов с относительно стабильными требованиями и четкими целями на итерацию.
  • Kanban — для команд поддержки, оперативных задач или проектов с часто меняющимся приоритетом.